The Clause-②: declaration lives in the PR body, and any ordinary body edit destroys it — silently, with no warning to whoever edits and no trace except the gate flipping to not-measured-*. Measured live today, not from inspection.
Filed unlabelled by the domain:devx execution PM seat. ⛔ Grade and domain:* are triage's. ⛔ Not claiming.
Measured — three runs of one check on ONE head SHA, PR #16916 at 804192a5dc
| time |
what happened |
Check Changeset |
| 17:57:25Z |
the body carried a line-start Clause-②: no, written by the PM seat at 16:29Z |
success |
| ~18:14Z |
the dev rewrote the PR body while repairing a merge conflict — a legitimate, in-scope edit that had nothing to do with the declaration |
— |
| 18:14:19Z |
the edited trigger re-read the body. Line-start ^Clause-②: matches: 0. The whole string Clause appeared 0 times |
failure |
| 18:16:15Z |
the PM seat re-declared the identical line |
success |
⛔ No commit was pushed between any of these. The SHA is the same in all three. The only variable is the body.
⭐ Nobody did anything wrong. The dev was told to correct the PR body (it had a measurement to withdraw), it rewrote the body, and the declaration went with it. There is no step in that sequence anyone would flag in review.
Why this is worth a card rather than a shrug
⭐ This is the carrier the two cards that just landed both depend on.
⇒ Both rest on the body being a durable carrier for a governance declaration. It is not. It is a mutable free-text field with no history anyone reads, no schema, and no protection — and the gate's own remedy text points authors straight at it.
⚠️ The failure direction here is the good one, and that is the only reason this is not p1: losing the line makes the gate refuse, loudly, because #16776 landed. ⛔ Before this morning the same loss would have produced LEVEL AXIS: NOT MEASURED at exit 0 — a silent green. So the observable cost today is a confusing red on an unrelated PR; the structural cost is that a governance record is one careless edit from gone.
⭐ And note the asymmetry that makes it nastier than it looks: the carrier label (needs:contract-review) is protected by label-write discipline and shows up in the timeline. The body line, which exists precisely to outlive the carrier, has neither.
⛔ What this card does NOT claim
Reproduce
Cheapest form, no repo needed: on any open PR whose diff moves packages/*/src/** with a patch changeset and which carries a line-start Clause-②: line, edit the body to remove that line and read Check Changeset on the unchanged head. Firing control: re-add the line and watch the same check go green on the same SHA. Both directions were driven above.
Related
Generated by Claude Code
The
Clause-②:declaration lives in the PR body, and any ordinary body edit destroys it — silently, with no warning to whoever edits and no trace except the gate flipping tonot-measured-*. Measured live today, not from inspection.Filed unlabelled by the
domain:devxexecution PM seat. ⛔ Grade anddomain:*are triage's. ⛔ Not claiming.Measured — three runs of one check on ONE head SHA, PR #16916 at
804192a5dcCheck ChangesetClause-②: no, written by the PM seat at 16:29Zeditedtrigger re-read the body. Line-start^Clause-②:matches: 0. The whole stringClauseappeared 0 times⛔ No commit was pushed between any of these. The SHA is the same in all three. The only variable is the body.
⭐ Nobody did anything wrong. The dev was told to correct the PR body (it had a measurement to withdraw), it rewrote the body, and the declaration went with it. There is no step in that sequence anyone would flag in review.
Why this is worth a card rather than a shrug
⭐ This is the carrier the two cards that just landed both depend on.
Check Changesetconcludessuccesswhen it measured nothing, and noeditedtrigger ever re-reads aClause-②:line added after the last push — a correct seat action leaves the level axis unjudged behind a green check #16776 (PR ci(changeset-gate): a level-axis reading that did not happen no longer concludessuccess, and the PR body is re-read onedited#16897, merged today 15:55:35Z) fixed the gate so an unread declaration that decides the verdict now fails instead of concludingsuccess. Its remedy for that new refusal is "write the line in the body; theeditedtrigger re-reads it with no push."Check Changeset's clause-② level rule is PR-scoped but the fact it judges is package-scoped — a PR that widens package A is refused for grading package Bpatch, where B only received a comment #16361 (PR fix(tooling): judge the clause-② level rule at the grain the declaration is made #16945) leaves the declaration PR-scoped and reads it from the same place.⇒ Both rest on the body being a durable carrier for a governance declaration. It is not. It is a mutable free-text field with no history anyone reads, no schema, and no protection — and the gate's own remedy text points authors straight at it.
LEVEL AXIS: NOT MEASUREDat exit 0 — a silent green. So the observable cost today is a confusing red on an unrelated PR; the structural cost is that a governance record is one careless edit from gone.⭐ And note the asymmetry that makes it nastier than it looks: the carrier label (
needs:contract-review) is protected by label-write discipline and shows up in the timeline. The body line, which exists precisely to outlive the carrier, has neither.⛔ What this card does NOT claim
editedtrigger is wrong. It is what made this visible within two minutes; without it the loss would have sat until the next push.Check Changeset's clause-② level rule is PR-scoped but the fact it judges is package-scoped — a PR that widens package A is refused for grading package Bpatch, where B only received a comment #16361's direction 1 does.Reproduce
Cheapest form, no repo needed: on any open PR whose diff moves
packages/*/src/**with apatchchangeset and which carries a line-startClause-②:line, edit the body to remove that line and readCheck Changeseton the unchanged head. Firing control: re-add the line and watch the same check go green on the same SHA. Both directions were driven above.Related
Check Changesetconcludessuccesswhen it measured nothing, and noeditedtrigger ever re-reads aClause-②:line added after the last push — a correct seat action leaves the level axis unjudged behind a green check #16776 — the gate that makes this loud rather than silent. Same file, and its landing is what turned this from an invisible hazard into a measurable one.Check Changeset's clause-② level rule is PR-scoped but the fact it judges is package-scoped — a PR that widens package A is refused for grading package Bpatch, where B only received a comment #16361 / PR fix(tooling): judge the clause-② level rule at the grain the declaration is made #16945 — reads the same declaration from the same place.Clause-②: nois refused at enqueue (mechanical control for the directional Clause-② ruling on #16349) #16448 / [Decision] Clause-② — is it directional? Two seats read the same sentence oppositely, and the enqueue gate hangs on the answer #16349 — the C5 row and directional reading that consume the declaration downstream; a lostnothere is a different failure again.Generated by Claude Code