feat: add cross-pod pause consumer handling
Merged
HA
2mo ago+312+312+012345678901234567890123456789-18-18-01234567890123456789
Closes: #75
Summary by cubic
Adds cross-pod pause consumer handling so viewers on a different pod than the room owner can pause consumers; previously pauseConsumer only worked when the socket and consumer lived on the same pod. Also fixes missing acks and timeout cleanup in several cross-pod error paths.
New Features
- Forwards
pauseConsumerrequests to the pod that owns the room via Redis whenredisRoom.nodeIddiffers from the local instance. - Adds
pauseConsumerhandling inpodConnection.tsfor incoming cross-pod requests. - Documents the full cross-pod pause flow in
docs/MultiplePodSignaling/pauseConsumer.md.
Bug Fixes
- Sends failure acks when Redis lookup fails,
nodeIdis missing, orpublishCommanddelivers to no receivers. - Moves
clearTimeoutand failure acks into the correct callback paths for consume, resume, and transport-connection handlers.