/demo
The heatmap, live.
This is a real StrengthReport — the JSON speccle-oracle strength --json emits — produced from the repo's targets/checkoutproving ground. Line coverage is a perfect 100%, and two mutants still survived. Click a weak criterion to see the exact changes its tests didn't notice, or flip to the coverage view to see what coverage alone would claim.
Line coverage
0%the naïve baseline
Oracle strength
0%killed ÷ covered mutants
Gap
4.3%what coverage overstates
46 covered mutants: 44 killed, 2 survived — each survivor a change no test noticed
A criterion is strong only when every mutant its tests cover is killed.
features/basket/SPEC.md
strength 100.0% · coverage 100.0%
features/checkout/SPEC.md
strength 88.2% · coverage 100.0%
Nothing falls outside the criteria here: every criterion is claimed by a test, no test claims an unknown token, and no mutant sits beyond a claiming test's reach.
The four states
This example happens to exercise the first two; a criterion can also be unclaimed or uncovered.
Strong
Every mutant this criterion's tests execute is killed — the behaviour is genuinely defended.
Weak
At least one surviving mutant — a code change the tests executed but didn't notice. This is what strengthen routes.
Unclaimed
No test carries this criterion's [KEY-n] token. Reported by name as the worst case — never as a zero score.
Uncovered
Tests claim the criterion but cover no mutants — they execute nothing the mutation run touched.