docs(integration): unifying per-project configuration overrides section — #409 #416
No reviewers
Labels
No labels
bump
major
bump
minor
bump
patch
kind/bug
kind/chore
kind/docs
kind/feature
priority/critical
priority/high
priority/low
priority/medium
size/L
size/M
size/S
size/XL
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
frankenbit/release-toolkit!416
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "i/409-per-project-config-override"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #409.
Adds a single adopter-facing "Per-project configuration overrides" section to
docs/integration.md— the mental-model gap the issue names: how do I override X for my project without editing the workflow? (surfaced when the operator asked whetherpublish_modeflips via repo variables the waydefault_branchdoes).Shape (ratified with Bosun)
A unifying, link-first section — not a third copy of the per-knob resolution tables:
release-toolkit.ymlfield / Forgejo repo variable / workflow input), with the Precedence column linking to each knob's authoritative section.default_branch+publish_modecarry the full per-project override surface (incl. avars.RT_*repo variable you flip in Settings with no commit)release_type/version_files/changelog/tag_formatare version-controlled config-file-only valuesEmpirical-contact / accuracy notes
publish_moderesolution section and #370 has thedefault_branchone — so this section links to both rather than restating their precedence tables (the double-canonical anti-pattern).default_branchranks an explicit dispatch input highest (layer 1), whilepublish_moderanks itswith:input at layer 3 (just above the default). The prose states only the shared shape (repo-var highest, config versioned, input accepted) and explicitly flags the per-knob difference, deferring the authoritative order to each section. No false-uniform-precedence claim.@v0.26.0ref (matches the other integration.md prose examples), not the docstring@vX.Y.Zplaceholder.Verification
#default-branch-370,#publish-mode-resolution-408,../README.md#bump-signalsregister-check.shgreen; clean fragmentSibling to #370 (default_branch) + #408/#411 (publish_mode) — this is the consolidating adopter-facing view over both. Independent of #407/#412 (both merged).
APPROVED — one should-consider on a table-cell precision gap
Strong consolidation, verified at source. Anchors resolve, the precedence-differs
catch is accurate, two-tier ref honored, no double-canonical. One accuracy refinement
worth your judgment — in the spirit of the same "no false claim" discipline you baked
into the precedence note.
Verified
is real: for
publish_modethewith:input sits below config (the #408counter-convention), while
default_branch's override (RT_ env, layer 1) sitsabove config. Your prose captures it ("default_branch ranks dispatch input at the
top; publish_mode ranks its with: input just above the default") and defers
authority to each section — no false-uniform-precedence claim. Good.
#default-branch-370(integration.md:173),#publish-mode-resolution-408(:370),README#bump-signals(README:91). Link-first,no restated tables that could drift.
@v0.26.0(tag exists),not the
@vX.Y.Zdocstring placeholder. register-check green, nosaratow.netleak, 0 behind main (built on merged #411+#412).
Should-consider (non-blocking) — the
default_branch"Workflow input ✓" cellThe table gives both
default_branchandpublish_modea bare✓under Workflowinput, but they aren't the same mechanism:
publish_modehas a nativewith: publish_modereusable input (reusable-release.ymldeclares it).
default_branchhas nowith: default_branchinput — reusable-release.yml'sinputs are only
runs_on/bump_override/dry_run/publish_mode/config_path/manifest_path,and
resolve_default_branchtakes no input arg. Its "workflow input" path is really"wire a
workflow_dispatchinput toenv: RT_DEFAULT_BRANCH" — the repo-variablecolumn's mechanism, driven per-cut.
So a scanner who reads
default_branch → Workflow input ✓and reaches forwith: default_branch:on the reusable hits an undeclared input. Your prose + the#370 section link do steer a careful reader right, but the scannable table cell
implies a native input parity that doesn't exist. A one-touch fix — e.g. mark the
default_branchcell✓ via RT_DEFAULT_BRANCH env(vspublish_mode's bare✓=native
with:) — closes it. Your call whether the prose disambiguation is enough;flagging because this section is the authoritative override answer pre-v1.0.0.
Everything else is merge-ready. Clear to guarded-merge — closes the #407/#409/#412
pre-cut docs batch either way.
25d83e42315fa2c87bd0New commits pushed, approval review dismissed automatically according to repository settings
APPROVED — native-vs-env distinction folded, re-verified
Re-stamp on
5fa2c87. Verified the fold:git diff 25d83e4 5fa2c87is exactly thetwo hunks you described (integration.md only, 7+/4−), and both are accurate:
default_branchWorkflow-input →via RT_DEFAULT_BRANCH env,publish_mode→`with: publish_mode`. Matchesthe actual reusable inputs (native
with: publish_modeexists; nowith: default_branch). No more false with:-parity.with:input — feed it throughRT_DEFAULT_BRANCHenv (which a dispatch inputcan set)". Closes the latent over-claim a reader would hit taking the publish_mode
example to default_branch.
Only those two hunks changed; the precedence-differs catch, the 3 resolving anchors,
the two-tier
@v0.26.0ref, register-clean, and 0-behind-main all carry from 3623.Clear to guarded-merge — closes the #407/#409/#412 pre-cut docs batch. Good close on
the override table; scannable precision on THE authoritative override answer is worth
exactly this.