ponshu-room-lite/docs/architecture/AUTOMATION_SAFETY_PROTOCOL.md

3.3 KiB
Raw Blame History

Automation Safety Protocol: Keeping the "Human" in Loop

  • Date: 2026-01-19
  • Subject: Risk Assessment & Safety Rails for the AI Factory

1. 懸念の核心: "AIは勝手に暴走するか"

ユーザー様が抱く「AIが知らないところで何かをするのではないか」という不安は、非常に健全かつ重要です。 結論から言うと、今回構築するシステム(Dokploy CI/CD)は暴走しません。 しかし、「Phase 2B: AIエージェント」の段階ではリスクが生じます。

🤖 2つの「自動化」の違い

種類 仕組み 今回の構成 (Dokploy) リスク
決定的自動化 (Deterministic) "Aが起きたら必ずBをする" YES (Git Push → Deploy) なし (人間が引き金を引くまで動かない)
自律的自動化 (Autonomous) "AI自身が考えて行動する" NO (将来の構想) あり (予期せぬコード書き換えなど)

今回は 前者の「決定的自動化」 しか導入しません。 つまり、あなたが git push を押さない限り、世界は1ミリも動きません。

2. Safety Rails (安全装置)

それでも「もしも」に備え、以下の3つの安全装置を定義します。

🛡️ Rail 1: "The Human Trigger" (人間以外お断り)

  • ルール: Dokployのデプロイ承認を「Git Push」のみに限定する。
  • 効果: AIが勝手にコードを書き換えても、あなたが確認してPushしない限り、本番環境には反映されません。
  • Gitea連携: GiteaのProtected Branch設定で、MainブランチへのPushを制限可能です。

🛡️ Rail 2: "Visibility" (通知システム)

「知らないところで何かが起きる」を防ぐため、全てのイベントを通知させます。

  • Slack / Discord / LINE Invoke:
    • ビルド開始時 🔔
    • デプロイ成功時
    • デプロイ失敗時
  • Dokploy: Webhook機能でこれを標準サポートしています。

🛡️ Rail 3: "The Kill Switch" (緊急停止ボタン)

万が一、無限ループなどの異常動作が発生した場合の停止手順です。

  1. Level 1 (アプリ停止): Dokploy管理画面から Stop ボタン。
  2. Level 2 (サーバー停止): ConoHa VPSの管理画面から「強制停止 (Power Off)」。
    • これは物理電源を抜くのと同じで、どんなAIもこれには抗えません。

3. 将来のリスク管理 (Phase 2B以降)

将来、本当に「AIが勝手にコードを修正してデプロイする」世界を作る場合は、以下の層を追加します。

  • Sandbox環境 (Staging): AIはいきなり本番(Production)を触らせず、まず誰にも公開されていないテスト環境(Staging)にデプロイさせる。
  • AI監査官: 別のAIにコードをレビューさせる例: "この変更はデータベースを削除しますか?" → Yesならブロック

4. 結論

今回は「工場のベルトコンベア」を作るだけであり、「勝手に動くロボット」を作るわけではありません。 スイッチを握っているのは、常にあなた(人間)です。 安心して「自動化のスイッチ」を入れてください。