Home

mweinbach / agent-coworker

publicmweinbach/agent-coworker
Overview Code History Branches Pull requestsIssuesInsights
main
HomeOverview Code PRsIssues

fix: prevent silent desktop:web hangs and false-success exits

6 months ago

102502f
Authored
mweinbach4/19/2026, 3:29:29 AM
The web dev launcher stopped reading the server child stdout as soon as it
saw the readiness event, which left the pipe undrained during longer
sessions. It also exited 0 from shared cleanup even when the server or
Vite crashed, which hid real failures from wrappers and CI.

This keeps a background stdout monitor attached after readiness, makes the
launcher exit with the failing child code, and adds focused coverage for the
readiness and exit-code helpers. It also records the review habit of
revalidating unresolved PR comments against current HEAD before patching.

Constraint: desktop:web still needs the spawned server's JSON readiness line to discover the live URL
Rejected: switch server stdout to inherit | would drop the structured readiness handshake used by the launcher
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Keep draining the server stdout for the full child lifetime unless readiness moves to a different signal path
Tested: bun test test/start_web_dev.test.ts; bun run typecheck; bun test
Not-tested: manual bun run desktop:web smoke in a live browser session

Co-authored-by: Codex <noreply@openai.com>

Parent715ad3a

4 files changed
  • scripts/start_web_dev.ts+178−116
  • tasks/lessons.md+1−0
  • tasks/todo.md+7−0
  • test/start_web_dev.test.ts+50−0