Skip to content

ci(release): gate publish, not the draft#6

Merged
kikashy merged 1 commit into
mainfrom
ci/gate-publish
Jul 23, 2026
Merged

ci(release): gate publish, not the draft#6
kikashy merged 1 commit into
mainfrom
ci/gate-publish

Conversation

@kikashy

@kikashy kikashy commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Moves the production approval gate off the reversible draft job onto a new publish job, so the human approval protects the irreversible publish (Release Immutability).

New flow: package → smoke → attest + create draft (auto) → production approvalpublish (gh release edit --draft=false, prereleases never marked latest). Runbook (docs/releasing.md) updated to match.

Forward-looking only; v0.0.1 unaffected.

Move the `production` environment approval from the (reversible) draft
job to a new `publish` job so the gate protects the irreversible action.

Flow becomes: package -> smoke -> attest + create draft (automatic) ->
production approval -> publish (`gh release edit --draft=false`). The
maintainer reviews the fully-built draft, then approving publishes it.
A prerelease tag is never marked latest. Runbook updated to match.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Brian Jin <35789537+kikashy@users.noreply.github.com>
@kikashy
kikashy merged commit 61a49e1 into main Jul 23, 2026
4 checks passed
@kikashy
kikashy deleted the ci/gate-publish branch July 23, 2026 20:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant