Skip to content

fix: verify independently frozen packaging authorities - #203

Merged
BunsDev merged 2 commits into
mainfrom
fix/202-packaged-provenance
Sep 10, 2026
Merged

fix: verify independently frozen packaging authorities#203
BunsDev merged 2 commits into
mainfrom
fix/202-packaged-provenance

Conversation

@BunsDev

@BunsDev BunsDev commented Sep 10, 2026

Copy link
Copy Markdown
Member

Packaged conformance rejects the frozen Chat and SDK revisions because it requires ancestry that those independently pinned authorities do not have. This change verifies their exact identities directly so the existing frozen inputs can reach packaging.

Chat verification retains the locked tree, selected source blobs/digests, clean checkout, harness authority and allowlisted native changes, and production adapter agreement. SDK verification binds the candidate and evidence revisions independently, requires clean checkouts, verifies all three evidence digests, and retains package identity checks. Frozen production/source candidates and release artifacts are unchanged; the executable harness now pins published c544594. Workflow script byte bindings and conformance documentation are updated.

Regression evidence: actual Chat and SDK pins failed the previous ancestry guards and pass the revised checks. Tests reject substituted revisions, evidence digests, and modified source. Focused review found no must-fix issues.

Validation: typecheck, lint, production build, and complete unit suites passed: normal 597 passed / 61 skipped; heavy 569 passed / 35 skipped. Focused review and whitespace checks passed.

Tracks #202 and the provenance prerequisite for #201. Binding commit 32e2e06384ae6fb83889a77af2fad7289db3b561 pins the published c544594 harness/tree and exact authority objects. The producer fixture now creates a distinct disposable revision/tree, so local precommit HEAD equality does not invalidate the test. Full suites passed with one worker (597 normal + 569 heavy); prior default-worker fixture timeouts are retained in the audit. Typecheck, lint, build, focused code/binding review and whitespace checks passed.

Merge with an actual merge commit; never squash or rebase. This preserves the pinned branch-local source ancestry as required by the conformance guide. Require complete exact-head CI before merging. Afterwards, bind the SDK producer/validator to the actual Chat merge and obtain fresh protected validation.

Earlier packaged job 102780447287 ran old locked harness 0ae0e90 and failed at phase1.packaging.authority.failed. Fresh CI on 32e2e06 must exercise c544594 through bootstrapVerifiedRunner. No packaged or protected aggregate acceptance is claimed yet. Preserve chat and active worktrees.

Copilot AI lite review requested due to automatic review settings September 10, 2026 07:11
@BunsDev BunsDev added the ci:full Run the macOS and Windows CI jobs on this pull request label Sep 10, 2026
@BunsDev BunsDev closed this Sep 10, 2026
@BunsDev BunsDev reopened this Sep 10, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

It modifies core packaged provenance/authority verification and workflow byte bindings, which warrants final human review and end-to-end packaged CI confirmation.

Pull request overview

This PR repairs packaged Phase 1 provenance verification for independently pinned “frozen” authorities (Chat production vs harness, SDK candidate vs evidence) by verifying exact identities + clean checkouts + locked digests/blobs, rather than requiring ancestry between revisions that are known to diverge.

Changes:

  • Update packaged authority checks to validate exact revisions/trees (Chat) and exact revisions (SDK), enforce clean checkouts, and retain existing locked-blob/digest and package-identity verification.
  • Add targeted regression tests to ensure the revised authority model accepts correct inputs and rejects substituted revisions/digests/dirty checkouts.
  • Update conformance documentation and workflow script-byte bindings to reflect the modified verification behavior and updated script digest/size.
File summaries
File Description
src/phase1-conformance.test.ts Adds regression coverage for independent SDK candidate/evidence binding and for frozen Chat authority (non-Windows).
scripts/phase1-conformance.mjs Revises packaged authority verification to validate exact identities directly (no ancestry requirement), using clean-checkout + identity helpers.
scripts/phase1-conformance.d.mts Exposes updated authority-check functions via type declarations.
docs/phase1-conformance.md Updates documented provenance model to match the independent-authority verification rules and refreshes script hash metadata.
.github/workflows/client-v1-conformance.yml Updates workflow byte-bindings for the changed scripts/phase1-conformance.mjs size and SHA-256.
Review details
  • Files reviewed: 5/5 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci:full Run the macOS and Windows CI jobs on this pull request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants