feat: also maintain a moving major tag for action pinning#128
Merged
Conversation
Extend the publish step to force-move the MAJOR tag (e.g. 0) alongside the MAJOR.MINOR tag on each stable release, so consumers can pin `@0` for the latest stable release. Semantics differ pre-1.0: since a 0.x minor bump marks a breaking change, `@0` tracks the latest stable release including breaking changes, while `@0.8` stays the non-breaking patch channel. The README pin note documents the caveat. At 1.0, `@1` becomes a proper semver compatibility boundary. Both tags have fewer than two dots, so neither matches the `*.*.*` publish trigger; prereleases are skipped. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Code ReviewRisk: Low — No blocking defects are evident in this diff; the workflow and documentation changes look safe to merge as written. This MR updates the publish workflow so stable releases now force-move both the major tag ( Notes:
Review usage: 16,408 in (11,264 cached) / 1,067 out tokens — $0.0317 (cloudflare-ai-gateway/gpt-5.4, thinking: medium) Reviewed by @weareikko/code-review v0.8.3 for commit 2f3530e. |
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.
Follow-up to #127. Extends the publish step to also force-move the
MAJORtag (e.g.0) on each stable release, so consumers can pin@0.What
publish.yml: the tag-move step now updates bothMAJOR(0) andMAJOR.MINOR(0.8) via a loop.@0.8and@0, with the pre-1.0 caveat.Semantics caveat (important)
Under the project's 0.x rule, a minor bump = breaking change. So the two tags are not equivalent while pre-1.0:
@0.8— non-breaking patch channel (recommended pin today).@0— latest stable release, may advance across breaking0.8 → 0.9. It becomes a true semver compatibility boundary only at1.0(where breaking → major). Documented as such rather than implying it's a safe compat pin.Safety
*.*.*publish trigger — no re-run loop.if: env.IS_PRERELEASE == 'false').The
0tag pointing at 0.8.3 will be created immediately after merge so@0works today; the workflow keeps it current from the next release on.🤖 Generated with Claude Code