Parent: #134
Pin a concrete public JavaScriptCore header target and make API completeness mechanically auditable.
Acceptance:
- Check in the exact target SDK/header version and a machine-readable inventory of public functions, callbacks, types, and enum values.
- Provide compatible public headers under include/JavaScriptCore.
- Classify every inventoried symbol as implemented, intentionally platform-gated, or pending with a linked child issue.
- Add a verifier that fails when headers, exported symbols, inventory, and implementation drift.
- Reach zero pending public symbols before closing.
- Add C/C++ compile-link-runtime conformance coverage for the completed surface.
Target: the public JavaScriptCore C headers shipped by the macOS 27.0 Command Line Tools SDK.
Tracked implementation children:
- #136 — JSTypedArray and ArrayBuffer embedding surface
- #137 — JSClassRef callbacks and property-name APIs
- #148 — context groups, global metadata, syntax checking, and inspectability
- #149 — UTF-16 strings, borrowed characters, sizing, and equality
- #150 — remaining values, BigInt, comparison, JSON, and protect ABI repair
- #151 — remaining ordinary-object constructors and property APIs
- #139 / #152 — public inspectability controls backed by real inspector sessions; full debugger work remains tracked by #139, #153, and #154
Completion evidence
71bc743 completes the pinned macOS 27.0 public matrix: 117/117 functions implemented, zero pending, 117 public exports, and 12 zig-js extensions. Seven compatible headers plus the extension header are checked in and SDK hashes are pinned. Real C and C++ hosts pass. The two-fixture system-JSC differential matches 34/34 rows (a8ecd5e83f9f35ca).