- Mutation Testing — Campaign Configuration (mewt/muton)
- Note
- muton and mewt share identical interfaces but target different languages — mewt for general-purpose languages (Rust, Solidity, Go, TypeScript, JavaScript), muton for TON smart contracts (Tact, Tolk, FunC). All examples use
mewt
commands, but they work exactly the same with
muton
. File names change accordingly:
mewt.toml
→
muton.toml
,
mewt.sqlite
→
muton.sqlite
.
When to Use
Use this skill when the user:
Mentions "mewt", "muton", or "mutation testing"
Needs to configure or optimize a mutation testing campaign
Wants to run
mewt run
and needs help getting set up first
When NOT to Use
Do not use this skill when the user:
Wants to analyze or report on completed campaign results
Asks about tests or coverage without mentioning mutation testing
Quick Start
Load
workflows/configuration.md
— a 5-phase guide from
mewt init
to a validated, ready-to-run campaign.
General question or unfamiliar command?
Run
mewt --help
or
mewt
--help , then assist. Reference Index File Content workflows/configuration.md 5-phase guide: init, scope, optimize, validate, run references/optimization-strategies.md Per-file targeting, two-phase campaigns, mutation type filtering Essential Commands
Initialize and mutate
mewt init
Create mewt.toml and mewt.sqlite
mewt mutate [ paths ]
Generate mutants without running tests
mewt run [ paths ]
Run the full campaign
Inspect configuration and scope
mewt print config
View effective configuration
mewt print targets
Table of all targeted files
mewt print mutations --language [ lang ]
Available mutation types
mewt status
Mutant count and per-file breakdown
Investigate specific mutants
mewt print mutants --target [ path ]
All mutants for a file
mewt print mutants --severity high
Filter by severity
mewt print mutant --id [ id ]
View mutated code diff
mewt test --ids [ ids ]
Re-test specific mutants
- What Results Mean
- Caught/TestFail
-
- Tests detected the mutation (good)
- Uncaught
-
- Mutation survived — indicates untested logic
- Timeout
-
- Tests took too long, inconclusive
- Skipped
- A more severe mutant already failed on the same line