ADR 0013: Rust workspace

Status: accepted, 2026-10-06

Context

The checker has to answer in under a second: that is the M0 exit criterion in README.md, the budget is pinned in crates/cli/benches/check.rs (cold 1 s, warm p95 100 ms) and the CI bench job fails the build when one is blown. The same binary has to run on a laptop — macOS and Linux now, Windows later — and on CI runners with no runtime to install. The language core has to run in an editor (ks-lsp) and, later, in a browser: a playground and the hosted web review page (ADR 0200). Keep Shipping is built as a harness in the style of the cratefield harness (ADR 0000), so the language should be one whose toolchain and conventions the rest of Factory Zero's projects already share.

ADR 0000 planned this decision as ADR-0001, from issue #2. It is numbered 0013 because 0001 went to typed values and secret references, and 0002–0012 stay with issues #3 to #13, as ADR 0000 planned.

Decision

Consequences