Testing
How much of the code the test suite genuinely exercises: the three c8 coverage axes against a 95% target, whether a mutation-testing gate exists to check that the tests assert (not just execute), and how few source files escape measurement via coverage exclusions.
4.8 / 59.63 of 10 weighted points earned — snapshot of 2026-08-04
branch-coverageweight 3 ptsearned 2.8 / 3
Measures: branch coverage vs a 95% target
Why this weight: Branches are the hardest and most meaningful coverage axis — error paths and edge cases live there, and it is the axis that actually lags — so it carries the most weight.
line-coverageweight 2 ptsearned 2 / 2
Measures: line coverage vs a 95% target
Why this weight: A broad bulk signal, but easier to satisfy than branch coverage (straight-line code inflates it), so it earns less.
function-coverageweight 1 ptearned 1 / 1
Measures: function coverage vs a 95% target
Why this weight: Near-saturated in practice and the weakest discriminator of the three axes — a function counts as covered after a single call.
mutation-gateweight 2 ptsearned 2 / 2
Measures: stryker break threshold is set (not null)
Why this weight: Coverage proves code ran; mutation testing proves tests assert. Only the gate’s existence is checked (a full run is expensive), so it gets mid weight rather than more.
low-exclusionweight 2 ptsearned 1.83 / 2
Measures: few source files excluded from coverage
Why this weight: Excluded files are blind spots that silently inflate every other number in this dimension, so exclusion creep has to cost points.