1.3.1 — accept a change by its own tests
A lead can now accept an agent's change by the tests that change touches, prove that a test catches a real bug, and trust that the pushed commit, not the local checkout, is what the gate judged.
What's new
1.3.0
check --since <base> --testsruns the tests the change touches (by name, by import, and one more hop through a test harness) with coverage in a private run folder, then judges only the changed functions. Old debt does not block.mutant --file <path> --find <text> --replace <text> [--test <path>]makes one exact mutation, runs the tests, and prints KILLED, SURVIVED or ERROR. The file is restored byte for byte after every outcome, Ctrl-C included; a mutant left by a killed run is restored on the next start.- One test executor for the full gate,
check --tests, pre-push andmutant: it waits while the machine is busy (1-minute load above 2 × CPU, up to 10 minutes, then runs) and kills the whole test process group on a timeout or Ctrl-C. - pre-push judges the pushed commit: when the push has touched tests to run, pushing a commit other than the checked-out one, or with uncommitted changes in the files the touched tests read, is refused with the reason.
- New
[tests]keys (touched_cmd,mutant_cmd,max_load,load_wait_s,touched_timeout_s,mutant_timeout_s) are protected like the rest of.quality.toml. - New
acceptanceskill: the runbook for accepting a change — a spec with a failure table, one parallel pass on a frozen candidate, one batched repair, two rounds.
1.3.1
- Touched tests include
X.<anything>.test.tsforX.tsxand test files that name a repository file by a path string, so render tests that load a harness by path are selected. - A
bun.lockorbun.lockbat the root makes apackage.jsonproject a bun project for touched runs andmutant. - Only the agent entry points (
agent-stop,guard-bash) move the machine's git hook pointers; a copy run by hand never takes them. mutantreports a malformed state file asMUTANT ERRORwith the state paths; lcovDAlines count only inside theirSFrecord.
Verified: 381 tests; live runs on two real consumer repositories (a TypeScript agent and a bun monorepo).
Upgrade: claude plugin update code-quality@code-quality, or your agent's plugin update. No config change is needed.