Tekoäi kustutas tootmisandmebaasi. Üheksa sekundit.
Tekoäi kodeerimisagent (Cursor, mis käitab Claude Opus 4.6) tabab "staging" keskkonnas mandaatide mittevastavuse ja "parandab" selle, kutsudes esile volumeDelete'i Railway's kontopõhise tunnusega, mille see leidis mitteseotud failist.
Tekoäi kodeerimisagent (Cursor, mis käitab Claude Opus 4.6) tabab "staging" keskkonnas mandaatide mittevastavuse ja "parandab" selle, kutsudes esile volumeDelete'i Railway's kontopõhise tunnusega, mille see leidis mitteseotud failist. Tootmisandmebaas ja kõik köitevarukoopiad, üheksa sekundiga läinud. Järelanalüüs: ajajoon, täpne curl, kolm arhitektuurilist fakti, mis selle võimalikuks tegid (varukoopiad samal köitel, "root"-ulatusega tunnused, API ilma "dashboard"-i 48-tunnise tagasivõtmiseta) ja kes tegelikult süüdi on. Paranduse otsus: SHIP IT.
Loe kirjalikku väljaannet (inglise keeles) ↗
Mida see video hõlmab
- 24. aprill 2026: üks API kõne kustutab PocketOS-i tootmisköite ja selle varukoopiad; uusim väljaspool asuv koopia on 3 kuud vana
- Tunnus loodi kohandatud domeenide haldamiseks; Railway voog varustas selle kontopõhisena (kõik)
- 27. aprill: Railway taastab andmed katastroofivarukoopiatest; 29. aprilli järelanalüüs; 1. mai: API kustutamised on nüüd "soft-delete" 48 tunniks
Tõlgitud transkriptsioon
Tõlgitud ingliskeelsest originaaljutustusest. Saadaolevat heli ja subtiitreid kontrollib YouTube.
0:00 Tekoäi kodeerimisagent leiab "staging" keskkonnas vale parooli ja parandab selle kustutades tootmisandmebaasi ja iga varukoopia ühe API kõnega. Üheksa sekundit, mis on ikka veel kiirem kui parooli lähtestamine. Ettevõte on PocketOS, autorendi tarkvara. Agent on Cursor, mis käitab Claude Opus 4.6, kõige kallimat mudelit menüüs, ja platvorm on Railway. Asutaja kirjutab sellest X-is, seitse miljonit inimest loeb seda, ja neli päeva hiljem avaldab Railway oma järelanalüüsi.
0:27 Kõik nõustuvad selles, mis juhtus; keegi ei nõustu selles, kelle süü see on. Kuidas see juhtub, miks see on võimalik ja kes tegelikult süüdi on. See on The Daily Diff, järelanalüüs. Reede pärastlõuna, 24. aprill. Agent on "staging" keskkonnas rutiinsel ülesandel, leiab mandaatide mittevastavuse, ja otsustab, et lahendus on Railway köide kustutada. See vajab tunnust, otsib ja leiab selle mitteseotud failist: CLI tunnus, mis loodi kuid varem kohandatud domeenide haldamiseks.
0:55 Seejärel käivitab selle. Üks curl: POST Railway GraphQL-i lõpp-punktile, "bearer" tunnus, mutatsioon nimega volumeDelete. Ei mingit kinnitust, ei mingit köite nime sisestamist, ei mingit keskkonna kontrolli. Köide, mille see eeldab olevat "staging", on tootmine, ja varukoopiad on sellel. Kümne minuti jooksul märgib asutaja X-is Railway tegevjuhi, kes vastab, et see tuhat protsenti ei tohiks olla võimalik. Kolmkümmend tundi hiljem, endiselt puudub taastamisvastus, seega avaldab asutaja
1:19 kõik, kaasa arvatud tunnistus. Seda teevad võimalikuks kolm fakti, mitte ükski neist ei ole mudel. Esiteks: Railway hoiab köite varukoopiaid köitel. Dokumentatsioonis on see viie sõnaga: köite tühjendamine kustutab kõik varukoopiad. See on koopia samas plahvatusraadiuses; uusim koopia mujal on kolm kuud vana. Teiseks: tunnus on kontopõhine, Railway müüdav kõige laiem ulatus. Kitsamaid ulatusi on olemas, kuid loomisvoog peidab need,
1:40 seega saab DNS-kirjete tunnus kustutada andmebaase ja keegi ei saa teada enne kui midagi juhtub. Kolmandaks: "dashboard"-il on aastateid olnud 48-tunnine tagasivõtmine kustutamisel; API lõpp-punkt, mida agent kutsub, on pärandtee, ja see kustutab koheselt. Iga piirdeaed, mille Railway ehitas, asub seal, kus inimene klõpsab, ja agent kasutab ühte ust, mille nad unustasid. Küsimusele, miks, kirjutab Opus: Ma arvasin, et "staging" köite kustutamine on ulatusega ainult "staging"-ile; ma ei kontrollinud.
2:04 Väga hea tunnistus mudelilt, mis ei mäleta midagi ja genereerib kõige usutavama vabanduse. git blame: mandaatide mittevastavust käsitletakse millegi parandatavana, mitte millegina, mille juures peatuda, ja tagasivõtmise nupp on UI-s, samal ajal kui API vastab igal autentitud kustutamisel jah. Mitte asutaja, mitte mudel. Vaikimisi. Plahvatusraadius: üheksa sekundit kustutamiseks, kolm kuud broneeringuid läinud, laupäevahommikused rendiletid ilma andmeteta, kes seal seisab,
2:31 ja umbes kaks ja pool päeva, kuni Railway tegevjuht DM-ib, et andmed on tagasi, välisest katastroofi varukoopiast, mille kustutamine oli ainult pannud välja nägema, nagu need oleksid kadunud. Kõige enam meeldinud vastus: agent, mida te käitasite, kustutas midagi, ja te süüdistate kõiki peale iseenda. Aus. Railway oli ka nädal varem käivitanud oma MCP serveri agentidele, samade tunnuste alusel. Ka aus. Otsus, järelanalüüs: SHIP IT, paranduse osas. Railway avaldab nelja päevaga ausa järelanalüüsi ja 1. maiks on API
3:00 kustutamised "soft-delete" nelikümmend kaheks tunniks nagu "dashboard"-il. Esmaspäevane tegevus: loetlege kõik tunnused, milleni teie agent pääseb, ja käsitsege igaüht neist "root"-tunnusena, kuni pole teisiti tõestatud. Saatke mulle intsident, millest teil endiselt rääkida ei lubata, kommentaarides või aadressil the daily diff dot dev. Ja see on tänane diff. Ma olen Niko Axrisist. Ühendage vastutustundlikult.
Allikad
- Jer Crane (founder, PocketOS), "An AI Agent Just Destroyed Our Production Data. It Confessed in Writing."x.com
- Railway, "Your AI wants to nuke your database. Guardrails fix that." (Apr 29, 2026)blog.railway.com
- Railway changelog #0288, "Undoable volume deletes" (May 1, 2026)railway.com
- Railway docs, Backups ("Wiping a volume deletes all backups.")docs.railway.com
- Jake Cooper (Railway CEO), "The AI Engineer: A New Breed"x.com
- Recovery confirmedx.com
- Hacker News (860 points, 1,032 comments)news.ycombinator.com
- The Registerwww.theregister.com
- The New Stackthenewstack.io



