fast-mutants: cargo-mutants per file with scoped tests, survivors confirmed on the full suite, sharded across slots #40

Merged
eureka merged 4 commits from eureka-substrate/fast-mutants into main 2026-11-01 20:11:48 +00:00

2026-11-01

cargo-mutants.sh: stage 2 always runs the full-suite baseline; zero-test files found at plan time; 5x timeout with a floor; --escape pinned
- full-baseline-skipped: stage 2 runs even when stage 1 settled every name (one name rides along; cargo-mutants runs no baseline for an empty selection), so a red suite is a red job
- timeout-mult-splits-missed: CONFIRM_TIMEOUT_MULT defaults to 5 and stage 2 gets --minimum-test-timeout like stage 1
- escaper-pipe-untested: the escaper is the --escape mode, run by the driver and by tests/test-tools.sh with each metacharacter
- zero-test-stage1-wasted: the plan container derives each file's filter and counts its tests (cargo test -- <filter> --list); 0 tests goes straight to stage 2; the container-side baseline.log count is deleted

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 20:57:04 +01:00
cargo-mutants.sh: the MUTANTS line reports containers per stage
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 19:43:21 +01:00
fakebin cargo and flock: executable, as docker and sudo are
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 19:15:47 +01:00
tools/cargo-mutants.sh: one owner of cargo-mutants on Yggdrasil
One verify job per range: a plan container lists the mutants (diff taken at the
workspace root), stage 1 runs each file's mutants against that file's tests only
and decides only caught and unviable, stage 2 confirms every survivor, timeout,
unfiltered or zero-test file on the full suite, sharded over free slot leases,
and the merge prints one MUTANTS line and the final MISSED/TIMEOUT names.
NAMES reruns chosen survivors; TEST_ARGS skips flaky tests.

Deletes ygg-verify.sh's MISSED/TIMEOUT summary grep and its inline cargo mutants
usage example; the host-mode export gains YGG_SLOTS and YGG_ROOT. Briefs and
SKILL.md name the script; the mock docker grows /cm and /out, with a fake cargo
and a fake flock for the new test-tools.sh cases.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 19:15:38 +01:00