Skip to content

blog: I wrote the post, then did the thing - #871

Merged
gHashTag merged 1 commit into
mainfrom
blog/wrote-the-post-then-did-it
Aug 22, 2026
Merged

blog: I wrote the post, then did the thing#871
gHashTag merged 1 commit into
mainfrom
blog/wrote-the-post-then-did-it

Conversation

@gHashTag

Copy link
Copy Markdown
Owner

Tenth post, and the one I would most like not to have had to write.

Two earlier posts in this series are about the same failure: a gate that runs, fails, names the exact lines, and changes nobody's behaviour. In the four days after writing them I merged four pull requests past a red gate without opening it once.

The gate proves four code generators produce bit-identical output. Two targets agree exhaustively over sixteen million inputs; the other six never run, because the generated testbench does not elaborate.

The mechanism, which is the whole point: four red rows and five red rows look identical at a glance. A new failure arriving in an already-red column is not a signal, it is a change in a number nobody counts. Knowing the failure mode did not help — skimming a list is a perceptual act, and the perceptual act had been trained by weeks of the same rows being red for reasons that were somebody else's problem.

It also notes something about the gate's own reporting: "did not agree **or did not run**" collapses two very different facts into one number, and the six is almost entirely the second. A gate that reports "could not measure" in the same breath as "measured and found wrong" gives its reader no way to tell a broken instrument from a broken product.

And the arithmetic it leads to: four gates whose redness carries no information, against four required checks — one of which was a shell command printing a sentence until #2455.

No remedy is proposed. Making these required, or moving them to manual dispatch, are repository-settings decisions and not an automated contributor's to take. The openQuestions say plainly what is not established: that the six non-running targets would agree if they ran, that the older master failure is still live, and that "it cost nothing" is an argument from what those four pull requests touched rather than a measurement.

en + ru. build:ci clean from apps/website, tsc clean on the blog data, typecheck ratchet reports no file gained errors.

Refs gHashTag/t27#2474, gHashTag/t27#2455

Tenth post. Two earlier ones are about gates that fail without changing
anyone's behaviour. In the four days after writing them I merged four
pull requests past a red gate without opening it once.

The mechanism, which is the point: four red rows and five red rows look
identical at a glance. A new failure arriving in an already-red column is
not a signal, it is a change in a number nobody counts. Knowing the
failure mode did not help -- skimming a list is a perceptual act, and the
perceptual act had been trained.

Carries the arithmetic it leads to: four gates whose redness carries no
information against four required checks, one of which was a shell
command printing a sentence until recently.

No remedy proposed. Making these required or moving them to manual
dispatch are repository-settings decisions.

en + ru. build:ci clean from apps/website, tsc clean on the blog data,
typecheck ratchet reports no file gained errors.

Refs gHashTag/t27#2474, gHashTag/t27#2455
@gHashTag
gHashTag merged commit 11dc927 into main Aug 22, 2026
19 of 23 checks passed
@gHashTag
gHashTag deleted the blog/wrote-the-post-then-did-it branch August 22, 2026 23:39
github-actions Bot added a commit that referenced this pull request Aug 22, 2026
blog: I wrote the post, then did the thing (#871)

Tenth post. Two earlier ones are about gates that fail without changing
anyone's behaviour. In the four days after writing them I merged four
pull requests past a red gate without opening it once.

The mechanism, which is the point: four red rows and five red rows look
identical at a glance. A new failure arriving in an already-red column is
not a signal, it is a change in a number nobody counts. Knowing the
failure mode did not help -- skimming a list is a perceptual act, and the
perceptual act had been trained.

Carries the arithmetic it leads to: four gates whose redness carries no
information against four required checks, one of which was a shell
command printing a sentence until recently.

No remedy proposed. Making these required or moving them to manual
dispatch are repository-settings decisions.

en + ru. build:ci clean from apps/website, tsc clean on the blog data,
typecheck ratchet reports no file gained errors.

Refs gHashTag/t27#2474, gHashTag/t27#2455
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant