mutation-gate

Installation
SKILL.md

Mutation Gate

Mutation testing answers the question coverage can't: "would a buggy version of this code slip past my tests?" A mutation tool introduces small, controlled edits ("mutants") — flipping < to <=, replacing true with false, deleting statements — and reruns the test suite. A mutant the tests catch is "killed"; one that slips through is a "survivor" and evidence of weak assertions.

Requirements

  1. Run mutation command when requireMutation=true.
  2. Treat surviving mutants as test-quality defects — the test said "pass" when the code changed meaning.
  3. Strengthen assertions or add missing cases until the tool's own score threshold passes.
  4. The mutation command's exit code is the source of truth for PASS/FAIL. The score is what you iterate on, but the tool's threshold config decides the gate.

Per-language tool reference

Language Tool Install Canonical command Output path
JS / TS Stryker pnpm add -D @stryker-mutator/core @stryker-mutator/jest-runner (or vitest-runner) npx stryker run reports/mutation/mutation.json
Python mutmut pip install mutmut mutmut run && mutmut results --json inspected via mutmut show <id>
Go go-mutesting go install github.com/zimmski/go-mutesting/cmd/go-mutesting@latest go-mutesting ./... stdout
Rust cargo-mutants cargo install cargo-mutants cargo mutants mutants.out/outcomes.json
Installs
2
GitHub Stars
3
First Seen
Jun 23, 2026
mutation-gate — xiaolai/tdd-guardian-for-claude