Files
ersatztv/scripts
timothyandClaude Opus 5 0f4bb4244d fix(845): the invariant that replaced a drifting count was itself false, and two of the counts survived
Fifth cold review, on the previous fix commit. Every finding is prose, and three of them are
claims that commit's own message said it had fixed. On a branch whose stated thesis is "four
prose claims were falsifiable by grep", shipping four more is the finding. Each verified here
before acting.

  - "replaced in all four places" was wrong: there were FIVE occurrences of `31`. Two survived,
    one of them four lines below the sentence the same commit added saying the number drifts.
  - "the WHOLE writer suite reddens" is measurably false. Injecting a second anchored
    `H10_REVIEWERS=` gives 36 failed / 39 passed — a large part, not all. The commit invoked
    `state-the-invariant-not-the-measurement` and then wrote a claim STRONGER than the count it
    removed. Now stated without a count and without "whole".
  - The sentinel re-attribution retracted the environment-defeating ground in one paragraph and
    still asserted it seven lines below ("the two that were measured"). The sibling library
    corrected in the same commit got this right ("the ground that survives", singular). This is
    `stale-comments-sweep-by-subject`: after a retraction, grep the retracted words.
  - "spans THREE top-level directories" replaced a TRUE hedge with a false count, and did not
    match the workflow it was supposed to be synced with (which says "at least three"). The
    suite reads seven — `.claude`, `.gitea`, `.husky`, `docs`, `ErsatzTV`, `scripts`, `web` —
    so this PR's own doc edits are inputs to that job. Hedge restored, with the reason.

Also from that review: the `if [ "$state" = "success" ]` body was unindented at column 0, and
"Fails CLOSED on every branch" now means every branch OF THAT LOAD, since the load is itself
conditional. Both fixed; the indent change is whitespace-only (`git diff -w` empty).

The behaviour was attacked again and held. The reviewer traced a BLOCKED verdict end to end
with `scripts/lib/h10-reviewers.sh` DELETED — rc=0, status and comment both posted, no unbound
variable and no command-not-found, because `$state` is set by the `case` well before the guard
and every reference to the library sits inside one of the two `state = success` blocks. An
APPROVAL on the same tree still refuses before writing anything. Removing the guard reddens the
new rejection test; `if true` reddens 20 tests. The declared mutation still reddens its named
proof.

fixes #845

Decisions-Edit: yes
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019zUmJZHhVP7kXg5DV237TW
2026-08-30 03:38:47 +02:00
..
2024-01-15 10:29:07 -06:00
2024-01-16 13:28:46 -06:00