iOS Safari does not hate your app. It hates idle audio, background tabs, and anything that looks like it's trying to be a native radio without paying the App Store toll. We spent an unreasonable number of evenings discovering that "the channel went silent" almost never meant the channel died — it meant Apple's platform decided playback had overstayed its welcome.

The failure mode is subtle. Everything looks connected. The roster still updates. But playback stops because audio got suspended while the user switched to Messages, locked the phone, or simply stared at a different tab long enough for Safari to get ideas. From the operator's perspective the channel is dead. From our perspective the channel is very much alive — just not reaching their ears.

Parked listening is our answer to "I want the radio open while I do other things." It's not a hacky autoplay loop so much as a recovery contract: detect silence, surface it honestly, and give the operator a one-tap path back to live audio without making them rejoin the channel from scratch. We stopped pretending background tabs are first-class citizens on iOS. They're tolerated guests — and guests need a clear way to ring the doorbell again.

Headset and lock-screen behavior adds another layer of comedy. Sometimes the OS routes audio like a pro. Sometimes it routes it to nowhere and waits for you to blame the devs on Discord. We lean on user-visible state — parked, live, recovering — instead of silent auto-healing that fails invisibly. Radio operators trust meters and indicators. Web apps should steal that instinct.

Android has its own gremlins, but iOS is where platform policy meets product promise most aggressively. We're still iterating on parked-listen recovery when networks flap. The north star hasn't moved: a channel should feel like a channel, not a fragile web toy that dies the moment you check your email.