「Cheap Code, Costly Judgment(安価なコード、高価な判断)」は、パデュー大学の研究者による事例研究であり、高速で AI を介した実装を、どのようなプロセスを通じて統制可能なソフトウェアエンジニアリング上の進歩へと変換できるのかを問う。その設計は一人称的である。12 週間にわたり、1 人の熟練したソフトウェアエンジニア(論文全体を通じて「被験者(Subject)」と呼ばれ、論文の著者の 1 人でもある)が、規制上の期限のもとで、最先端の AI コーディングエージェントを用いて Office および PDF ファイル向けの文書アクセシビリティ改善システムを構築した。実証的な記録は、エピソード単位で区切られた 88 件の同時記録のフィールドノートと、プロジェクトのリポジトリから成る。リポジトリは 18,662 件のコミットと約 160 万行の現役の成果物を含むと報告されており、アブストラクトはそのコードベースを、420 KLOC のプロダクションコードと、1.16 MLOC のテスト、リント、補助ドキュメント、エージェント用ツールから成るものと説明している。
この記録から、著者らは ガバナンス変換(Governance Conversion) と呼ぶ中範囲理論の候補を帰納的に導き出す。エージェントによる開発速度(agentic velocity)が繰り返し現れる構造的な失敗クラスを露わにし、人間のアーキテクチャ的・文脈的な判断がどの失敗がガバナンスの欠落を示しているかを解釈し、それらの失敗がエンジニアリング環境に組み込まれることで、後続のエージェントはより狭いアクション空間を引き継ぐ、というものである。論文はこれを既存のガバナンス中心の説明を置き換えるものではなく補完するものとして位置づけている。先行研究がエージェントの行動前に分かっている義務から事前的(ex ante)に制御を導き出すのに対し、この理論は、エージェント型の作業の中で初めて見えてくる失敗から制御を帰納する事後的(ex post)なプロセスを説明する。論文の中心的な枠組みであり、タイトルの由来でもあるのが、対をなす 2 つのテーゼである。すなわち、エージェントによる開発速度は、ガバナンスが人間のレビューに依存するのではなくエンジニアリング環境へと移されたときにのみ持続可能であり、また実装が豊富になると、希少な人間の仕事は問題の枠づけ、抽象化の発見、アーキテクチャ上の判断へと移っていく。
要点
- ガバナンス変換(観測されたエージェントの失敗パターンを、後続のエージェント作業を制約する明示的かつ永続的なガバナンスへと変換すること)を、エージェント型ガバナンスに関する既存の説明では説明できないプロセスとして提唱し、その中心的な主張を「失敗 → ガバナンス」と表現する。
- エージェントによる開発速度のもとでは、必要な制御の多くは作業開始前に完全には規定できないため、事前的ガバナンスと事後的ガバナンスの両方が必要だと論じる。著者らは、この事例の教訓をその後の 2 つのプロジェクト(50 KLOC と 36 KLOC)に事前的ガバナンスとして適用し、初期の進捗が速まった一方で、事後的ガバナンスは依然として必要だったと報告している。
- 先行する説明を、エージェント型ソフトウェアエンジニアリングの 3 つのプロセスモデル(速度中心、監督中心、ガバナンス中心。エージェント型ソフトウェアエンジニアリングのプロセスモデル を参照)に整理し、いずれも単独では不十分だと論じる。プロセスが似ていることは制御にはならず、人間の注意がスループットのボトルネックになり、事前的な義務はすべての失敗を予見できない、というのがその理由である。
- 10 のファミリーにわたる 41 の代表的なガバナンスの仕組みを目録化している。それらはエージェントのガバナンス(ガバナンス文書による制御、コンテキストとディスパッチ、エージェントの可観測性、リソース仲介、取り込みゲート)と、プロダクトのガバナンス(正規の継ぎ目(canonical seams)、検証と適合性、静的解析と動的解析、来歴と帰属、修復の語彙)に分かれる。
- 統制されたエンジニアリング環境 がプロダクトに比べて大きく成長したと報告している。支援のための仕組みは 1.16 MLOC、つまりプロダクションコードの 2.75 倍に達し、その内訳は静的解析(238 KLOC)、動的解析(405 KLOC)、エージェントが参照するドキュメント(247 KLOC)、エージェント基盤(110 KLOC)、ツール(162 KLOC)であった。また、プロジェクト固有の静的解析が 577 件、C# のテストメソッドが 13,000 件以上、Python のテストファイルが約 1,500 件あった。
- 被験者は監督中心モデルから意図的に離れ、エージェントが生成したコードをほとんど検査しなかったこと、そしてこの事例は継続的な検査なしに品質を維持できるかどうかを検証するものだったと述べている。
- 弱く確率的な形態のガバナンスは規模が大きくなると飽和するため、決定論的な制御(コンパイラが検査する型付き列挙型、コミットを制限する静的解析・動的解析)と組み合わせなければならないと論じる。その理由として「速度のもとでは、確率の低いエージェントハーネス違反も必ず起こる」と述べている。さらに直観に反する観察として、より強い制御が常に速度を犠牲にするわけではなく、むしろ速度を複利的に高めうることを付け加えている。
- 意味のある生産性指標は単なる実装量ではなく、統制されたスループット(governed throughput)であると提唱する。論文は後者(単なる実装量)の例として「tokenmaxing」を挙げている。着地したコミット数、変更行数、完了したエージェントタスク数は活動量を測るものであり、それが永続的な進歩になるかどうかを測るものではないからである。
- 権限を調整変数として挙げる。ガバナンス変換には、繰り返し起こる失敗を観測した人がエンジニアリング環境を変更できることが必要であり、権限が分散した組織では、同じ失敗シグナルが局所的なパッチしか生まないことがある。
- 開発コストを約 6 万米ドルと報告している(被験者の研究助成金による給与 5 万ドル、Google Cloud 6,000 ドル、推論 2,000 ドル、Claude のサブスクリプション 2,000 ドル)。また、推計では週あたり 900 万〜1,800 万トークンが消費されたことが示唆されている。
- 今後の検証のための反証可能な 3 つの命題(速度による露呈、ソフトな制御の飽和、ガバナンス変換)と、2 つの調整変数(能力適合と権限)を提示し、単一の事例では一般的な頻度は確立できないと明言している。この研究の貢献は理論の検証ではなく理論の構築である。
補足
この研究自身が述べる限界は大きく、著者らはそれを前面に出している。この研究は 1 人の被験者(N=1)と 1 つのエージェント型ツールチェーン(Anthropic の Claude。すべて「Claude for VSCode」のチャットインターフェース経由で利用)を対象としているため、観察された事柄は普遍的な性質ではなく、その被験者とそのツールチェーンを反映している可能性がある。被験者は実践者であると同時に分析者でもあり、論文はこの点を、同時記録のフィールドノート、リポジトリ上の証拠、複数著者による批判的レビュー、そして妥当性チェックによって緩和している。妥当性チェックでは、別の著者が層化抽出した 10 件のインシデントを独立に再コーディングした(報告された一致率は、インシデントのクラスで 10/10、カテゴリで 6/7、第 3 のコーディング層で 5/7)。被験者のこれまでの経験(ソフトウェアエンジニアとして 5 年、博士課程の学生として 5 年、教授として 6 年の計 16 年で、エンジニアリングの経験は生成 AI 時代以前のものとされる)は、外的妥当性に関する未解決の問いとして挙げられている。すなわち、同等の成果が非専門家、ドメインの専門家、あるいはより大きなチームでも達成できるかどうかは、この研究では答えられていない。
論文はまた、研究倫理の項で、持続的なエージェント型開発が被験者に害を及ぼしたと報告している。強迫的なツール使用によって私的な人間関係への注意が損なわれ、長時間の作業セッションが身体的な負担を引き起こした。著者らは、高速なエージェント型ツールは極端な働き方を、健康的な期間を超えて実際に持続可能にしてしまうと述べている。論文は、コーディングされたコーパスの大半がエンジニアリング上の省察(88 件中 72 件)で占められており、その 2 大カテゴリである制御(35 件)とアーキテクチャ(20 件)が、繰り返し起こる失敗を統制可能にする 2 つの方法、すなわち事後に検出すること、あるいは構造によって排除することに対応していると指摘している。