Why Agentic-PRs Get Rejected: A Comparative Study of Coding Agents
本論文は、5つのコーディングエージェントと人間によるベースラインにわたる654件の却下されたプルリクエストを分析することで、固有かつエージェント特有の却下パターンを特定し、ケースの67.9%においてレビューアのフィードバックが欠落しているという課題に対処するためのヒューリスティックを提案するものである。
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
ソフトウェア開発を、活気あふれる巨大な建設現場として想像してみてください。通常、作業員(人間の開発者)が新しい部屋を完成させたり、水漏れを修理したりすると、彼らはサイトマネージャーに「変更リクエスト(プルリクエスト)」を提出します。マネージャーはその内容を確認し、「素晴らしい、これを進めよう」と言うか、「いや、これはうまくいかない」と判断します。
最近、新しいタイプの作業員が登場しました:AIエージェントです。これらは、人間に手取り足取り教えられなくても、自ら計画を立て、構築し、自らの変更リクエストを提出できるロボットです。この論文は、AIワーカーが作業を提出した際に、人間と比較してどのようなことが起きているかを調査しています。
以下は、簡単な比喩を用いた研究の構成です。
1. 大きな問題:「サイレント・リジェクション(無言の拒絶)」
研究者たちは、5種類の異なるAIロボット(Devin、Claude Code、GitHub Copilotなど)による654件の却下された変更リクエストを調査し、それらを人間が行ったリクエストと比較しました。
最も衝撃的な発見は、3件に2件の割合で却下理由が無言であったことです。
- 比喩: あなたがコンテストに絵を提出したところ、それがゴミ箱に捨てられたと想像してください。あなたが「なぜですか?」と尋せても、審査員はただ肩をすくめて立ち去るだけです。
- 現実: 却下されたAIリクエストの67.9%には、レビューアからの説明が一切ありませんでした。リクエストはただ閉じられただけでした。これでは、なぜAIが失敗したのかを研究者が知ることは非常に困難です。なぜなら、「審査員」が理由を書き残さなかったからです。
2. 「AI特有」のミス
研究者が却下された理由を実際に特定できた場合、AIロボットは人間がほとんど犯さないミスを犯していることが分かりました。彼らは7つの特定の却下理由を見つけ出しましたが、これらはAIにのみ発生するものです。
- 「大きすぎる」箱: 人間も大きなプロジェクトを提出することがありますが、AIロボットは一度にあまりにも膨大で圧倒されるような変更を提出する傾向があります。それは、AIがたった一日で超高層ビル全体を建てようとしているようなものです。マネージャーたちは、適切にレビューするには大きすぎるという理由で、これらを却下しました。
- 「不信」のバッジ: 一部のマネージャーは、コードがロボットによって作られたというだけで、単にそのコードを信頼しませんでした。コードが信頼できない、あるいは「ハルシネーション(幻覚/作り物)」を起こしているのではないかと恐れ、AI生成であるという理由だけで却下したのです。
- 「スロップ(Slop)」ラベル: あるケースでは、プロジェクトオーナーがAIのリクエストを却下し、それを「SLOP(低品質で大量生産されたコンテンツを指すスラング)」とラベル付けしました。これは、実質的に「これは機械が生成したゴミだ」と言っているのです。
- 「実験」の失敗: いくつかのAIリクエストは、誰かが実際にそのコードを必要としているからではなく、単にロボットが「それができるかどうか」を試すために提出されました。これらは、実用目的ではないため却下されました。
3. 「ロボット特有」の癖
異なるAIロボットは、それぞれ異なる性格や設定を持っており、それが独自の却下パターンにつながっています。
- 「Devin」効果: Devinと呼ばれる特定のロボットには、リクエストが長時間放置された場合に、自動的に自身の依頼をクローズするという設定があります。研究では、Devinの却下された多くは、コードが悪かったからではなく、7日間沈黙した後にロボット自身が「退屈なので、これを閉じます」と言ってしまったことによるものであることが分かりました。
- 「コンテキスト(文脈)」の罠: 一部のAIロボットは、仕事を完了させるために必要な「プライベートな」ファイルやデータを見ることができなかったために却下されました。これは、鍵が保管されている部屋にロックアウトされて、鍵を直そうとしているロボットのようなものです。
4. 解決策:「ゴミフィルター」
非常に多くの却下にメモがなかった(「サイレント・リジェクション」の問題)ため、研究者たちはデータを調査する前に、データをクリーンアップする方法が必要だと気づきました。彼らは、どの却下が本当に「サイレント」であり、どれに隠れた手がかりがあるかを推測するためのシンプルなフィルター(一連のルール)を作成しました。
- フィルターのルール: 彼らは以下の条件を満たすリクエストを探しました。
- 作成者本人によってクローズされたもの(セルフクローズ)。
- 非常に短期間(例:7日以内)でクローズされたもの。
- コメントが一切残されずにクローズされたもの。
- 結果: これらのルールを使用することで、彼らは「ノイズ(サイレントで役に立たない却下)」をフィルタリングし、マネージャーが実際に「なぜ」ダメなのかを説明したリクエストに集中することができました。これにより、将来の研究者が、何がうまくいっていないのかをより明確に把握できるようになります。
まとめ
本論文は、AIエージェントはかつてない速さでコードを構築している一方で、人間よりも頻繁に却下されていると結論付けています。これは単にコードにバグがあるからではなく、彼らが以下の理由によるものです。
- あまりにも大きすぎる、あるいは複雑すぎるものを提出すること。
- 人間のマネージャーの不信感を誘うこと。
- 人間にはない独自の「ロボット特有の挙動」(自動クローズなど)を持っていること。
- 理由の説明がないまま却下されることが多く、失敗から学ぶことを困難にしていること。
この研究は、将来、これらのAIワーカーをより信頼できるものにする方法をより良く理解するために、データを整理するための「フィルター」を提供しています。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。