SIGN IN SIGN UP

[Flight] Use more robust web socket implementation in fixture (#34338)

The `WebSocketStream` implementation seems to be a bit unreliable. We've
seen `Cannot close a ERRORED writable stream` errors when expanding the
logged deep object, for example. And when reducing the fixture to a
minimal app, we even get `Connection closed` errors, because the web
socket connection is closed before all debug chunks are sent.

We can improve the reliability of the web socket connection by using a
normal `WebSocket` instance on the client, along with manually creating
a `WritableStream` and a `ReadableStream` for processing the messages.

As an additional benefit, the debug channel now also works in Firefox
and Safari.

On the server, we're simplifying the integration with the Express server
a bit by utilizing the `server` property for `WebSocket.Server`, instead
of the `noServer` property with the manual upgrade handling.
H
Hendrik Liebau committed
3fe51c9e147fb5215011cf3fd9544c5a776abf41
Parent: 4082b0e
Committed by GitHub <noreply@github.com> on 8/29/2025, 10:04:27 AM