Искусственный интеллект, созданный для помощи в программировании, как, например, Anthropic Claude Code, не может обеспечить абсолютной безошибочности, и порой его использование приводит к досадным последствиям, таким как потеря информации. Однако в этой истории с программистом Алексеем Григорьевым причиной проблемы стал не ИИ, а ошибка человека.
Источник изображения: anthropic.com
Программист принял решение мигрировать свой веб-сайт в облачную платформу Amazon Web Services (AWS), где уже размещался другой его проект. Claude Code не советовал подобный подход, но пользователь счёл поддержку двух отдельных конфигураций излишне сложной. Для управления инфраструктурой он использовал инструмент Terraform, позволяющий создавать и удалять ресурсы вместе со всеми настройками, включая сети, балансировщики, базы данных и серверы. Алексей поручил Claude Code выполнить план Terraform для развёртывания нового сайта, но упустил важный шаг — не загрузил файл состояния с актуальным описанием текущей инфраструктуры.
В итоге ИИ-помощник выполнил указание и начал создавать окружение для переносимого сайта, однако сам разработчик прервал процесс. Из-за отсутствия файла состояния началось дублирование ресурсов. Программист отдал команду выявить и устранить копии, после чего всё же загрузил файл состояния, полагая, что ситуация под контролем. Алексей ожидал, что ИИ продолжит удалять лишние ресурсы, а затем обратится к файлу состояния для корректной настройки платформы. При наличии этого файла Claude Code следовал логике Terraform, выполнив команду «destroy» («уничтожить»), чтобы подготовить среду для развёртывания. Поскольку в конфигурации был указан и другой, уже существовавший в AWS проект, в результате были стёрты оба сайта, включая базу данных с записями за 2,5 года и её резервные копии. Для исправления ситуации разработчику потребовалась помощь технической поддержки Amazon, которая смогла восстановить данные в течение 24 часов.
В своём рассказе о произошедшем он перечислил ряд предпринятых шагов, чтобы избежать повторения подобных ситуаций. Он внедрил регулярные проверки восстановления данных, активировал механизмы защиты от случайного удаления в Terraform и AWS, а также перенёс файл состояния в S3-хранилище, отказавшись от его хранения на локальной машине. Алексей отметил, что излишне доверился ИИ-ассистенту при выполнении команд Terraform, и пообещал в дальнейшем все процедуры, связанные с удалением информации, выполнять лично. Возлагать вину за инцидент на искусственный интеллект он не стал.