ci(publish): one release at a time, and refuse a tag main has moved past - #1263
Merged
Merged
Conversation
Three sessions cut 0.228.0, 0.231.1 and 0.232.0 within hours of each other on 2026-09-16, and v0.232.0 was pushed four minutes before #1259 merged, so the tag published without the change main declared under that version (it needed its own 0.233.0). The per-tag tip check only sees the moment the job starts; two tags racing the workflow both passed it. - A concurrency group serialises Publish runs without cancelling one already publishing. - The tip check now refuses a tag that is an ancestor of main's current tip — main moved after the tag was pushed — and names the commits it would leave out, the same way it names them for a stale tag. - release:prepare's printed instructions carry the discipline: fetch tags, check the last Publish run, announce on the PR, then tag. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> (cherry picked from commit 2f02d6f8ee87d81f5f71a5984644e6b11df15792)
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Three sessions cut 0.228.0, 0.231.1 and 0.232.0 within hours of each other on 2026-09-16, and
v0.232.0was pushed four minutes before #1259 merged, so the tag published without the changemaindeclared under that version (it needed its own 0.233.0, #1261). The per-tag tip check only sees the moment the job starts; two tags racing the workflow would both pass it.publish-agent-runtime,cancel-in-progress: false: Publish runs one at a time, and a run already publishing is never interrupted by a later tag.main's current tip (main moved after the tag was pushed) is refused, naming the commits it would leave out, exactly as a stale tag is today.release:prepare's printed instructions now say: fetch tags, check the last Publish run, announce the cut on the PR, then tag.Workflow-only plus the script's help text;
check:publish-workflowpasses; no source, no version bump.🤖 Generated with Claude Code