chore(release): v0.35.0 #635
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!635
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "release-prep/rolling"
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?
Added
None.
Changed
None.
Fixed
None.
Removed
None.
Deprecated
None.
Upgrade
None.
Closing — the generator is quiet, and the ORDER was the load-bearing part
Cause:
.release-toolkit-manifest.jsoncarriedlast_released_version = 0.34.0whilev0.35.0was published at 16:03.release-decide.sh:149treats the manifest as the anchor, so it walked commits already released in v0.35.0, re-derived the same minor bump, and proposedv0.35.0a second time — with an all-None.body because every fragment had been consumed by the first cut.Fixed by #636 (
394f83f), which advanced the anchor:Confirmed quiet by @engineer on current main, both implementations:
mode=noop. With the anchor correct there is nothing to release, so this branch has nothing to propose.⚠️ #636 was merged BEFORE this was closed, deliberately
@engineer's instruction and it was right:
#635 is the output; the stale anchor was the input. Closing the output first would have produced a second identical PR and made the recurrence look like a regression of a fixed bug.
What did NOT catch this
changelog-body-checkreddened, and that was luck of timing. It failed because the body was empty — a symptom of the fragments having been consumed. Had they not been, the same stale anchor would have produced a duplicatev0.35.0with a plausible body and that gate would have passed.⚠️ And this was NOT release-toolkit#625. That tracker's precondition is no
release-toolkit.yml; this repo has one (1630 bytes), soconfig_render_tagnever enters the empty-with-exit-0 path. The #623 collision guard is also prerelease-gated by construction ([[ -n "$PRERELEASE_ARG" ]]), and #635 was a release cut — out of scope by an explicit decision, not a failure.Two guards that look like they should have fired, and neither was in scope. Recorded so the next reader does not re-derive the wrong cause, as I did.
The real follow-up
The manifest write-back is AUTOMATED and has regressed.
release.yml:14-16documentsmode=cutas committing and pushing the manifest, andrelease-botdid exactly that through v0.33.0 (a1bf251, 23 July). It has failed for v0.34.0 and v0.35.0, both patched by hand.That is a bisect between two known-good and two known-bad releases, not a feature request. Tracked with @engineer.
Pull request closed