El incidente se originó por una suspensión incorrecta y automatizada de la cuenta de producción de Railway en Google Cloud Platform (GCP). Esta acción, que afectó a múltiples cuentas en GCP, deshabilitó instantáneamente la infraestructura crítica de Railway alojada en GCP, incluyendo su API, control plane y bases de datos, así como la infraestructura de cómputo.

La causa raíz principal fue una dependencia crítica del control plane de red de Railway, alojado en GCP. Aunque Railway opera una infraestructura multi-cloud (GCP, AWS, Railway Metal) con una red de malla, el control plane de red en GCP era el único punto de verdad para poblar las tablas de enrutamiento de los proxies de borde. Inicialmente, las cargas de trabajo en AWS y Railway Metal continuaron sirviendo tráfico gracias a las rutas en caché. Sin embargo, una vez que estas cachés expiraron (aproximadamente 15 minutos después de la suspensión inicial), los proxies de borde ya no pudieron resolver rutas a las instancias activas, lo que provocó que el impacto se extendiera a todas las cargas de trabajo, independientemente de su ubicación.

Las salvaguardas existentes, como la infraestructura multi-AZ y las conexiones de red redundantes, no pudieron mitigar completamente el impacto debido a la naturaleza de la falla: una interrupción completa de la cuenta de un proveedor clave. La recuperación fue prolongada porque la restauración del acceso a la cuenta no implicó la restauración automática de los servicios individuales (discos persistentes, instancias de cómputo, red), que requirieron una recuperación manual y secuencial. Además, la recuperación masiva de servicios y la limpieza de cachés provocaron un aumento en las solicitudes a GitHub, lo que resultó en rate-limiting y bloqueos temporales para inicios de sesión y compilaciones, extendiendo aún más la duración del incidente.