Parent: #140 Profiles: #163, #164 Roadmap: #134
Pinned Bun 4982b91e retains two module-registry snapshot symbols as dead ABI compatibility shims after JSC stopped exposing the loader registry as a JavaScript Map. Implement their documented current behavior exactly instead of inventing a snapshot format.
Scope
- Pin
ZigGlobalObject.cppsource identity and its explicit no-caller contract. - Export
Zig__GlobalObject__getModuleRegistryMapasnullptr. - Export
Zig__GlobalObject__resetModuleRegistryMapasfalse. - Prove globals, opaque pointers, module state, and pending exceptions are not inspected or mutated.
- Compile, link, and run Home and Bun profile consumers in Debug and ReleaseSafe.
- Refresh inventories, concise README counts, and parent evidence.
- Close only on green fixing CI.
This is deliberately exact: pinned upstream says the loader registry is no longer a JS Map, snapshot/restore is unsupported, both symbols have no callers, and they remain only for ABI compatibility.