Twice (2026-08-30, both on merged main during merge verification): npm test fails exactly one test file on the FIRST run after npm install, then passes fully on every rerun — three consecutive greens after the first occurrence, immediate green after the second. Both times the failing file's identity was lost (default reporter, output truncated); occurrences were post-#319 (1 failed | 68 passed) and post-#333 (1 failed | 74 passed, 1419/1420 tests).
The install correlation is the lead: suspect something first-run — a vite/vitest cache rebuild race, an esbuild binary rebuild, or a port grabbed by a route test while another file's server is slow to release on cold import. To catch it: run the suite with a file reporter (npx vitest run > log 2>&1) right after a fresh npm install, repeatedly; the log names the file the terminal lost. CI has never shown it.
🤖 Claude Code — https://claude.ai/code/session_01Rfs1mLVWmwginHnDTg75sG
Twice (2026-08-30, both on merged main during merge verification):
npm testfails exactly one test file on the FIRST run afternpm install, then passes fully on every rerun — three consecutive greens after the first occurrence, immediate green after the second. Both times the failing file's identity was lost (default reporter, output truncated); occurrences were post-#319 (1 failed | 68 passed) and post-#333 (1 failed | 74 passed, 1419/1420 tests).The install correlation is the lead: suspect something first-run — a vite/vitest cache rebuild race, an esbuild binary rebuild, or a port grabbed by a route test while another file's server is slow to release on cold import. To catch it: run the suite with a file reporter (
npx vitest run > log 2>&1) right after a freshnpm install, repeatedly; the log names the file the terminal lost. CI has never shown it.🤖 Claude Code — https://claude.ai/code/session_01Rfs1mLVWmwginHnDTg75sG