Commit 7cb2f9f
ci(lint): run scripts/pm/ci-failure.mjs --self-test in Lint & Repo Gates (#10195)
`scripts/pm/ci-failure.mjs` shipped a `--self-test` that no job ran, unlike
the four sibling PM tools (dispatch-gates, the part-of guard, the single-claim
guard, the half-state sweeper) which all run theirs as unconditional steps in
this same job. It was the odd one out, so it could rot until the next agent
reached for it mid-round and found it broken.
The rot this prevents is the exact defect the tool's own card was about: the
file was found near-complete but never run live, because node 22's `fetch`
ignores HTTPS_PROXY, so every read answered 401 and the tool's own transport
probe reported PREREQUISITE NOT MET (exit 3) — and looked right doing it. A
retrieval tool that has stopped working presents as a tool correctly declining
to work.
One step in the existing `lint:` job, whose `name:` (`Lint & Repo Gates`) is
the required-status-check context and is unchanged — a required context is
matched by check-run name, so a step adds no context. No new job, no new check
name. Unconditional and un-`if:`-ed, like every self-test beside it.
Measured, not assumed: under `strace -f` with full egress available the
self-test makes zero socket() and zero connect() calls (the live walk, traced
identically, makes 3 and 3), and it exits 0 inside an empty network namespace
where the live walk exits 3. Runtime ~0.07-0.17 s.
Claude-Session: https://claude.ai/code/session_01DdCnBGcHeufjrq7drTD3wt
Co-authored-by: Claude <noreply@anthropic.com>1 parent ce300c8 commit 7cb2f9f
1 file changed
Lines changed: 47 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
388 | 388 | | |
389 | 389 | | |
390 | 390 | | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
391 | 438 | | |
392 | 439 | | |
393 | 440 | | |
| |||
0 commit comments