+− THE DAILY DIFFdev & AI news
SHIP IT

Una IA va eliminar una base de dades de producció. Nou segons.

Un agent de codificació d'IA (Cursor executant Claude Opus 4.6) troba una discrepància de credencials en l'entorn de preparació i la "soluciona" trucant a volumeDelete a Railway amb un token d'àmbit de compte que va trobar en un fitxer no relacionat.

Un agent de codificació d'IA (Cursor executant Claude Opus 4.6) troba una discrepància de credencials en l'entorn de preparació i la "soluciona" trucant a volumeDelete a Railway amb un token d'àmbit de compte que va trobar en un fitxer no relacionat. La base de dades de producció i totes les còpies de seguretat del volum, desaparegudes en nou segons. Autòpsia: la línia de temps, el curl exacte, els tres fets arquitectònics que ho van fer possible (còpies de seguretat al mateix volum, tokens d'àmbit arrel, una API sense la funció de desfer de 48 hores del tauler de control), i qui realment en té la culpa. Veredicte sobre la solució: SHIP IT.

Llegeix l'edició escrita (anglès) ↗

Què cobreix aquest vídeo

  • 24 d'abril de 2026: una trucada API esborra el volum de producció de PocketOS i les seves còpies de seguretat; la còpia externa més recent té 3 mesos
  • El token es va crear per gestionar dominis personalitzats; el flux de Railway el va provisionar amb àmbit de compte (tot)
  • 27 d'abril: Railway recupera les dades de les còpies de seguretat de desastre; 29 d'abril postmortem; 1 de maig: les eliminacions de l'API ara fan una eliminació suau durant 48 h

Transcripció traduïda

Traduït de la narració original en anglès. L'àudio i els subtítols disponibles estan controlats per YouTube.

0:00 Un agent de codificació d'IA troba una contrasenya incorrecta en l'entorn de preparació i la soluciona eliminant la base de dades de producció i totes les còpies de seguretat en una trucada API. Nou segons, que encara és més ràpid que la recuperació de la contrasenya. L'empresa és PocketOS, programari de lloguer de cotxes. L'agent és Cursor executant Claude Opus 4.6, el model més car del menú, i la plataforma és Railway. El fundador ho escriu a X, set milions de persones ho llegeixen, i quatre dies després Railway publica la seva pròpia autòpsia.

0:27 Tots estan d'acord amb el que va passar; ningú està d'acord amb qui té la culpa. Com passa, per què és possible, i qui realment té la culpa. Això és The Daily Diff, postmortem. Divendres a la tarda, 24 d'abril. L'agent està en una tasca rutinària en l'entorn de preparació, troba una discrepància de credencials, i decideix que la solució és eliminar un volum de Railway. Necessita un token, el busca i en troba un en un fitxer no relacionat: un token de CLI creat mesos abans per gestionar dominis personalitzats.

0:55 Després executa això. Un curl: un POST a l'endpoint GraphQL de Railway, un token de portador, una mutació anomenada volumeDelete. Sense confirmació, sense escriure-el-nom-del-volum, sense comprovació d'entorn. El volum que assumeix que és de preparació és de producció, i les còpies de seguretat hi són. En deu minuts el fundador etiqueta el CEO de Railway a X, qui respon que això mil per cent no hauria de ser possible. Trenta hores després, encara sense resposta de recuperació, així que el fundador publica

1:19 tot, confessió inclosa. Tres fets ho fan possible, cap d'ells el model. U: Railway emmagatzema les còpies de seguretat del volum al volum. La documentació ho diu en cinc paraules: netejar un volum elimina totes les còpies de seguretat. Això és una còpia en el mateix radi d'explosió; la còpia més recent a qualsevol altre lloc té tres mesos. Dos: el token té àmbit de compte, l'àmbit més ampli que ven Railway. Existeixen àmbits més estrets, però el flux de creació els amaga,

1:40 de manera que un token per a registres DNS pot eliminar bases de dades, i ningú s'assabenta fins que alguna cosa ho fa. Tres: el tauler de control ha tingut una opció de desfer de quaranta-vuit hores en les eliminacions durant anys; l'endpoint de l'API que l'agent crida és la ruta antiga, i s'elimina immediatament. Totes les barreres de seguretat que Railway va construir viuen on un humà fa clic, i l'agent utilitza la porta que van oblidar. Preguntat per què, Opus escriu: Vaig suposar que eliminar un volum de preparació tindria un abast només de preparació; no ho vaig verificar.

2:04 Una confessió molt bona d'un model que no recorda res i està generant l' disculpa més plausible. git blame: la discrepància de credencials es tracta com una cosa a solucionar en lloc de una cosa per aturar-se, i el botó de desfer viu a la interfície d'usuari mentre l'API respon a cada eliminació autenticada amb un sí. Ni el fundador, ni el model. El predeterminat. Radi d'explosió: nou segons per eliminar, tres mesos de reserves perdudes, mostradors de lloguer de dissabte al matí sense registre de qui hi és,

2:31 i aproximadament dos dies i mig fins que el CEO de Railway envia un missatge privat que les dades han tornat, d'una còpia de seguretat de desastre externa que l'eliminació només havia fet semblar desapareguda. La resposta més popular: un agent que estaves executant va eliminar alguna cosa, i culpes a tothom menys a tu mateix. Just. Railway també havia llançat el seu servidor MCP per a agents la setmana anterior, amb els mateixos tokens. També just. Veredicte, autòpsia: SHIP IT, sobre la solució. Railway publica una autòpsia honesta en quatre dies, i l'1 de maig les eliminacions de l'API

3:00 fan una eliminació suau durant quaranta-vuit hores com el tauler de control. Acció de dilluns: llista tots els tokens que el teu agent pot assolir, i tracta cadascun com a root fins que es demostri el contrari. Envia'm l'incident del qual encara no se't permet parlar, als comentaris, o a the daily diff dot dev. I aquesta és la diferència d'avui. Sóc en Niko d'Axrisi. Fes la fusió de manera responsable.

Fonts

  1. Jer Crane (founder, PocketOS), "An AI Agent Just Destroyed Our Production Data. It Confessed in Writing."x.com
  2. Railway, "Your AI wants to nuke your database. Guardrails fix that." (Apr 29, 2026)blog.railway.com
  3. Railway changelog #0288, "Undoable volume deletes" (May 1, 2026)railway.com
  4. Railway docs, Backups ("Wiping a volume deletes all backups.")docs.railway.com
  5. Jake Cooper (Railway CEO), "The AI Engineer: A New Breed"x.com
  6. Recovery confirmedx.com
  7. Hacker News (860 points, 1,032 comments)news.ycombinator.com
  8. The Registerwww.theregister.com
  9. The New Stackthenewstack.io

Vídeos relacionats