Skip to content

hot_reloader: take entries_mutex for watcher-thread directory cache probes - #37276

Open
robobun wants to merge 6 commits into
mainfrom
farm/d9b813cc/hot-reloader-direntry-race
Open

hot_reloader: take entries_mutex for watcher-thread directory cache probes#37276
robobun wants to merge 6 commits into
mainfrom
farm/d9b813cc/hot-reloader-direntry-race

hot_reloader: take entries_mutex for watcher-thread directory cache p…

6adb4d0
Select commit
Loading
Failed to load commit list.
Claude / Claude Code Review completed Aug 9, 2026 in 17m 21s

Code review found 1 potential issue

Found 1 candidates, confirmed 1. See review comments for details.

Details

Severity Count
🔴 Important 0
🟡 Nit 1
🟣 Pre-existing 0
Severity File:Line Issue
🟡 Nit test/cli/hot/hot.test.ts:868-878 stderr not drained concurrently in new race test

Annotations

Check warning on line 878 in test/cli/hot/hot.test.ts

See this annotation in the file changed.

@claude claude / Claude Code Review

stderr not drained concurrently in new race test

stderr isn't drained until after the `while (running)` loop exits, and that loop's only exit is child-process exit — if the child ever writes >64KB to stderr (large panic backtrace, resolver noise) it blocks on the full pipe and never exits, so the test hangs unbounded on debug builds where the timeout is `Infinity`. Kick off `const stderrText = proc.stderr.text();` alongside `stdoutDone` (before `await ready.promise`), then await it in the final `Promise.all` — this matches the harness conventi