ci: separate candidate validation from release authority - #785
Merged
Conversation
|
Bugbot is not enabled for your account, so this pull request was not reviewed. Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs. |
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.
Outcome
Separates candidate validation, protected release provenance, and post-merge evidence. Ordinary PRs no longer require the historical signed C/T authority train or authority-ledger tip commits. The stable
authenticate-console-authoritycontext remains protected/read-only and admits ordinary PRs from exact live GitHub coordinates plus ancestry, without executing candidate bytes.Release-like PRs cannot fall through to the ordinary route. They retain exact path/content/graph classification and a native proof from the protected Release Please workflow. Required CI gains an exact release-metadata-only lane, semantic manifest/CHANGELOG checks, and skip-aware aggregates so policy/preflight failures do not masquerade as PostgreSQL or product failures.
Risk and governance
pull_request_target; no PR secrets, write token, package, image, production, or deployment change is introduced.RELEASE_PLEASE_TOKENremains unprovisioned and is a post-merge operational HOLD. PR chore(main): release 0.3.7 #760 must remain auto-merge-disabled until its release tip is regenerated through the protected workflow.Verification
env PATH="/tmp/console-ci-boundary-dotslash/bin:$PATH" npm run verify— passed, endingverify(fast) passedgit diff --cached --check— clean before commitOne-time cutover
The current protected-base authority workflow still requires the retired signing key, so this PR cannot self-host its replacement. After exact-head Required / CI and Required / Security pass: disable and verify all auto-merge, snapshot protection, temporarily remove only
authenticate-console-authority, squash-merge this exact head by SHA, and unconditionally restore all three strict app-pinned contexts with readback. Then exercise the restored context on temporary one- and two-commit canary heads. Any state drift or restoration failure is a repository-wide HOLD.