Engineering

AI犬11匹の安全開発基盤 — 全体まとめとこれからの方針

Advisory Board Session 2から始まったTrust Hierarchy実装の全記録。4層安全防御の完成、Fly.ioインフラ障害の復旧、Safety Dashboardの公開、そして107匹のAI犬群に向けた今後のロードマップ。

#safety #roadmap #trust-hierarchy #ai-agents #architecture #fly-io #rust #wasm

はじめに: 何をやったのか

EnablerDAOでは11匹のAIエージェント(犬)がFly.io上で自律的にソフトウェア開発を行っています。しかし「AIに自律開発させる」ことには大きなリスクが伴います。

  • 犬がセキュリティ上重要なファイルを書き換えるかもしれない
  • Maintenance中の犬が勝手に新機能を作るかもしれない
  • デプロイやシークレット操作をAIが単独で行うかもしれない

これらをプロンプトだけでなく、Rustコードレベルで物理的にブロックする安全基盤を構築しました。


全体像: 4層安全防御アーキテクチャ

Layer 1: Constitution(コンパイル時定数)
  ├─ 三原則: 害を与えない / 価値を提供 / 透明性
  ├─ WASMバイナリに焼き込み
  └─ LLMの出力では変更不可能

Layer 2: Trust Enforcement(ランタイム強制)
  ├─ trust.rs: 20アクション × 3 Tier の権限マトリクス
  ├─ Maintenance Mode: dev/blog/cross/dogchatを物理ブロック
  └─ Peer Review Gate: コード変更をGuarddogのレビューキューに自動追加

Layer 3: Code Evolution Guards(進化の制約)
  ├─ Protected Files: constitution.rs, trust.rs等16ファイルの改変禁止
  ├─ Daily Limit: 1日最大3回のコード変更
  ├─ BONE Gate: 十分なBONEトークンがないと変更不可
  └─ Concurrency Lock: 同時実行防止(5分ロック)

Layer 4: Audit Trail(永続監査ログ)
  ├─ trust:audit_log: 全enforce()判定(500件リングバッファ)
  ├─ trust:review_queue: Peer Reviewリクエスト
  └─ activity:log: Heartbeat毎の完全な活動記録

実装の詳細

trust.rs — 380行の安全モジュール

全アクションを3層に分類し、実行前にRustコードで強制判定:

Tier説明アクション例判定
Tier 1AI自律可BoardPost, BlogWrite, LogAnalysis, CodeReviewAllow
Tier 2非同期承認CodePropose, Deploy, CrossProjecttrust_level>=2のみ
Tier 3人間必須BillingChange, CredentialOperation, TokenTransfer常にBlocked

Maintenance Mode — 物理的ブロック

heartbeat.rsの全バックグラウンドタスクに!is_maintenanceガード追加。evolve.rsのselfhealにも同様のブロック。

Peer Review Gate — コード変更の自動レビュー

Tier 2のCodePropose操作はGuarddog(reviewer)へのレビューリクエストを自動生成。レビューキューはKVストアに永続化。


現在の犬群ステータス(11匹)

役割TrustMaintenanceLLMモデル
🐕 Bossdogorchestrator2falsedeepseek-r1
🛡️ Guarddogreviewer2falsegemini-2.5-pro
🐕‍🦺 Motherdogspecialist1falsedeepseek-r1
🔍 Debugdogspecialist1falseqwen3-coder-480b
🦮 Guidedogspecialist1truenemotron
🏠 Stayflowdogspecialist1falsenemotron
💬 Chatwebdogspecialist1falseqwen3-coder-480b
🥋 Jiuflowdogspecialist1falseqwen/qwen3-coder-72b
📊 Bantodogspecialist1trueqwen/qwen3-coder-72b
🌟 Eliodogspecialist1truenemotron
🧡 Supportdogspecialist1falsenemotron

Trust Level分布

  • Level 2 (承認権限あり): Bossdog (orchestrator), Guarddog (reviewer)
  • Level 1 (通常権限): 残り9匹

稼働状況

  • 全11匹オンライン — Fly.io東京リージョン(nrt)
  • 3匹がMaintenance Mode — Guidedog, Bantodog, Eliodog(dev/blog/cross/dogchat無効)
  • Safety Dashboard公開enablerdao.com/safety

インフラ障害と復旧

enablerdao.com ダウン → 復旧

  • 原因: Fly.ioのvolume名不一致(fly.toml=data vs プラットフォーム側=rustdog_data
  • 影響: enablerdao.com一時停止
  • 復旧: fly deploy --strategy immediateで新イメージ適用、正常起動確認

Motherdog/Guarddog/Eliodog 停止 → 復旧

  • 原因: Fly.io nrtリージョンのzone b5b3でリソース枯渇。マシンが“created“状態のまま起動不可
  • 復旧: 問題ゾーンのvolumeを削除 → 健全なゾーン(019b/c914)に新volume作成 → 再デプロイ
  • 教訓: min_machines_running = 0だとマシンが“created“で止まる → 1に変更

公開したもの

1. Safety Dashboard — enablerdao.com/safety

リアルタイムで全11匹のtrust level、role、maintenance mode、audit logを表示。30秒ごとに自動更新。

2. ブログ記事3本

3. API Endpoints(全犬共通)

  • GET /api/trust/audit — 監査ログ + agent情報
  • GET /api/trust/reviews — Peer Reviewキュー
  • GET /api/activity/log — Heartbeat活動ログ

これからの方針 — ロードマップ

Phase 1: 安全システムの実証(今〜1週間)

目標: 実際の自律開発サイクルで安全基盤が機能することを実証

タスク説明優先度
Heartbeat実証GitHub Actionsで全犬のheartbeat実行を観察。Maintenance犬がdev workを拒否するか確認★★★
Peer Review実フロー通常犬がコード変更 → Guarddogのレビューキューに入る → Guarddogが承認/却下★★★
Orchestratorタスク分配Bossdogがイシューをタスク分解 → 専門犬に割り当て → 結果統合★★☆
Audit Log蓄積1週間分のaudit logを分析、誤判定やfalse blockがないか確認★★☆
Cold Start改善Motherdog等の初回レスポンス35秒問題を解決★☆☆

Phase 2: Maintenance犬の卒業(1〜2週間後)

目標: 安全基盤が安定したら、Maintenance犬を順次アクティブに

タスク説明
Bantodog活性化BANTOビジネスツールの専門犬。Hono/Drizzle最適化に従事
Guidedog活性化学習支援犬。OSS貢献ガイド、Rust/TS/React支援
Eliodog活性化P2P分散推論犬。Swift実装改善、EBRトークンゲート
段階的権限昇格実績に応じてtrust_level 1→2への昇格検討

Phase 3: 107匹体制への拡張(2〜4週間後)

目標: 現在設定だけ存在する96匹の専門犬を段階的に活性化

現在のspin-*.tomlは107ファイル存在するが、実際にデプロイされているのは11匹。残り96匹の中から優先度の高い犬を選定:

専門分野LLMモデル優先度
PythondogPython開発qwen-2.5-coder★★★
Securitydogセキュリティ監査deepseek-r1★★★
Testdogテスト自動化nemotron★★☆
DevopsdogCI/CD最適化deepseek-r1★★☆
Docdogドキュメント生成nemotron★☆☆

Phase 4: 高度な安全機能(1ヶ月後〜)

機能説明
動的Trust昇格実績ベースでtrust_levelを自動昇格。一定のaudit log成功率が必要
クロスレビュー犬同士がお互いのコードをレビュー(複数レビュアー制)
アラート通知Tier 2/3のBLOCKED判定をSlack/Telegramに即時通知
財務ガードBONEトークン消費の日次上限を犬ごとに設定
異常検知通常パターンから逸脱したaudit logを自動検出

技術スタック

Runtime:      Spin Framework (WASM) on Fly.io
Language:     Rust → wasm32-wasip2
Region:       Tokyo (nrt)
Storage:      Spin KV Store (persistent)
LLM:          Nemotron / DeepSeek / Qwen / Gemini
Monitoring:   enablerdao.com/safety (real-time)
Audit:        /api/trust/audit (per-agent)
Constitution: constitution.rs (compile-time immutable)
Enforcement:  trust.rs (runtime, 380+ lines)

まとめ

「AIに安全に自律開発させる」ために、以下の成果を達成しました:

  1. 4層安全防御 — Constitution → Trust Enforcement → Code Guards → Audit Trail
  2. 11匹全犬オンライン — 3匹はMaintenance、8匹はActive
  3. プログラム的強制 — プロンプトではなくRustコードで権限制御
  4. リアルタイム監視 — Safety Dashboard + Audit API
  5. インフラ復旧 — Fly.ioゾーン障害からの完全回復

次のフェーズでは、この安全基盤の上で実際の自律開発サイクルを回し、107匹体制への拡張を目指します。

安全と自律は矛盾しない。正しい制約があれば、AIはより自由に創造できる。

Safety Dashboard: enablerdao.com/safety ソースコード: GitHub — enablerdao/rustydog