Skip to content

fix(release): separate macOS integrity boundaries - #536

Merged
LeXwDeX merged 3 commits into
devfrom
feat/498-macos-integrity-boundary
Sep 3, 2026
Merged

fix(release): separate macOS integrity boundaries#536
LeXwDeX merged 3 commits into
devfrom
feat/498-macos-integrity-boundary

Conversation

@LeXwDeX

@LeXwDeX LeXwDeX commented Sep 3, 2026

Copy link
Copy Markdown
Owner

Closes #498

Why

The release archive hash and the installed macOS binary hash represent different trust boundaries. The installer verifies SHA256SUMS before extraction, then macOS may mutate the binary through quarantine clearing and ad-hoc re-signing. Acceptance must verify archive integrity before extraction and signature validity after installation without treating byte equality as a stable signature-validity boundary.

What changed

  • added a zero-network B1 harness proving archive hash mismatch fails before extraction
  • added a Darwin B2 harness exercising the real xattr/re-sign path, strict signature verification, a negative control, and executable smoke
  • wired B1 into Typecheck CI and B2 into the macOS release build
  • documented the two trust boundaries in English and Chinese
  • made oc sourceable for the harness while preserving direct execution behavior

Evidence

  • bash script/oc-install-boundary.test.sh → 9 passed, 0 failed
  • bash script/oc-macos-acceptance.test.sh → 6 passed, 0 failed
  • bash -n oc script/oc-install-boundary.test.sh script/oc-macos-acceptance.test.sh
  • git diff --check
  • commit hooks: root lint + full workspace typecheck passed
  • final DAG review: ACCEPT, fingerprint b48fc5610e77de4978328f3361b44d7be6ff7658d9fb5ff6b69f8738967f0694

Checklist

  • archive/SUMS mismatch fails closed before extraction
  • matching archive installs and smokes
  • macOS re-sign path validates with codesign --verify --strict
  • negative control proves signature assertion is non-vacuous
  • no installed-binary-versus-payload hash comparison or post-sign digest
  • bilingual docs state only evidence-backed modal claims

@LeXwDeX
LeXwDeX changed the base branch from main to dev September 3, 2026 18:08
@LeXwDeX LeXwDeX changed the title Delivery macos-integrity-boundary fix(release): separate macOS integrity boundaries Sep 3, 2026
@LeXwDeX
LeXwDeX marked this pull request as ready for review September 3, 2026 20:20
@LeXwDeX
LeXwDeX merged commit 28f14d2 into dev Sep 3, 2026
12 checks passed
@LeXwDeX
LeXwDeX deleted the feat/498-macos-integrity-boundary branch September 3, 2026 20:51
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.

fix(release): separate macOS archive integrity from post-install signing

1 participant