ADR-089 — nvsim NV-Diamond Pipeline Simulator.
Status: Accepted. Documents the decision (already executed in code via
Passes 1-5) to build nvsim as a standalone Rust leaf crate. Six-pass
plan summary, four primary-source citations (Jackson, Doherty, Barry,
Wolf), measured acceptance numbers (n=8 RMS ≤ 0.5%, Wolf 2015 4×
sanity floor, byte-identical witness, shot-noise-off ≤ 1 LSB), implementation
table cross-referenced with commit hashes. Six open questions around
crates.io publication, crate split, and proof-bundle venue.
ADR-090 — nvsim Full Hamiltonian / Lindblad Solver Extension.
Status: Proposed (conditional). Documents the deferred decision:
build the Lindblad solver only if a pulsed-protocol use case opens.
Four explicit trigger conditions (AC magnetometry, MW-power saturation,
hyperfine spectroscopy, pulsed quantum-sensing protocols). Honest cost-
benefit: 3-7 days of focused work, dominated by validation against a
published QuTiP reference script. Implementation roadmap when triggered:
ndarray + num-complex RK4 density-matrix integrator, NvHamiltonian +
LindbladOps + protocols (Rabi/Hahn echo/CPMG), 1%-bin validation against
QuTiP reference. Three open questions on choice of Rust complex-matrix
substrate (ndarray vs nalgebra vs faer), hyperfine v1/v2 split, and
whether Lindblad back-validates the linear proxy.
Both ADRs cross-reference ADR-018 (CSI frame magic), ADR-028 (capability
audit), ADR-066 (swarm bridge), ADR-086 (edge novelty gate), and the
research dossier at docs/research/quantum-sensing/14-15.
ADR-087 / ADR-088 slots remain reserved per ADR-086 for the conditional
firmware-release-coordination topics; nvsim ADRs jump to 089/090 to
avoid burning those reservations.
Co-Authored-By: claude-flow <ruv@ruv.net>