diff --git a/CLAUDE.md b/CLAUDE.md index 2383974f..19e056e4 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -23,10 +23,12 @@ saying what is now true, not what was done. ## Tests -`dune test --root .` must be green before a lane reports; grep its output for -FAIL, since the exit code alone has lied. `@checks` (`@page`, `@x86`, `@cells`), -`@sanitize` and `@valgrind` are slow and run once between batches of lanes, with -the author's permission, never inside a lane. ASan misses uninitialised stack +A lane never runs the full `dune test`: it builds with `-j 2` and runs only the +programs and test executables its change touches, one at a time, and lists them in +its report. After about five lanes merge, one tester agent runs `dune test --root .` +on master and fixes what broke; grep its output for FAIL, since the exit code alone +has lied. `@checks` (`@page`, `@x86`, `@cells`), `@sanitize` and `@valgrind` are +slow and run only with the author's permission. ASan misses uninitialised stack reads; `@valgrind` catches them. ## Evidence