"If the right speaker isn't there, say so. Never quietly play private audio on whatever speaker happens to be."
Output Has a Named Destination
Bellows plays to a specific output — a named audio interface, opened as a 48 kHz stereo stream with a small gain trim. That specificity is deliberate: the sound is going to a particular device in a particular room. So the interesting question isn't the happy path, it's what happens when that device can't be found at playback time — unplugged, renamed, asleep.
Rerouting Is Not Graceful Degradation
The instinct baked into a lot of audio code is to fall back to the system default output so something plays. For a notification chime, fine. For a voice engine speaking private words, that fallback is a leak: the sentence meant for a specific speaker now plays wherever the OS default points — maybe a shared room, maybe a screen share, maybe a Bluetooth headset that reconnected in someone else's pocket. Nothing warned anyone. Bellows refuses this. Device resolution fails loud instead of silently moving private audio elsewhere.
The Same Instinct as a Missing Voice
You've seen this shape already, in Track 3: a missing voice binding fails loud rather than substituting a convenient wrong voice. A missing device is the same principle one layer down. In both, the "helpful" substitution produces a confident success that betrays the request — wrong voice, or right voice in the wrong room. The safe answer to a missing precondition, whether it's a binding or a speaker, is an explicit error, not a guess.