findings(E-5,E-6,E-7,E-8,E-9): close the test-coverage gaps + kicad ifdef bump

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>
This commit is contained in:
Istvan Matejcsok 2026-08-24 15:37:21 +02:00
commit 0f21a33216
4 changed files with 128 additions and 2 deletions

View file

@ -30,7 +30,8 @@
"3d:review": "tsx tools/screenshots/compare-dirs.ts --old 3d-regression/baseline --new 3d-regression/output/webgl --out 3d-regression/output/diff/parity-review --floors 3d-regression/floors.json --level webgl-vs-native --label 3d-parity --artifacts always",
"3d:test:webgl": "playwright test --project=wx-chromium e2e/3d-webgl.spec.ts",
"tools:contract": "tsx tools/cli-contract.ts",
"ngspice:worker-batch": "tsx tools/ngspice-worker-batch-unit.ts"
"ngspice:worker-batch": "tsx tools/ngspice-worker-batch-unit.ts",
"findings-e:contract": "tsx tools/findings-e-source-contract.ts"
},
"devDependencies": {
"@playwright/test": "^1.62.1",