docs(ci): note immutable-release dependency on the release job (#481) - #482
Closed
emmanuelm41 wants to merge 1 commit into
Closed
docs(ci): note immutable-release dependency on the release job (#481)#482emmanuelm41 wants to merge 1 commit into
emmanuelm41 wants to merge 1 commit into
Conversation
This repo will have GitHub immutable releases enabled — publishing a release locks its tag + assets. That requires the reusable release workflow to create a draft, attach all assets, then publish (see Zondax/_workflows#110), which the pinned @v10 tag now carries. Document that constraint on the release job so the pin isn't rolled back to a tag predating the draft→publish flow. No functional change (pin stays @v10). Closes #481
emmanuelm41
force-pushed
the
chore/release-workflow-v11-immutable
branch
from
July 1, 2026 20:55
db432d1 to
f612825
Compare
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.
Goal — closes #481
Enable immutable releases so the signed binaries we ship on GitHub can't be altered or replaced after publish (supply-chain hardening;
kache-actionand the package managers pull from these releases).The problem
Binaries are already signed (Authenticode + macOS notarization + PGP via
_release-rust.yml), but releases are not immutable — confirmed off:We can't just flip the switch. Immutability locks the tag + assets at publish time, but the old release flow published first, then uploaded assets — which immutability would reject, breaking every release. Fix: draft → upload → publish (Zondax/_workflows#110).
This PR
Since Zondax/_workflows#110 is backward-compatible (identical final state), the
v10tag is moved forward to include it rather than split — so kache stays pinned to@v10and needs no functional change. This PR is doc-only: it records the immutable-release constraint on the release job so the pin isn't later rolled back to a tag predating the draft→publish flow.Rollout / merge order⚠️
v10andv11tags to that commit (no split; both carry the backward-compatible flow).gh api -X PUT /repos/kunobi-ninja/kache/immutable-releases(reversible viaDELETE) — must come after the tag move, or the next release breaks.