GitHub、AIエージェント検証の新手法を提案

従来テストの限界

決定論的前提の破綻
偽陰性による不要なCI停止
環境ノイズへの脆弱性

支配木による構造検証

実行トレースのグラフ化
必須状態と任意状態の自動分離
少数の成功例から正解モデル構築

評価結果と実用性

自己評価比で精度100%達成
Actions連携で誤検知を大幅削減
詳細を読む

GitHubは2026年5月6日、AIエージェントの非決定的な振る舞いをCI環境で検証するための構造的バリデーションフレームワークを公式ブログで提案しました。Copilot Coding Agentのようなエージェントは実行パスが毎回異なるため、従来のアサーションベースや記録再生型のテストでは「タスクは成功したのにテストが失敗する」偽陰性が頻発するという課題があります。

提案手法の核心は、コンパイラ理論の支配木解析(Dominator Analysis)エージェントの実行トレースに適用する点です。2〜10回の成功トレースをプレフィックスツリーオートマトン(PTA)としてグラフ化し、視覚的メトリクスとLLMによる3層の状態等価判定で統合します。そのうえで支配関係を算出し、「検索ダイアログの表示」のような必須状態と「ローディング画面」のような任意状態を自動的に分離します。

VS Codeの拡張機能テストスイートを用いた評価では、エージェント自身の自己評価(CUA)が精度82.2%・再現率60.0%にとどまったのに対し、支配木手法は精度・再現率ともに100%を達成しました。特に「バグではない」シナリオの識別でCUAのF1スコアが0%だったのに対し、構造的検証は52.2%を記録しています。エージェントは自身の成否を正しく判定できないという知見が示されました。

実用面では、GitHub Actionsパイプラインでの偽陰性削減、安定版トレースからの回帰テスト自動生成、エージェント評価の外部検証といった統合ポイントが示されています。手動仕様の記述も大規模な学習データも不要で、失敗時には「どの必須状態が欠落したか」を明示する説明可能性を備えています。

一方で現時点の制約も明記されています。成功トレースが前提であり失敗ログからは学習できないこと、状態等価判定にLLM APIへの依存があること、ローディング画面の滞留時間のような時間的制約は未対応であることです。今後は時間制約の導入、階層的抽象化、オンライン学習によるモデル逐次改善が計画されています。