observeLocalMicSample$ switchMapped on every allConnections$ emission, which re-emits far more often than the set of rooms changes. Each one stopped the clone, closed the AudioContext and emitted null, and the null reset the muted-speech gate, so the "You're muted" nudge could never stay true long enough to fire. Map to the room list and only restart when it actually changes. Fixes #45 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5