Skip to content

Fix doryd execution admission in signed releases - #95

Merged
Augani merged 1 commit into
mainfrom
codex/doryd-exec-admission-fix
Aug 29, 2026
Merged

Fix doryd execution admission in signed releases#95
Augani merged 1 commit into
mainfrom
codex/doryd-exec-admission-fix

Conversation

@Augani

@Augani Augani commented Aug 29, 2026

Copy link
Copy Markdown
Owner

Root cause

macOS 27 killed the notarized doryd helper before main with OS_REASON_EXEC because the renderer release identity was encoded as a custom signed entitlement. Codesign and notarization accepted the file, but launch-time execution policy did not.

Fix

  • embed the immutable runner/renderer CDHash tuple in a signed __TEXT,__doryid Mach-O section
  • keep doryd entitlement-free and verify its Developer ID signature plus exact embedded payload
  • rebuild doryd only after the nested runner graph receives its final signatures
  • add fail-closed Mach-O parsing, canonical payload tests, and release-order checks
  • update physical release smoke checks to use the nested DoryHVRunner executable path

Verification

  • full Swift suite: 447 tests in 50 suites passed, with all XCTest suites passing
  • renderer identity Python suite: 9 passed
  • live-smoke contract suite: 6 passed
  • component packaging contract: passed
  • release workflow contract: passed
  • Developer ID signed arm64 doryd: exact section verified, no entitlements, reached main under macOS execution policy instead of OS_REASON_EXEC

@Augani
Augani merged commit 1fe2441 into main Aug 29, 2026
4 checks passed
@Augani
Augani deleted the codex/doryd-exec-admission-fix branch August 29, 2026 19:36
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