Helps configure mewt or muton mutation testing campaigns — scoping targets, tuning timeouts, and optimizing long-running runs so you can execute mewt run or muton run with confidence.
Note: muton and mewt share identical interfaces. This plugin uses
mewtin examples, but all commands work the same withmuton. File names change accordingly:mewt.toml→muton.toml,mewt.sqlite→muton.sqlite.
Walks through a 5-phase configuration workflow:
- Initialize and validate targets — run
mewt init, review auto-generated config, fix include/ignore patterns - Generate mutants and assess scope — count mutants, time the test command, estimate campaign duration
- Decide on optimization — choose between full run, targeted components, high/medium severity only, or two-phase campaign
- Validate test command and timeout — verify the command works; set manual timeout for recompilation-heavy languages (Solidity/Foundry, heavy C++)
- Final validation checklist — confirm config, mutant count, target selection, and timeout before running
- Setting up a new mutation testing campaign
- Optimizing a campaign that would take too long to run
- Diagnosing why no mutants are generated or why the test command fails
- mewt v3.0.0+ or muton v3.0.0+ installed
- A test suite runnable from the command line
- Source code in a supported language (Rust, Solidity, Go, Python, JavaScript, C/C++)
User: "Help me set up mewt for this Solidity project"
User: "Configure muton for this FunC codebase"
User: "My mewt campaign would take 30 hours — how do I optimize it?"
→ Guides through configuration, scope assessment, and optimization
- mewt GitHub Repository
- Use mutation testing to find the bugs your tests don't catch — Trail of Bits blog post