fix(release): compute the next version from tags reachable from the branch - #1550
Merged
Merged
Conversation
…ranch The release workflow took the highest v* tag in the whole repository, so a release from a maintenance branch computed the next version of master's line (for example v19.0.1 instead of v18.0.1) and then failed the feature.xml version check. Restrict the lookup to tags merged into the released HEAD; on master the result is unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
joaodinissf
added a commit
that referenced
this pull request
Sep 26, 2026
formal/README.md describes the method, target status, models and how to reproduce. formal/BUGS.md catalogues 51 findings (49 confirmed, 1 plausible, 1 refuted) plus 9 observations, all verified by three independent skeptics, with traces, test status, fix plans, a proposed fix-PR sequence and links to the fix PRs opened so far (#1550, #1551, #1552, #1553). REPORT.md is the chronological log of rounds 1-2. The patches are reference fixes used to show each disabled test turns green. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
rubenporras
approved these changes
Sep 28, 2026
joaodinissf
marked this pull request as ready for review
September 28, 2026 22:41
joaodinissf
added a commit
that referenced
this pull request
Sep 29, 2026
formal/README.md describes the method, target status, models and how to reproduce. formal/BUGS.md catalogues 51 findings (49 confirmed, 1 plausible, 1 refuted) plus 9 observations, all verified by three independent skeptics, with traces, test status, fix plans, a proposed fix-PR sequence and links to the fix PRs opened so far (#1550, #1551, #1552, #1553). REPORT.md is the chronological log of rounds 1-2. The patches are reference fixes used to show each disabled test turns green. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Problem
release.ymlcomputes the next version from the highestv*tag in the whole repository:LATEST=$(git tag --list 'v*' --sort=-version:refname | head -1)Releasing from a maintenance branch (for example
v18.0.xafter master has releasedv19.0.0) therefore computes the next version of master's line,v19.0.1instead ofv18.0.1. The "Verify feature.xml versions" step then always fails, because the branch's features are18.0.x.Fix
Only consider tags reachable from the commit being released:
LATEST=$(git tag --list 'v*' --merged HEAD --sort=-version:refname | head -1)The job checks out
inputs.branchwithfetch-depth: 0, so every tag is available to--merged.Reproduction
A throwaway repository with
v18.0.0andv19.0.0on master and av18.0.xbranch cut fromv18.0.0:Scope and limits
baseline.repo.urlpoints at the highest release overall. That's a separate fix.major.minor. In that case, bump the minor instead. Maintenance branches are normally cut from older lines.actionlint, because it isn't available locally.Found by the formal model of the release pipeline in #1549 (
formal/BUGS.md, PIPE-2): both the TLA+ and the Lean model reach this state, and 3/3 independent reviewers upheld it.🤖 Generated with Claude Code