NAME
Unblock::HTTP::_WebSocketH2Body - Deferred multiplexed HTTP2/HTTP3 WebSocket body transport
DESCRIPTION
Internal stream-specific bridge reused by HTTP2 and HTTP3. Incoming DATA is passed to the WebSocket through Transaction on_data. Outgoing complete WebSocket frame buffers are queued and written to the same HTTP Transaction on a framework-deferred turn. on_drain wakes a blocked producer. unblock_finish sends END_STREAM after queued frames. WebSocket errors cancel only their own transaction, not the entire multiplexed connection.
The framework defer callback must schedule a later loop turn, never invoke the closure synchronously from a protocol callback.