open-standards/wai/quantum-conformance/intents
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science 94b2246271 wai-quantum: sampled intents in the verdict on every surface, and a target run's verdict
The debugger's sampled intent (samples of the run held to a stated
distribution by a stated test at a stated level) moves into
engine::verdict with the other kinds, so the command line, both MCP servers,
the service, the page and Python take it: the program run as the job runs it
(its method, noise, options and device target) for the intent's shots at its
seed, evidence and never proof. wai-quantum test keeps --junit, now read
from the engine's verdict. A job on a device target gets its verdict, and its
plan admits the check's memory as other jobs do. The intent set gains sampled
cases (a fair pair, a biased claim, an outcome ruled out, proof required,
under noise, and beside an exact distribution). The CLI's tool list now has
repair_qasm beside estimate_resources, the debugger's and the target tools;
the agent docs are regenerated.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 23:44:27 -04:00
..
programs wai-quantum: the intent conformance set, natively and under wasm32-wasip2, with a CI leg 2026-10-27 23:44:27 -04:00
repaired wai-quantum: the intent conformance set, natively and under wasm32-wasip2, with a CI leg 2026-10-27 23:44:27 -04:00
bundle.json wai-quantum: sampled intents in the verdict on every surface, and a target run's verdict 2026-10-27 23:44:27 -04:00
manifest.json wai-quantum: sampled intents in the verdict on every surface, and a target run's verdict 2026-10-27 23:44:27 -04:00
README.md wai-quantum: sampled intents in the verdict on every surface, and a target run's verdict 2026-10-27 23:44:27 -04:00

Intent conformance

Programs, what each must do (its intents), and the verdict the engine must give when the program runs as a job with them (wai_quantum::engine::verdict, the verdict page).

Path What
programs/ The programs and the references their intents name: a Bell pair, GHZ states built two ways, a Grover search written with cz and with cx, rotations that merge, twelve-qubit circuits that only checked rewrites or random inputs decide, a forty-qubit Clifford pair, a program that acts on what it measured, and programs that do not read until they are repaired.
repaired/ The program a repaired case must run, as the repair writes it.
manifest.json Each case: its program, its run (the job's other fields), its intents, and what its verdict must say (the manifest's expect says what each field means).
bundle.json The manifest's cases with every program and reference inline, for builds that read no files.

A case's verdict is held to its level (refused, parsed, executed, evidence, proof), to whether its intents hold, and to each intent's outcome, strength and check. A distribution's total variation distance is held within 1e-12 of a value known by hand: 0 for an exact match, 1/2 for a Bell pair against one outcome, and 2 · 0.02 · 0.98 = 0.0392 for a Bell pair whose bits each flip with probability 0.02. A sampled case holds the run's samples to a stated distribution by a stated test at a stated level, at a fixed seed: it is evidence, never proof, and its outcome is held to the manifest's. A refused case is held to the last code its refusal gives. Every level of the ladder has a case.

Native

cd wai/wai-quantum
cargo test --release --features full --test intent_conformance

Two tests: every case against its verdict, and the bundle held equal to the files. After changing a program or the manifest, write the bundle:

WAI_INTENT_BUNDLE_WRITE=1 cargo test --release --features full --test intent_conformance the_bundle_is_the_corpus

WASI (the edge)

CARGO_TARGET_WASM32_WASIP2_RUNNER=wasmtime \
  cargo test --target wasm32-wasip2 --features full --test intent_conformance

The cases come from the bundle compiled into the test.

Browser

wai-web's wasm32 tests (--features quantum_engine, under wasm-bindgen-test-runner) run every case of the bundle through the page's engine (QuantumEngine.run), and work each verdict out again with engine_verdict.

CI: wai-quantum-verdict.yml (native and wasm32-wasip2) and wai-web-wasm.yml (the browser build).