From d5c4e38b18cbbebf809f64aa6149995725054807 Mon Sep 17 00:00:00 2001 From: Stephen Waits Date: Tue, 13 Oct 2026 11:11:56 -0600 Subject: [PATCH] build: pin every dev tool in mise.toml Rust (with clippy and rustfmt), just, Node (for deploys), Kani, Lean, cargo-mutants, and cargo-fuzz, so `mise install` is the whole bootstrap and nothing gets installed by hand. Lean is 4.34.1, the newest release past mise's minimum release age; verify/lean/lean-toolchain matches. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01GWVo7x3UHw5kwCUaWxiejX --- mise.toml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 mise.toml diff --git a/mise.toml b/mise.toml new file mode 100644 index 0000000..2ca9114 --- /dev/null +++ b/mise.toml @@ -0,0 +1,18 @@ +# Everything needed to build, test, prove, and ship wanderbooks. +# `mise install` in this directory, then `just` lists the recipes. + +[tools] +# Workspace toolchain (clippy and rustfmt for `just check`). +rust = { version = "1.99", components = "clippy,rustfmt" } +just = "1" +# `just deploy` runs the Netlify CLI through npx. +node = "26" +# `just prove`: Kani model-checks the accounting kernel. Kani fetches its +# own pinned nightly and CBMC under ~/.kani on first run. +"cargo:kani-verifier" = "0.68.0" +# `just prove`: Lean proves the accounting laws (verify/lean). Matches +# verify/lean/lean-toolchain. +"github:leanprover/lean4" = "4.34.1" +# Mutation testing and fuzzing (docs/oracle.md). +"cargo:cargo-mutants" = "latest" +"cargo:cargo-fuzz" = "latest"