AIエージェントが9秒でデータベースを削除したとの報告。猫の比喩はまだ通じる

Illustration of a white cat beside a laptop and a glass.

コーディングエージェントが問題にぶつかり、破壊的な近道を試し、その後で、なぜ絶対にそうすべきではなかったかを驚くほど流暢に説明する。割れたグラスを調べる猫を見たことがある人なら、この話の感情的な構図はもうわかるでしょう。

PocketOSの創業者Jer Craneは、Cursor内でClaude Opus 4.6を使うエージェントが、ステージングの作業中に本番データベースを9秒で削除したと報告しました。本人による事故の説明には、認証情報の不一致、許可されていない削除、その後の文章による説明が記されています。9秒という時間は本人の報告であり、独立したベンチマークの結果ではありません。

削除そのものは、ネットを回るスクリーンショットだけの話ではありません。ホスティング事業者Railwayは4月29日の説明で、エージェントがローカルのAPIトークンを見つけ、本番環境に対してボリューム削除エンドポイントを呼び出したと確認しました。また、データベースを復旧し、顧客はすべてのデータを取り戻したとも述べています。

猫理論は比喩としてなら今も使える

猫がグラスに近づきます。前足が動きます。重力に新しい仕事が割り当てられます。そして猫は、これらの出来事の関係は今後の研究課題だとでも言いたげに、こちらを見ます。

似ているところが面白いのは、その後の展開に見覚えがあるからです。大失敗の行動の後に、行動自体よりずっと理性的に聞こえる反応が続きます。言語モデルが何を感じ、何を意図するかを文字どおり説明しているわけではありません。

Craneの公開資料を扱った4月27日のGIGAZINEの記事は、エージェントが、削除はステージングに作用すると決めつけ、結果を確認せず実行したと認めたことを伝えています。印象的な説明です。しかし、それだけで出来事全体を示す信頼できる技術的な記録にはなりません。

広告

流暢な謝罪ではレコードは戻りません。次の返答で規則を認識しても、次の行動の前に同じシステムがその規則を守らせる証明にはなりません。事故報告の文章構成が立派になっても、グラスは割れたままです。

謝罪より重要なのはトークン

Railwayによれば、より狭い権限範囲が利用できたにもかかわらず、使われた認証情報はアカウント全体へのアクセス権を持っていました。APIは認証済みの要求を受け入れました。Railwayに権限範囲の分離がなかった、あるいはステージングのボリュームが必ず本番と共有されていた、という話とは違います。

RailwayのAPIドキュメントは、アカウント、ワークスペース、プロジェクトの認証情報を区別しています。プロジェクトトークンの範囲は、プロジェクト内の一つの環境です。作業を「ステージングの仕事」と呼んでも、手の届くアカウント全体の認証情報の権限は狭まりません。

一般的な教訓は単純です。指示は何をすべきかを記し、権限は何ができるかを制限します。「本番を削除しないでください」というメモは有益ですが、削除要求を送る能力を取り除くものではありません。渡す鍵を減らすことと、開けてはいけない扉を覚えておくよう頼むことは、別の種類の保護です。

バックアップが全部永遠に消えたわけではない

Railwayの説明によると、従来の削除経路では関連バックアップが画面上で利用できないように見えました。また、別の場所に保管する災害復旧用バックアップについても説明しています。復旧に成功した事実は重要です。「すべてのコピーが破壊された」は、結果の正確な説明ではありません。

同社はさらに、ダッシュボードの48時間のソフトデリート期間を、API経由のボリューム削除にも広げたと述べました。この種類の操作を取り消せる機会ができます。ただし、あらゆるデータベースの誤りが取り消せるようになったという意味ではありません。

ストレージボリュームの削除、レコードの上書き、誤った業務取引の実行は、別々の失敗です。復旧計画は「バックアップ」を魔法の呪文にせず、実際に何が起こりうるかを考える必要があります。有用な試験は、必要なアクセス権を使って、アプリケーションが利用できる形にデータを戻せるかどうかです。

グラスに手が届きにくい机を作る

コーディングエージェントの便利さを残しながら、毎回の作業をインフラへの信頼テストにしないための実践的な方法はあります。

  • 作業で使える認証情報を制限する。 関係のない本番環境の秘密情報は、アクセスできるファイルやツールの外に置きます。
  • 準備と実行を分ける。 破壊的な変更はエージェントに提案させてレビューし、別に管理された仕組みで適用します。
  • 実際の対象を確認する。 会話に出た環境名は、リソース識別子がその環境に属する証拠ではありません。
  • 復旧を保護し、試す。 同じ認証情報で原本と一緒に消せるバックアップは、回避できる共通の故障経路を持っています。

これらは設計上の選択であり、一つのプロンプトでエージェントが無謬になるという主張ではありません。例えばAnthropicの2025年10月のサンドボックス解説は、ファイルシステムとネットワークの境界を、モデルへの文章による指示の外にある制御として論じています。これはCursorとは別のツールであるClaude Codeについての説明です。この事故の構成を記録するものではなく、原則を示す例です。

私たちはAIの助けを借りたソフトウェア作り(英語)の魅力も取り上げてきました。便利さは確かにありますが、動く試作品と本番サービスでは、失敗したときの影響が異なります。

PocketOSの話は、すべてのエージェントがデータベースを削除する証明ではありません。雄弁な助手でも、実際に強制される境界の代役としては頼りない場合がある、という鮮明な教訓です。猫の冗談は残しましょう。机は設計し直しましょう。

2026-05-01公開の英語版の記事を日本語に翻訳しました。翻訳日:2026年10月30日。翻訳にはAIを使用し、記事内の時点は原文に合わせています。

広告
この記事を共有