docs(server): explain why HTTP API PTY handler has no early-frame buffer (#26464)

This commit is contained in:
Kit Langton
2026-05-08 23:58:33 -04:00
committed by GitHub
parent dcb8ed8eb0
commit 96bde05f6e

View File

@@ -153,6 +153,12 @@ export const ptyConnectRoute = HttpRouter.use((router) =>
return HttpServerResponse.empty()
}
// No `pending[]`-style early-frame buffer (the legacy Hono handler had one).
// `request.upgrade` returns a Socket without running the WS handshake; the
// handshake fires inside `socket.runRaw` below, AFTER `pty.connect` resolves
// and the message callback is registered. The client therefore can't fire
// `open` and start sending until the listener is already wired. Don't move
// `runRaw` ahead of `pty.connect` without re-introducing a buffer.
yield* socket
.runRaw((message) => handlePtyInput(handler, message))
.pipe(