You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(v0.2.5): wait for [server] listening on stdout, not just /health
v0.2.4 log showed a real race condition:
7.92s /health OK ← previous run's zombie node answered
7.95s [remote] cwd-ok
8.15s cleanup=killed-pid-N (zombie killed)
8.15s launching node
8.19s [server] listening (new node bound)
8.30s loadURL → ERR_CONNECTION_RESET
The stale node answered /health before our pidfile cleanup ran. We
thought the server was ready, told Electron to load the URL, and the
SSH channel broke mid-transition (zombie dying, new node binding).
Two-part fix:
1. In remote mode, waitForServer now waits for a stdout marker
"[server] listening" — emitted only by the NEW node after our
cleanup. Then a 400ms grace and the usual /health check (which now
genuinely talks to the new server).
2. loadURL is wrapped in a 4-attempt retry with linear backoff. Any
transient channel hiccup right after the server binds gets recovered
instead of failing the whole bootstrap.
Both fixes are independent — either alone would have been enough for
this log, but having both gives margin for slower remotes.