What Coldworks gets wrong
Two failure classes recur often enough to have names:
- A conclusion drawn from an absence in the diff. “This name is used and no import was added” — when the import was already there, three files away.
- Re-reporting a tradeoff the code already documents, as though it were news.
The first one produced a rule worth more than the bug it came from: a claim about an absence cannot be settled by looking at the same place the claim came from. “No import was added” is a fact about the diff; whether the import exists is a fact about the repo. Re-reading the diff confirms the finding every time and proves nothing — the check and the error are the same observation. In that particular case the linter had already answered it, green, before Coldworks ever spoke.
So every finding now gets a line at disposition time: was it real, disproved, or adjacent — wrong as stated, right about something nearby — and separately, did anything in the codebase actually change because of it.
Two axes, deliberately, because one column loses the cases that matter. A true finding that changed nothing is a re-report of something the code already says. A false finding that changed something found a real gap by the wrong route. The reviewer’s strongest mode is “this code does not justify itself” — and a single score would grade that as failure.
{"pr": 28,
"rule": "reader:missing-import",
"verdict": "disproved",
"changed": false,
"settled_by": "api/doug/api.py:7 —
already imported; ruff F821 was
green before the finding"}
# as of 2026-08-27 — a snapshot, not a
# counter. 205 rows; 193 prospective,
# 12 backfill excluded from every rate.
# The reader on doug is 176 of those:
# 54 disproved, 85 real, 37 adjacent.
# The plan lane writes here too, in its
# own vocabulary, and is not in that
# figure.
# today's number, from the log itself:
# python -m doug.findings_log rate \
# --repo doug --rule-prefix reader: