Re-review of the previous fix commit found the population guard did not close the
vacuity it was added for. `ruff check . --show-files` reports DISCOVERY, and an
`exclude` defeats discovery in three config scopes — including `[format]`, which
is where an appended line lands by TOML rules. Measured with 0.12.11 against a
tracked file holding an unused import, a hardcoded credential and a formatting
error (GREEN = gate silently off):
exclude in check . explicit format --check . explicit
top level GREEN red GREEN red
[lint] GREEN red red red
[format] red red GREEN red
+ force-exclude - GREEN - red with --no-force-exclude
So both steps now pass an explicit population from
`git ls-files -z '*.py' '*.pyi' '*.ipynb'` with `--no-force-exclude`, guarded by
an empty-list arm. All five mutants above are detected; an empty population
errors. This also fixes the count-comparison's three defects in one move: it
covers `.pyi` (which the old `git ls-files '*.py'` miscounted into a false red),
tracked-but-gitignored files (a permanent false red — `git add -f` under an
ignored path is established practice here), and compensating drift that a count
comparison nets to zero.
RUF100 is now selected. The previous commit added a `# noqa: UP031` to a site the
FIRST commit had already fixed in code — a suppression suppressing nothing, in a
change whose whole premise is that suppressions must stay honest — and two more
had been dead in the tree for months. All three removed. The split is 55 fixed in
code / 17 suppressed, not 54/18.
The `git` half of `Preflight external tools` moves back ahead of the lint steps,
which now consume `git`: without it a missing git kills the step at the population
assignment under `-e`, and the step's own `::error::` never prints. The orphaned
pytest/PyYAML rationale comment goes back onto its own step.
Docs: the record's mutation paragraph called the `[format]` exclude a
mutation-construction pitfall when it was a live coverage hole — it now carries the
measured matrix instead; `mechanics:` frontmatter rewritten; "all eight S105 hits"
scoped (there are nine in the tree, one pre-existing); the defect-shapes
reproduction block now actually runs (`mkdir -p`, `;` not `&&`, a sha not `main`,
not /tmp).
Refs: #780
Decisions-Edit: yes