Repository navigation
Commit b9f8077
docs(skills): state the ablation-on-dist hazard as a resolution property (#9509)
The dev-agent definition and the dogfood skill both scoped the "rebuild
before you believe an ablation" rule to `packages/qa/dogfood`. The
condition is not the suite, it is the resolution path: any test whose
subject resolves through the dependency's `exports` (which point at that
package's built `dist/`, not `src/`) with no vitest alias redirecting the
specifier back to source. That set is already enumerated as
`KNOWN_UNALIASED_TEST_IMPORTS` in `scripts/check-test-source-alias.mjs`,
and dogfood is one instance of it rather than the definition.
Read narrowly, an ablation run in a plain unit suite gets trusted when it
proves nothing. Two measured pairs are carried as the shortest possible
provenance: `plugin-email` to `platform-objects` (375 passes on an ablated
field, 4 red once the dep was rebuilt) and `plugin-auth` to `core`, whose
legs existed to prove a new gate can fail. The second shape is why both
copies now name it: an un-rebuilt ablation there returns "the gate did not
fire", which reads as evidence the gate is broken rather than the harness,
and the expensive outcome is weakening a working gate until it fires.
Both halves of the mechanical rule are now explicit in both files -- the
mutate leg and the restore leg each rebuild and each prove the artifact.
The restore half is the one that gets skipped, and a marker left in
`dist/` keeps mutated code live for every later run in that worktree.
The authority for this framing is the preflight script's own header, which
already carries it; these two files were the lagging copies. The script is
deliberately untouched here.
Claude-Session: https://claude.ai/code/session_01Rn7aaamsR99FXRqLcpL99q
Co-authored-by: Claude <noreply@anthropic.com>1 parent 5909307 commit b9f8077
2 files changed
Lines changed: 31 additions & 17 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
190 | 190 | | |
191 | 191 | | |
192 | 192 | | |
193 | | - | |
194 | | - | |
195 | | - | |
196 | | - | |
197 | | - | |
198 | | - | |
199 | | - | |
200 | | - | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
201 | 208 | | |
202 | 209 | | |
203 | 210 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
63 | 63 | | |
64 | 64 | | |
65 | 65 | | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
72 | | - | |
73 | | - | |
74 | | - | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
75 | 82 | | |
76 | 83 | | |
77 | 84 | | |
| |||
0 commit comments