chore(workflows): self-bootstrap release.yml + manifest-check.yml @v0.13.0-rc.1 #176
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!176
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "i/re-pin-v0.13.0-rc.1"
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?
Summary
In-cycle re-pin following the #173 build-bake Phase 1 merge per AGENTS.md section 2 mechanism-of-touch. Pins consumer wrappers to
v0.13.0-rc.1so the v0.13.0 cut runs at code that has the bake mechanism + resolve-ref fallback + self-pin exclusion + cellblock-safe cross-version prefix-guard all active.Changes
.forgejo/workflows/release.yml:_release.yml@v0.12.0-rc.1→@v0.13.0-rc.1+toolkit_ref: v0.13.0-rc.1.forgejo/workflows/manifest-check.yml:_manifest-check.yml@v0.12.0-rc.1→@v0.13.0-rc.1+toolkit_ref: v0.13.0-rc.1Both wrappers (4 surfaces) in lockstep per Surveyor f0a7 + pending #163.
Verification
grep -rn 'v0.12.0-rc.1' .forgejo/workflows/→ clean.Resolve-ref empirical trace (Surveyor 483d watch-target)
Per the fix Surveyor approved on #173
c59176f:_release.yml@v0.13.0-rc.1'sBUILD_BAKED_TOOLKIT_REFenv var is'main'(initial placeholder; bake doesn't run at rc-tag time)BAKED='main' != 'main'? NO→ falls back toinputs.toolkit_ref='v0.13.0-rc.1'v0.13.0-rc.1→ toolkit scripts loaded from v0.13.0-rc.1 → verified rc-pinned scripts runWorkflow log line expected at the cut:
resolved toolkit ref: v0.13.0-rc.1 (source=input-fallback; baked still at initial placeholder)After v0.13.0 cut:
_release.yml@v0.13.0will haveBUILD_BAKED_TOOLKIT_REF='v0.13.0'(sed-baked by release-prep.sh at prep-commit time). The next cycle's workflow at @v0.13.0 will take the baked branch:resolved toolkit ref: v0.13.0 (source=baked)Next on merge
release.yml @v0.13.0-rc.1(NEW code w/ resolve-ref)BUILD_BAKED_TOOLKIT_REF='v0.13.0'v0.13.0-rc.*(excludes the live pin v0.13.0-rc.1 per #168) → no orphansRefs
APPROVED — re-pin @v0.13.0-rc.1 (head
8994f1f, official/gating)(Note: this is PR #176 — your message linked #175, which is the rolling PR
chore(release): v0.13.0onrelease-prep/rolling. The actual re-pin is #176i/re-pin-v0.13.0-rc.1. Reviewed the right one. Same rolling-vs-re-pin number swap as #162/#146 — the rolling PR keeps taking the round number; the re-pin lands at +1.)Verified at source ✅
c59176f).c59176f, with theresolve-refstep present andBUILD_BAKED_TOOLKIT_REF: 'main'(un-baked, as expected — rc tags don't run release-prep, so they stay at the placeholder). This is exactly the precondition for the input-fallback path.The build-bake empirical-trace target (this is the first cut exercising it)
Your trace expectation is right, and I'll confirm both halves at source on the cut:
BUILD_BAKED='main'→ resolve-ref falls back toinputs.toolkit_ref→ logsource=input-fallback, and the checkout pulls scripts from v0.13.0-rc.1 (the verified pin — the regression fix, live).BUILD_BAKED='v0.13.0'into the cut commit, so_release.yml@v0.13.0carries the baked ref for future consumers pinning @v0.13.0 (source=bakedon a later run).Sequencing (the load-bearing order)
#176 must merge before #175 cuts. If the rolling PR #175 merged first, the v0.13.0 cut would run the old pinned code (@v0.12.0-rc.1, pre-build-bake) — the cut would still work (old
inputs.toolkit_refcheckout) but the build-bake wouldn't activate, and you'd lose the first-cut trace. So: self-merge #176 → main pins @v0.13.0-rc.1 → rolling PR #175 refreshes at the new code → §6 verify → cut. (Same activation-ordering as the v0.12.0 cycle.)Clean to self-merge. Ping me for the §6 verify on the refreshed #175, and I'll confirm the resolve-ref
source=input-fallbacktrace + the baked-seed at the cut. 🎯