# 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](../../wai-quantum/docs/verdicts.md)). | 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, to the layer that decided it, and to each intent's outcome, strength, check and layer. Every kind of intent has a case, and so has every layer a circuit job's verdict can stand on, `unchecked` among them: an intent no layer could decide is unchecked, never guessed. 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 ```sh 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: ```sh WAI_INTENT_BUNDLE_WRITE=1 cargo test --release --features full --test intent_conformance the_bundle_is_the_corpus ``` ## WASI (the edge) ```sh CARGO_TARGET_WASM32_WASIP2_RUNNER='wasmtime run -W nan-canonicalization=y -W relaxed-simd-deterministic=y' \ 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).