Coverage audit found three fixes without a test that could catch their
reversion:
- E-6 ack-on-enqueue: new unit case "acks a pre-handler queued frame at
enqueue so the transport window never starves" (ngspice-service.test.ts;
false-green audited — fails with the ack removed, exactly one ack per
frame, none repeated on drain).
- E-5 / E-8 wiring / E-9 / E-7 shape: new source-contract tripwire
tests/tools/findings-e-source-contract.ts (npm run findings-e:contract) —
the codex-thread contract style for C++/EM_JS code that cannot be
behaviorally unit-tested without a wasm build. Asserts: the module
identity stamp + self-disarm and ABSENCE of the install-once presence
guard (E-5); all four completion sites use runWaitCompletion, no stub
resolves a wait directly, token<=0 bails, the shim exports the gate
surface (E-8); the run-generation mechanism present with its behavioral
drops confined to the wasm build (E-7); the identity-checked destructor
unregistration (E-9).
Also bumps kicad to the E-7 ifdef-confinement commit.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>