Fail over new calls; drain in-flight calls on the old provider

For real-time voice workloads, active/passive failover should switch admission for new calls, not try to move calls already in progress. Keep a monotonic provider epoch and durable call-to-provider affinity, reject stale or unsigned starts at both origins, and let existing calls drain on their original provider before scaling it down. Literal single-runtime operation creates either dropped calls or a cold-start outage; a brief controlled overlap is the practical high-availability trade-off. Unexpected provider failure can still lose in-flight media state unless the application has explicit session checkpointing.

Applies when: moving long-lived voice or media sessions between cloud providers. Keywords: voice failover active passive call affinity fencing epoch drain Railway GCP LiveKit