fix(ci): prune six phantom paths from the shard-timing snapshot (phantom weight skews shard balance and watchdog budgets) (#3043)

Third of the seven `scripts/__tests__` failures I diagnosed on #3035.
This one is the mirror image of the release-check manifest: there the
assertion was stale; **here the assertion was right the whole time and
the data rotted.**

## Six phantom paths

The committed shard-timing snapshot weighted six test files that no
longer exist. Every one traces to a deliberate deletion:

| deleted in | files |
|---|---|
| #2461 — meta-task auto-archive removal | `meta-chain-auto-close`,
`meta-archive-guard-composition`, `self-healing-meta-archive-guards` |
| #2467 — workflow-owned lifecycle foundation | `workflow-parity` |
| #2477 — dependency-blocked-todo removal |
`dependency-blocked-todo-report`, `dependency-blocked-todo-reporter` |

The features went; their durations stayed.

## Why this is more than a red test

The shard planner distributes work **by these durations**. Phantom
weight is handed to a shard that has no such file to run: that shard
finishes early while its siblings carry the real load. The watchdog
budget is derived from the same numbers — which is the shape behind Full
Suite runs being SIGKILLed at budgets that looked like hangs and were
actually undercounted.

## What I changed, and what I did not

Data hygiene only: an entry is removed **if and only if its path does
not exist**. No duration was edited, and `capturedAt` is untouched and
still inside the staleness budget — so this is not a re-measurement
smuggled in as a cleanup, and the freshness assertion keeps whatever
teeth it had.

I did **not** regenerate the snapshot. That needs a real full-suite
measurement run, it would rewrite every number, and the drift here is
six dead paths, not wrong timings.

## Positive control

Adding a single phantom path back fails the guard (11 pass / 1 fail),
naming the file. So it still catches the next deletion that forgets its
timings — which, on this evidence, is the normal way this file rots.

## Verification

`node --test scripts/__tests__/ci-test-shard-timings.test.mjs` **12
passed** · `pnpm test:gate` 161 + 13 + 487 + 71 · lint — green. Diff is
6 deleted lines.

Remaining from the seven: the release-check manifest (measured on #3035
— 10 of 16 seams dead, needs sizing as a real unit), `verify-fast` and
`engine-vitest-gate-policy` (list drift), `plugin-authoring-docs` (a TOC
anchor for a heading containing `&`), `release-prompt-gate` (dry-run
exit ordering).
This commit is contained in:
gsxdsm
2026-07-31 02:11:43 -07:00
committed by GitHub
parent b01a2026a0
commit de8a18b7d0

Diff Content Not Available