wai-quantum 0.3.41: the fabric — members, parity against the CPU reference, certificates, placement by joules, and the gate kernel in 32-bit lanes #195
- The energy class is encoded as energy-measurement §2.7 does: tag 0 for
an unmetered zero, otherwise the class's own tag, with no byte before
it (a leading 1 read as the legacy HwShunt tag).
- The fabric receipt has its figure profile, wai:quantum-fabric-id, in
the §6.1 table, the Rust profiles, the Python verifier, and an
EnergyFigures view with a test.
- certify_sampling certifies a sampling device from its counts, with the
weights and counts in the corpus digest.
- Corpus inputs length-prefix the control count; non-finite floats
certify nothing even when they match; the lane multiply's exact range
is stated and tested on both sides of its edge; detection names the
units it probes on targets it cannot ask.
- The docs say a certificate names the member it ran on, so only its
parity and corpus digest agree across platforms.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
From a five-lens review with three skeptics per finding:
- A certificate now names its kernel, implementation, member and corpus
generator (with the seed), all in its hash. Placement relies only on a
certificate that is for that kernel, implementation and member, and
earned on a corpus unless it is a CPU's own reference.
- A bound no longer stands in for a fidelity.
- The receipt and certificate encodings length-prefix every string, so
bytes cannot move between fields under one signature. The corpus digest
length-prefixes every output.
- The receipt carries the joules' acquisition class: required for a
non-zero figure, absent for zero, checked by the crate's label rule.
- statistical() normalises the reference, refuses a shot total past 64
bits, and cannot exceed one. compare() refuses a scale of 64 bits or
more. lanes::simulate refuses what the native simulator refuses.
- A known energy figure of any size comes before none.
- Detection asks the running CPU for its vector units on x86-64 and
aarch64 and says when it reports what the binary was compiled for.
- The docs claim no more than the gate kernel for lanes.
- The CLI labels by implementation and prints the generator; its doc says
fabric describes the host while its certificate agrees everywhere.
- wai.quantum.fabric joins the registry's unregistered receipt labels.
Native aarch64 and wasm32-wasip2 give the same certificate, corpus digest
included, for the same seed.
Co-Authored-By: Claude Opus 5.5 <[email protected]>