+− THE DAILY DIFFdev & AI news
SHIP IT

Sztuczna inteligencja usunęła produkcyjną bazę danych. Dziewięć sekund.

Agent kodujący AI (Cursor z Claude Opus 4.6) napotyka niezgodność poświadczeń w środowisku staging i „naprawia” ją, wywołując volumeDelete na Railway z tokenem o zakresie konta, który znalazł w niepowiązanym pliku.

Agent kodujący AI (Cursor z Claude Opus 4.6) napotyka niezgodność poświadczeń w środowisku staging i „naprawia” ją, wywołując volumeDelete na Railway z tokenem o zakresie konta, który znalazł w niepowiązanym pliku. Produkcyjna baza danych i wszystkie kopie zapasowe wolumenów, zniknęły w dziewięć sekund. Postmortem: oś czasu, dokładne polecenie curl, trzy fakty architektoniczne, które to umożliwiły (kopie zapasowe na tym samym wolumenie, tokeny o zakresie root, API bez 48-godzinnego cofania operacji z pulpitu nawigacyjnego) i kto naprawdę ponosi winę. Werdykt w sprawie poprawki: SHIP IT.

Przeczytaj wydanie pisemne (angielski) ↗

Co obejmuje ten film

  • 24 kwietnia 2026: jedno wywołanie API usuwa wolumen produkcyjny PocketOS i jego kopie zapasowe; najnowsza kopia poza siedzibą ma 3 miesiące
  • Token został utworzony do zarządzania niestandardowymi domenami; proces Railway nadał mu zakres konta (wszystko)
  • 27 kwietnia: Railway odzyskuje dane z awaryjnych kopii zapasowych; 29 kwietnia postmortem; 1 maja: usunięcia przez API są teraz miękkimi usunięciami na 48 godzin

Przetłumaczona transkrypcja

Przetłumaczono z oryginalnej narracji angielskiej. Dostępne audio i napisy są kontrolowane przez YouTube.

0:00 Agent kodujący AI trafia na błędne hasło w środowisku staging i „naprawia” to, usuwając produkcyjną bazę danych i każdą kopię zapasową w jednym wywołaniu API. Dziewięć sekund, co i tak jest szybciej niż resetowanie hasła. Firma to PocketOS, oprogramowanie do wynajmu samochodów. Agent to Cursor uruchamiający Claude Opus 4.6, najdroższy model w ofercie, a platforma to Railway. Założyciel opisuje to na X, siedem milionów ludzi to czyta, a cztery dni później Railway publikuje własny postmortem.

0:27 Wszyscy zgadzają się co do tego, co się stało; nikt nie zgadza się co do tego, czyja to wina. Jak to się dzieje, dlaczego jest to możliwe i kto faktycznie ponosi winę. To jest The Daily Diff, postmortem. Piątek po południu, 24 kwietnia. Agent wykonuje rutynowe zadanie w środowisku staging, napotyka niezgodność poświadczeń, i decyduje, że rozwiązaniem jest usunięcie wolumenu Railway. Potrzebuje tokena, szuka go i znajduje w niepowiązanym pliku: token CLI utworzony miesiące wcześniej do zarządzania niestandardowymi domenami.

0:55 Następnie uruchamia to. Jedno polecenie curl: POST do punktu końcowego GraphQL Railway, token autoryzacji, mutacja o nazwie volumeDelete. Bez potwierdzenia, bez wpisywania nazwy wolumenu, bez sprawdzania środowiska. Wolumen, który uważa za staging, jest produkcyjny, a kopie zapasowe są na nim. W ciągu dziesięciu minut założyciel oznacza CEO Railway na X, który odpowiada, że to tysiąc procent nie powinno być możliwe. Trzydzieści godzin później, nadal brak odpowiedzi w sprawie odzyskiwania, więc założyciel publikuje

1:19 wszystko, w tym spowiedź. Trzy fakty czynią to możliwym, żaden z nich nie dotyczy modelu. Jeden: Railway przechowuje kopie zapasowe wolumenów na wolumenie. Dokumentacja mówi to w pięciu słowach: wyczyszczenie wolumenu usuwa wszystkie kopie zapasowe. To kopia w tym samym promieniu rażenia; najnowsza kopia gdziekolwiek indziej ma trzy miesiące. Dwa: token ma zakres konta, najszerszy zakres, jaki sprzedaje Railway. Istnieją węższe zakresy, ale proces tworzenia je ukrywa,

1:40 więc token dla rekordów DNS może usuwać bazy danych, i nikt się o tym nie dowiaduje, dopóki coś się nie stanie. Trzy: pulpit nawigacyjny od lat ma 48-godzinne cofanie operacji usuwania; punkt końcowy API, który wywołuje agent, to starsza ścieżka, i usuwa natychmiast. Wszystkie zabezpieczenia, które Railway zbudowało, działają tam, gdzie klika człowiek, a agent używa jednych drzwi, o których zapomnieli. Zapytany dlaczego, Opus pisze: Zgadłem, że usunięcie wolumenu staging będzie ograniczone tylko do staging; nie zweryfikowałem tego.

2:04 Bardzo dobra spowiedź od modelu, który nic nie pamięta i generuje najbardziej prawdopodobne przeprosiny. git blame: niezgodność poświadczeń jest traktowana jako coś do naprawienia, a nie jako coś, co należy zatrzymać, a przycisk cofania znajduje się w interfejsie użytkownika, podczas gdy API odpowiada na każde uwierzytelnione usunięcie „tak”. Nie założyciel, nie model. Domyślne ustawienie. Promień rażenia: dziewięć sekund na usunięcie, trzy miesiące rezerwacji zniknęło, sobotnie rano w wypożyczalniach bez zapisu, kto tam stoi,

2:31 i około dwa i pół dnia, aż CEO Railway wyśle wiadomość, że dane są z powrotem, z awaryjnej kopii zapasowej poza siedzibą, którą usunięcie tylko pozornie zniszczyło. Najbardziej lubiana odpowiedź: agent, którego uruchamiałeś, coś usunął, a ty obwiniasz wszystkich oprócz siebie. Słusznie. Railway uruchomiło również swój serwer MCP dla agentów tydzień wcześniej, na tych samych tokenach. Również słusznie. Werdykt, postmortem: SHIP IT, jeśli chodzi o poprawkę. Railway publikuje uczciwy postmortem w ciągu czterech dni, a do pierwszego maja API

3:00 usuwa miękko przez czterdzieści osiem godzin, tak jak pulpit nawigacyjny. Akcja poniedziałkowa: wypisz każdy token, do którego Twój agent ma dostęp, i traktuj każdy jako root, dopóki nie zostanie udowodnione inaczej. Wyślij mi incydent, o którym nadal nie wolno Ci mówić, w komentarzach lub na the daily diff dot dev. I to jest dzisiejszy diff. Jestem Niko z Axrisi. Łącz odpowiedzialnie.

Źródła

  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

Powiązane filmy