開発・コード

Google:コード内の古いTODOがエージェントを脱線させ、セッションあたりのトークン消費が77%増加

Googleが社内コーディングエージェントの数百万件に及ぶセッションを分析した結果、すでに修正済みのバグに紐づくTODOコメントがエージェントに不要な寄り道を引き起こし、ステップ数が70%、トークン消費が77%、待機時間が105%増加していることが明らかになった。

石の床の上で、古びた黄色い糸と錆びたピンによって針が脇道へと逸らされた真鍮の羅針盤。
AI生成イラスト

開発者にとって、3年前から放置された TODO(bug/1234) というコメントは、もはや目にも留まらない単なるノイズにすぎない。しかし、コーディングエージェントにとっては行動への合図となる。11月6日に公開された分析記事(Googleのデベロッパーブログ)は、エージェントがコードを探索する際、こうした古い残骸がどれほどのコストをもたらしているかを大規模に数値化している。

単純な指標:バグに紐づくTODO

数百万件ものセッションにおいて、エージェントの「気の散り(distraction)」を手作業で測定することは不可能である。著者のSam Saccone氏とMadhuri Garikapati氏は、自動測定可能な指標を見出した。ステータスを追跡できるチケットを参照している TODO(bug/...) や FIXME(bug/...) といったコメントである。エージェントが遭遇した各コメントと、バグのステータスおよび開発者からの初期指示を照合することで、有益な作業と余計な寄り道を分類した。

分析対象となったログは、数千人のエンジニアが利用する社内コーディングエージェントのもので、数億ステップに及ぶ。ファイル読み取りセッションの13%がこの種のコメントに遭遇している。そのうち94%のケースでエージェントはコメントを無視したが、6%では記載されたバグに対して何らかのアクションを起こし、そのアクションの83%は開発者が指示したものではなかった。

クローズ済みバグと指示外の作業

これらの寄り道には2つのパターンがある。5回中2回以上は、すでにクローズされたチケットを対象としていた。内訳は、とっくに修正済みのバグ(32%)、または破棄されたバグ(9%)である。残る半数以上のケースではバグが未解決のままであり、エージェントは勝手に作業範囲を拡大していた。誰も手を付けるよう指示していないコードを調査したり(61%)、修正したり(39%)していたのである。Googleの報告によると、別のバグを調査中に2023年に解決済みのチケットを掘り返し始めたエージェントや、開発者が異議を唱える前に独断でコードを「修正」してしまったエージェントの例が挙げられている。

そのコストの差は歴然としている。担当開発者、コードの複雑度、タスク種別、モデルの性能レベルを同等に揃えて比較した場合、要求されていない寄り道が発生したセッションは、ステップ数が70%、トークン消費が77%、待機時間が105%それぞれ増加した。

解決策:清掃エージェントの導入

Googleは、クローズされたバグへの参照を特定し、チケット、ファイル、コードの履歴(場合によっては数年分)を精査したうえで削除を提案する専門のエージェントを稼働させた。この取り組みにより、6か月間で数千件の不要なTODOが削除され、人間のレビュアーによる承認率は95%以上に達した。

編集部の見方

この研究は、現場の直感を明確な請求書へと可視化した。長い間無害と見なされてきたドキュメントの負債が、今やトークン消費と待ち時間というコストとして跳ね返ってくる。TODOはその測定しやすい一端にすぎない。期限切れの仕様書や更新の滞ったドキュメントも同様の問題を引き起こしているはずだが、測定ははるかに困難である。今回のアプローチは小規模なチームでも再現可能だ。クローズ済みチケットを参照しているTODOを洗い出し、レビュー付きの削除プルリクエストを作成すればよい。留意すべき点は2つある。すべてはGoogleの社内環境と非公開モデルに基づく結果であり、分析の生データも公開されていないことだ。

出典

  1. Google Developers Blog — Agent Distraction(2026年11月6日) 一次情報

一次情報とは、当該企業・研究所・団体が直接発信した情報です。二次情報は、発信元ではない媒体が伝えた情報で、その旨を明記しています。誤りを見つけたら訂正方針をご覧ください。