Skip to content

Preflight bounded Mach-O chained fixups - #85

Merged
lynnswap merged 6 commits into
mainfrom
codex/issue-80-bounded-chained-fixups
Aug 25, 2026
Merged

Preflight bounded Mach-O chained fixups#85
lynnswap merged 6 commits into
mainfrom
codex/issue-80-bounded-chained-fixups

Conversation

@lynnswap

Copy link
Copy Markdown
Owner

Purpose

Prevent file-backed chained-fixup metadata from terminating the raw helper on valid sparse iOS 27 tables or malformed external ranges.

Fixes #80.

Changes

  • Pin the reviewed MachOKit fix at e0e0b30187ae74f2088d932845c8ddac2c79f36c.
  • Track SwiftPM mirrors for both current MxIris MachOKit URL spellings so the direct revision and all transitive requirements resolve to one fork checkout.
  • Preflight file-backed chained fixups after loading the Mach-O and before Objective-C or Swift metadata readers consume resolver results.
  • Verify the exact MachOKit, MachOObjCSection, and MachOSwiftSection dependency cohort plus the tracked mirror contract.

The dependency fix adds bounded file/image table parsing, correct sparse segment semantics, checked page and chain walking, one validated pointer-index owner, and typed preflight failures while preserving existing public query signatures.

Testing

  • swift package --force-resolved-versions resolve
  • swift package --force-resolved-versions show-dependencies --format flatlist (no MachOKit identity conflict)
  • swift test --force-resolved-versions
  • scripts/test-release-scripts.sh
  • Xcode 27 iOS Simulator compile: PrivateHeaderKitCore, PrivateHeaderKitCoreTests
  • Xcode 27 watchOS Simulator compile: PrivateHeaderKitCore, PrivateHeaderKitCoreTests, privateheaderkit-sim-helper
  • MachOKit: swift build; 28 DyldChainedFixupsSafetyTests; branch-wide Codex review clean
  • PrivateHeaderKit: branch-wide Codex review clean
  • iOS 27.0 beta 24A5390f runtime smoke:
    • PosterBoardUI: completed, 6 artifacts
    • PrivateSearchProtocols: completed, 1 artifact
    • UserManagementUI: completed, 3 artifacts
    • zero run warnings, failure summaries, helper signals, or new incident reports
    • SQLite integrity ok; runtime override restored; run-owned Simulator deleted

Screenshots

Not applicable.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for security reviews. Please try again later.

@lynnswap
lynnswap merged commit 88f36e6 into main Aug 25, 2026
1 check passed
@lynnswap
lynnswap deleted the codex/issue-80-bounded-chained-fixups branch August 26, 2026 16:45
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.

MachOKit chained-fixup reads SIGSEGV three iOS 27 targets

1 participant