E (part-simulators-coverage): iterates every metadataId returned by PartSimulationRegistry.listRegisteredParts() and asserts the attachEvents surface is valid (no throw, unsubscribe callable). 82 parts covered automatically + 1 sanity baseline. Surfaces real Node compat gaps — discovered servo + neopixel reach for requestAnimationFrame, now shimmed in a beforeAll. F (solver-determinism): 8 canonical examples run through solveInput three times each; node voltages must agree within 1e-12. Plus a state-leak test (solve A, solve B, solve A again — A's results must be bit-identical). Catches RNG / residual-state regressions in the NgSpiceNodeAdapter singleton. Adding either a new part registration or a new canonical example extends coverage automatically — no fixture duplication per the test-fidelity rule. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| __pro_stub__ | ||
| __tests__ | ||
| assets | ||
| components | ||
| data | ||
| hooks | ||
| i18n | ||
| lib | ||
| pages | ||
| services | ||
| simulation | ||
| store | ||
| tokens | ||
| types | ||
| utils | ||
| velxio-elements | ||
| App.css | ||
| App.tsx | ||
| entry-server.tsx | ||
| index.css | ||
| main.tsx | ||
| seoRoutes.ts | ||
| vite-env.d.ts | ||