open-standards/wai/wai-quantum-desktop/README.md
Transaction Science c4c1294e00 wai-quantum: documentation that runs in CI, its drift fixed, an index of every page, and a changelog entry
wai/tools/quantum-docs/check_docs.py runs every block marked runnable on the
pages docs.json names (the engine, the command line, the service, Python,
the Studio, the desktop app, the editors, the providers, the compiler,
estimates, verdicts, the feature matrix, the course and the agent skill) in
a scratch directory of fixtures, holds each shown output to the real one,
verifies every receipt a block writes, builds and runs the Rust blocks, and
checks every block that cannot run for the commands and flags it names,
every wai-quantum command in the prose, every relative link and every
dependency shown; a translation must hold its English page's code. ci.sh
builds the command line, the service and the wheel and starts a service, as
wai-quantum-docs.yml runs it, beside the course's and the locales' tests.

Drift fixed: the crate pinned "0.4", named an unrelated crate for the command
line, ran its research tools outside lab, claimed the whole suite under
wasip2, and split its feature table from its header; the command line's
README said the reader refuses while, inv and pow, used placeholders and
optional flags that do not run, and merged versions that do not exist; the
estimate page's output lacked its receipts line; build steps now match CI.
An observable may lead with its coefficient ("0.5 X2"), as documented.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 08:43:06 -04:00

2.6 KiB

Quantum Studio for the desktop

Quantum Studio as an app. The interface is the browser's. The engine underneath is the quantum job service's engine (wai_quantum::engine), built natively: it uses every core, holds as much memory as the machine has, and works offline.

  • Each job runs in a process of its own, this binary run as worker, so a large job cannot take the app's memory with it, and Cancel ends it.
  • The worker plans and runs; the app seals. It signs the answer with this user's key, the command line's (~/.config/wai/quantum-key), which never leaves the app.
  • Step through and editing by the drawing run natively here: the debugger steps a program and lists its branches off the window's thread, and a drawing's edits, its SVG and LaTeX, and its description in words answer at once.
  • Saved jobs, programs and drawings go to ~/Documents/Quantum Studio/. wai-quantum verify checks a saved job.
  • The job service is one switch away, as in the browser.
  • Your own hardware: the providers you listed with wai-quantum providers add are under Your hardware. A run asks the provider for its estimate first and shows a dialog before one that is not free; the app reads the credential from the keychain and seals the counts with your key, and the page never sees the credential.
  • Memory: a job may take $WAI_QUANTUM_MEMORY_GB (16 by default). The plan says when a job needs more.

What is stable

The app is an application. What it promises is the engine's, through what it saves: a job is the engine's job JSON, which follows its schemas, and its receipt verifies with wai-quantum verify in every later version. What each WAI Quantum version promises, and how a change is announced: the policy; what is deprecated: the deprecations.

Building

The app embeds the Studio's build, so build the Studio first:

(cd ../quantum-studio && npm ci && node build.mjs)
cargo build --locked --release             # add --features metal for the GPU state vector on macOS
./target/release/wai-quantum-desktop       # the app
./target/release/wai-quantum-desktop check # a job through the worker, sealed and verified, with no window

It draws with the operating system's own web view, so the app carries no browser of its own. Installers for macOS, Windows and Linux come from cargo tauri build.