Parent: #140 Profiles: #163, #164 Roadmap: #134 Inspector foundation: #139
Implement the shared pinned BunDebugger__willHotReload boundary as a real process-wide inspector broadcast.
Acceptance:
- Export the exact no-argument C ABI for both pinned Home and Bun profiles.
- Deliver exactly
{"method":"Bun.canReload"}to every live inspector connection across all context groups/VMs. - Do nothing when no inspector connection exists.
- Make broadcast iteration safe when a frontend callback releases itself, releases another session, or reenters the broadcast.
- Never deliver to detached/release-requested sessions, and preserve deterministic per-state session order.
- Add direct, multi-session, multi-VM, detach/reentrancy, and no-session tests with zero leaks.
- Add compiled Home/Bun consumer evidence in Debug and ReleaseSafe.
- Refresh both exact inventories, #140/#163/#164, and concise ABI documentation.
Backward compatibility is intentionally out of scope; implement the clean exact pinned behavior.
Completion evidence:
- Implementation and exact unit coverage:
1d26c6cc - Inventories and concise documentation:
6427d1ca - Focused hot-reload unit slice: 3/3, zero failures/leaks
- Existing inspector detach regression: 3/3, zero failures/leaks
- Exact Home and Bun consumer fixtures: Debug and ReleaseSafe
- Inventories: Home 409/471 (62 pending), Bun 401/461 (60 pending), zero unclassified
- CI gate:
test-private-hot-reloadis part ofprivate-abi-boundary