Skip to content

[ABI] Activate exact staging requests - #1259

Merged
brandonpayton merged 4 commits into
mainfrom
emdash/activate-abi-staging-request-feed
Aug 13, 2026
Merged

[ABI] Activate exact staging requests#1259
brandonpayton merged 4 commits into
mainfrom
emdash/activate-abi-staging-request-feed

Conversation

@brandonpayton

@brandonpayton brandonpayton commented Aug 13, 2026

Copy link
Copy Markdown
Member

Why

Kandelo can derive an exact, non-endorsing ABI staging request from a pull
request head, but protected main still runs the publisher in observe mode.
The tap therefore has no immutable public request to reconcile, even though the
hosted observe path has proved the derived identity and write suppression.

Activating this one boundary lets protected tap code consume an append-only
request Release. It does not publish bottles, write to GitHub Container
Registry, promote Formulae, or endorse a candidate.

The observe canary exposed two defects in the base-owned protected classifier:
the workflow had not installed its protected Nix environment, and the dev-shell
boundary discarded its private Cargo target. Those repairs landed separately
in #1260. This PR is refreshed onto that protected base so its current hosted
run can prove the normal staging and merge-gate path.

What changed

  • Switch the protected request-feed activation from observe to active.
  • Require the workflow checker to retain both observe and active branches.
  • Update the repository guide to describe the active request boundary and the
    still-inert tap boundary.

Validation

On the current exact merge tree I ran through scripts/dev-shell.sh:

  • scripts/test-abi-staging-request-feed.sh
    • 23 request derivation/policy tests passed.
    • Immutable Release identity and collision regressions passed.
    • The request workflow checker passed.
  • .github/scripts/test-classify-exact-abi-staging.sh
  • .github/scripts/test-merge-candidate-workflows.sh
  • scripts/check-homebrew-publish-workflow-trust.rb
  • actionlint for request-feed, staging, and prepare-merge workflows
  • git diff --check origin/main...HEAD

The current hosted run has already proved the repaired protected
change-scope, exact-head classification, project collection, browser smoke,
and the kernel/fork source lanes. Package staging is skipped.

Rollout boundary

After merge I will dispatch one exact request for the frozen ABI 43 head,
anonymously verify its public bytes and digest, and run tap reconciliation while
candidate publication remains disabled. Candidate packages, product evidence,
promotion, and deployment stay off until their separate protected activations
and canaries.

@brandonpayton brandonpayton added the ready-to-ship Maintainer attests the exact tested head and requests merge preparation. label Aug 13, 2026
@github-actions

Copy link
Copy Markdown
Contributor

prepare-merge: runtime/materialization tests passed against the synthetic PR merge; package staging and durable package publishing were skipped. merge-gate=success posted on PR HEAD. This PR is ready for a reviewer to squash merge.

@brandonpayton
brandonpayton merged commit 496f950 into main Aug 13, 2026
92 checks passed
@brandonpayton
brandonpayton deleted the emdash/activate-abi-staging-request-feed branch August 13, 2026 05:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-to-ship Maintainer attests the exact tested head and requests merge preparation.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant