open-standards/joule-code/joule-code-rs
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science e97e6d52de joule-moq-relay: a closed session's pipe is read until the peer ends it
When a session closed (the peer's WT_CLOSE_SESSION, or this end's), the mux's
reader stopped reading at once; the writer then sent its Close and the socket
went. A browser sends its WebSocket Close right after its CLOSE_SESSION, so
that frame was still unread when the socket was shut, and a socket shut with
unread bytes is reset rather than closed. WebKit reports the reset on the
console ("WebSocket connection to ws://…/moq failed: Socket is not
connected"), which failed WAI Studio's "no console error" check in WebKit on
macOS after its pre-call test (which opens the relay's binding, waits for
SETUP and closes). Counted per step: no error after leaving the room, one after
the pre-call test.

The reader now reads on after the close, discarding, until the peer ends the
pipe or for at most 2 s, so the closing handshake finishes and the socket
closes cleanly.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-29 16:38:31 -04:00
..
crates joule-moq-relay: a closed session's pipe is read until the peer ends it 2026-10-29 16:38:31 -04:00
vendor/wtransport vendored wtransport: the close_session doc says when the session's result is set 2026-10-20 08:32:05 -04:00
Cargo.lock Merge origin/main (0855f00d1): #492, zstd 0.14.3 and the avx2 leg on the framework runner 2026-10-26 12:57:45 -04:00
Cargo.toml joule-contrib: SRT and RIST contribution over UDP with retransmission 2026-10-25 22:31:09 -04:00