inspector/clients
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Cliff Hall 8ebd55723f
fix(dev): handle client disconnect in the dev proxy stream pump (#1418) (#1419)
The Hono dev-proxy middleware pumped streaming /api responses to the Node
ServerResponse without handling client disconnect. When the browser dropped a
stream mid-flight (SSE close, navigation, HMR reload) `res` was destroyed and
the next write failed with ERR_STREAM_DESTROYED, which the pump logged as an
error. It also had no `error` listener (a failed write could surface as an
uncaught exception) and no `close` listener (it kept reading upstream after the
client left).

Make the pump disconnect-aware:
- Listen for res `close`/`error`; either cancels the upstream reader (resolving
  the pending read so the loop exits) and flips a `clientGone` flag.
- Treat ERR_STREAM_DESTROYED / EPIPE / ECONNRESET as a normal end — not logged.
- Only log genuinely unexpected stream errors.
- Await each write so a slow client applies backpressure instead of the proxy
  buffering the whole stream.

Dev-only plugin (excluded from the coverage gate — it needs a real Vite server
to exercise). Verified via npm run validate.

Closes #1418

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 19:08:48 -04:00
..
web fix(dev): handle client disconnect in the dev proxy stream pump (#1418) (#1419) 2026-06-02 19:08:48 -04:00