Repository navigation
ci(release): release promoted main on dispatch and move major tags forward - #24
Merged
Merged
Conversation
4 tasks done
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.
Spec and outcome
docs/adr/007-promoted-releases-and-major-tags.mdfrom the owner direction of 2026-10-07:mainmoves only by promotion of validateddev, a breaking change is a new major version, and the major tag names a qualified compatible release.qualityruns on pull requests intodevandmainonly, with a guard that accepts only a fast-forward promotion from this repository'sdev.promote.ymlfast-forwardsmainto the exact head that passedquality.release.ymlno longer runs on push: an owner dispatch onmainrequiresqualityand a published release integration against a stable Rootform release on that exact commit, runs semantic-release with default rules (breaking means major), resumes a tag pushed without its release, then moves the major tag forward to the new release.publish-v1.ymlis removed. The commit range check runs where commits enterdev, because a promotion carries already gated commits, including Dependabot commits exempt from that check.Done when and evidence
bun run verifypasses in a clean clone, and the foundation validator refuses a push-triggered release workflow and any rule that ships a breaking change below major.4204219:install_rc=0,verify_rc=0("Full verification passed."), commit range checkrange_rc=0.bun test scripts: 117 pass, 0 fail. actionlint passes. History sincev0.1.0contains two breaking commits (17cf0cbfeat!: redesign github actions around forms and native reports #19,001be5efeat(action)!: prepare only lock-selected external packages #16), so the first release under default rules isv1.0.0, matching the documented@v1refs.bun run verifyRisk and privacy
actions: readandchecks: read;contents: writestays limited to the release and promotion jobs. The major tag only moves forward to a commit that descends from its current target.dev. No tag or release exists from it.Review checklist