T44: test paths removed by guards; the checklist compares /tmp around a gate run

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-26 01:29:46 -07:00
co-authored by Claude Opus 5.5
parent a15c428ea6
commit 2b052b24d3
2 changed files with 3 additions and 0 deletions
+1
View File
@@ -81,6 +81,7 @@ How it is used:
| T41 | Before hand-over, walk each given test by hand against the task's own rules. A replay of the reference proves the tests can pass; it cannot show that a test contradicts the task, because the reference was written to pass the test. | Not seen here yet; from the combined Ornith guidance (`~/projects/ornith/GUIDANCE.md` §5): crossbar's given tests pinned event positions and a tie-break no implementation following the task could meet. Listed in `docs/plans/CHECKLIST.md`. |
| T42 | Before hand-over, grep every earlier given file and fixture for anything the task changes (strings, sentences, JSON shapes, counts). | T19 is one case of it (M3a `strict.rs`); crossbar had five such breaks (Ornith guidance §5). M5a task 22 handled it by keeping `edit.rs-task06` and `serve.rs-task10`. |
| T43 | Run the gate's own checks on the given files themselves (`cargo fmt --check`, the line limit, clippy on test targets) before hand-over. A given file that fails the gate stalls the run, and the implementer may not edit it. | M4a task 16: a given test copied into the plan before `cargo fmt` came back reformatted (T29); crossbar stalled on given files that failed its gate (Ornith guidance §5). |
| T44 | Every path a given test creates (directory, socket, file) is removed by a guard that deletes it on drop, never by a line at the end of the test, which a failing test skips. A struct that holds a test's home declares it last, since fields drop in order, and a guard for a running server waits (with a limit) for it to stop before the home goes. Check before hand-over: run the gate and compare `/tmp` before and after. | 2026-09-26: about 10,000 leftovers in titan's `/tmp` from `loopd`, `bxctl`, `inferproxy`, `brokerd` and `toolkit` tests that never removed their paths, plus two `gatewayd` races (a `Running` that only signalled stop, and a home declared first). Fixed in `a15c428`; the gate now leaves nothing. |
## What worked and should be kept
+2
View File
@@ -36,6 +36,8 @@ log.
waiting. Stress any test that ever flaked under load.
- [ ] No file the implementer reads holds the model's chat-template tags whole (T33): grep the
plan, the given files and the skeletons for them.
- [ ] Every path a given test creates is removed by a guard, and a test's home outlives what
writes into it (T44): run the gate and compare `/tmp` before and after; nothing new.
## The task text