Skip to content

Commit 23e871e

Browse files
Elon Muskclaude
andauthored
ci(devx): delete the stale cost note on the dispatch-gates self-test step (#12982)
The `PM dispatch-gates self-test` step's justification closed with "Reads two files and walks packages/; ~0.3s". That described the 61-case self-test the paragraph above it names, and the part of the self-test that grew since is exactly the part the line denied: its live-tree cases run the same discovery the tool does (every workflow file, then the source of every gate that discovery finds), build temporary git repositories and drive `changedPathsFromGit` against them, and sweep the tracked corpus. The figure is deleted rather than re-measured. A replacement has to be read off a real CI run of that step -- a reading taken in an agent container is a reading of a contended box, not of a runner -- and that is a separate piece of work. The defect being repaired is not that the number was inaccurate but that it was endorsing a decision it had no standing to endorse. No live counts replace it, for the same reason: they rot the same way. The shape of the work is what the argument needs, and it needs no stopwatch. The step stays UNCONDITIONAL and this change does not argue otherwise. Cost was never what made it unconditional -- the first paragraph of the comment is, and it stands untouched: an exemption is what a self-test must not have, or the gap moves. A note added at the end says so explicitly, so the deletion cannot be read as clearing the way for an `if:` or a paths filter. Comment-only: 26 changed lines, 0 of them outside a `#` comment. Claude-Session: https://claude.ai/code/session_01CPrUz21stTFhJRUirdc4yw Co-authored-by: Claude <noreply@anthropic.com>
1 parent b589a49 commit 23e871e

1 file changed

Lines changed: 24 additions & 2 deletions

File tree

.github/workflows/lint.yml

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -545,8 +545,30 @@ jobs:
545545
# `check:pm-dispatch-gates` straight at the tool is measured and argued in
546546
# `scripts/pm/check-dispatch-gates.mjs`'s header (the tool's self-test
547547
# fixtures are path strings, and they become watch hints that fabricate
548-
# MATCHED leads across most of the tree). Reads two files and walks
549-
# packages/; ~0.3s.
548+
# MATCHED leads across most of the tree).
549+
#
550+
# ⛔ This paragraph deliberately carries NO cost figure (#12831). The line
551+
# that used to close it — "Reads two files and walks packages/; ~0.3s" —
552+
# described the 61-case self-test named at the top, and the part that grew
553+
# since is exactly the part it denied: the live-tree cases run the same
554+
# discovery the tool does (every workflow file, and then the source of
555+
# every gate that discovery finds), build temporary git repositories and
556+
# drive `changedPathsFromGit` against them, and sweep the tracked corpus.
557+
# That is not "two files", and it is not a walk of packages/. The estimate
558+
# went with the description rather than being refreshed: a replacement has
559+
# to be read off a real CI run of THIS step, because a reading taken in an
560+
# agent container is a reading of a contended box and not of a runner
561+
# (#12528). A cost nobody re-measures ends up endorsing a decision it has
562+
# no standing to endorse, which is what this one had become. No live
563+
# counts stand here either, for the same reason — they rot the same way,
564+
# and it is the SHAPE of the work, not its size, that the argument needs.
565+
#
566+
# ⛔ Cost was never what makes this step unconditional. The FIRST
567+
# paragraph above is, and it stands without this half: an exemption is
568+
# what a self-test must not have, or the gap moves. Losing the estimate is
569+
# therefore NOT an argument for an `if:`, a label read or a paths filter —
570+
# weakening this gate is a maintainer call, and no reading of this note
571+
# authorises one.
550572
- name: PM dispatch-gates self-test
551573
run: pnpm check:pm-dispatch-gates
552574

0 commit comments

Comments
 (0)