Measure the coverage figure instead of carrying it forward #50

Merged
JMR-dev merged 1 commits from docs/coverage-figure into main 2026-08-23 05:51:23 +00:00
JMR-dev commented 2026-08-23 05:22:55 +00:00 (Migrated from github.com)

Closes R30 (#39) — the last above-cut finding.

CLAUDE.md claimed ~31% of lines. Measured on main today: 29.8% (629/2113 lines, 408/1424 branches).

It went down, and that is the interesting part. The review filed R30 as PLAUSIBLE with "direction certain, magnitude unmeasured" — the assumption being that 122 → 276 tests must have raised it. It did not:

903b43c now
JVM test files 11 43
main source 4,114 lines 5,715 lines
line coverage ~31% (claimed) 29.8% (measured)

The fixes added Reattachment, JobSnapshots, JobTags, InputQuery, StagingNames, StagingSweep, NativeLoadFailure and an Application class. The denominator outran the numerator.

That is not an argument against the tests — the new code is largely why the defects are fixed. It is an argument against quoting a coverage percentage from memory, which is exactly how a stale figure survived for weeks. The line now carries the measurement, its date, and an instruction to re-measure rather than assume.

This is why R30 was deliberately held to the end of the run: measuring it before the new tests existed would only have made it stale again, and guessing the direction would have got it backwards.

🤖 Generated with Claude Code

Closes **R30 (#39)** — the last above-cut finding. `CLAUDE.md` claimed **~31% of lines**. Measured on `main` today: **29.8% (629/2113 lines, 408/1424 branches)**. **It went down, and that is the interesting part.** The review filed R30 as PLAUSIBLE with "direction certain, magnitude unmeasured" — the assumption being that 122 → 276 tests must have raised it. It did not: | | 903b43c | now | |---|---|---| | JVM test files | 11 | 43 | | main source | 4,114 lines | 5,715 lines | | line coverage | ~31% (claimed) | **29.8% (measured)** | The fixes added `Reattachment`, `JobSnapshots`, `JobTags`, `InputQuery`, `StagingNames`, `StagingSweep`, `NativeLoadFailure` and an `Application` class. **The denominator outran the numerator.** That is not an argument against the tests — the new code is largely *why* the defects are fixed. It is an argument against quoting a coverage percentage from memory, which is exactly how a stale figure survived for weeks. The line now carries the measurement, its date, and an instruction to re-measure rather than assume. This is why R30 was deliberately held to the end of the run: measuring it before the new tests existed would only have made it stale again, and **guessing the direction would have got it backwards**. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.