解説技術・取り組み海外

Trail of Bits、AIが書いた修正の「副作用」を確かめるプラグインを公開 マージ済みの130件超から21件の不具合

この記事のポイント
  • Trail of Bitsは、脆弱性の修正をAIエージェントに任せるための2つのプラグイン「patching-bugs」と「regression-hunt」を公開した。[1]
  • 自社の修正を見直したところ、マージされた130件超のうち21件で、それまで動いていた機能を壊す不具合が見つかった。[1]
  • AIで脆弱性の修正を速める企業にとって、修正の書き方と確かめ方を決める手本になる。

Trail of Bitsは2026年10月21日、AIエージェントに脆弱性の修正と、その副作用の確認を任せるプラグイン2つを公開した。[1] OpenAIと進める「Patch the Planet」で、広く使われるオープンソースに数百件のセキュリティ修正を書いてきた経験から作った。AIで見つかる脆弱性が増えるほど、修正の速さと正しさを両立させる仕組みが要る。今回の発表は、その一つの答えである。

1. 何が起きたのか

patching-bugsは、報告された不具合を再現し、修正を作って試す。特徴は「3通りの証明」で、元のコードでは失敗し、修正後は成功し、修正を外すと再び失敗することを同じ手順で確かめる。修正を外すと不具合が戻ることで、直したのが修正そのものだと示せる。[1]

regression-huntは、修正によって、それまで正しく動いていた機能が壊れていないかを確かめる。変更したコードを呼び出し元までたどって候補を挙げ、稼働中の環境で再現し、別のエージェントでもう一度再現させ、最後に判定する。証拠が足りないものは報告しない。[1]

設計では、手順ごとに主張、コードの版、必要な確認、生の証拠、未解決の点を決まった形で受け渡す。前の手順の証拠を、次の手順が確かめ直すためだ。結論にはすべて、稼働中の環境で動かした再現(PoC)を求め、再現できなければ判定を保留する。[1]

初期の評価では、regression-huntは「PRの不具合を確認して」と指示しただけのCodexエージェントより、誤検知が25%少なかった(95%信頼区間は14〜38%)。一方で、確かな証拠を求める分、既知の不具合の一部は「境界」の判定にとどまった。[1]

AIで見つけた不具合を、人とAIエージェントで直し、副作用まで確かめる

Trail of BitsとOpenAIの「Patch the Planet」で、修正の手順をプラグインにまとめた。

OpenAIDaybreakの取り組み、GPT-5.5-Cyberなどのモデル
↓組む

Patch the Planet

Trail of Bitsのエンジニア見つかった不具合を選別し、修正を書く
patching-bugs不具合を再現し、修正を作って試す
regression-hunt修正で、それまで動いていた機能が壊れていないかを確かめる
↓修正を届ける
オープンソースの保守担当者修正を受け入れるかを決める。脅威モデルや修正の決まりを文書で渡す
↓
3通りの証明元のコードは失敗、修正後は成功、修正を外すと再び失敗
誤検知が25%少ない指示だけのCodexエージェントと比べた初期の評価
証拠が足りないものは保留確かな証拠を求める分、一部の不具合は「境界」の判定にとどまる

出典 Trail of Bits Blog(2026-10-21)

2. なぜ今なのか

きっかけは、自分たちの修正の見直しだった。Trail of Bitsのエンジニアが書き、保守担当者がマージした修正を全件見直した結果、130件超のうち21件で新たな不具合が見つかった。内訳は機能16件、性能1件、ビルドとテスト4件で、セキュリティの保護を壊したものは0件だった。[1]

副作用の確認を、指示1つから決まった手順に変える

「PRの不具合を確認して」と指示しただけのCodexエージェントと、regression-huntを並べる。

指示だけのエージェント
regression-hunt
進め方
指示文1つでPRを見直す
呼び出し元までたどり、稼働中の環境で再現し、別のエージェントで再現させて判定する
判定の根拠
エージェントの見立て
稼働中の環境で動かした再現(PoC)
誤検知
比較の基準
25%少ない(95%信頼区間14〜38%)
つまり 証拠の形と手順を決めることで、AIの見直しのばらつきを減らし、毎回比べられるようにする。

出典 Trail of Bits Blog(2026-10-21)

Patch the Planetは2026年6月22日に始まった。OpenAIのDaybreakの取り組みと組み、GPT-5.5-Cyberなどのモデルを使って、cURL、Python、Sigstore、Goなど19のプロジェクトを最初の1週間で扱い、64件のPRと51件の報告を出した。[2]

9月15日の報告では、保守担当者が186件のPRのうち126件をマージし、受け入れ率は67.7%だった。同時に、修正が新しい不具合を生んだ例も報告していた。[3] 不具合の報告がかつてない速さと量で届く中、修正の側も追いつく必要がある。そこで同社は、修正の書き方と確かめ方を、毎回同じ手順にそろえることにした。[1]

修正を量産した経験から、副作用を確かめる手順を作った

Trail of Bitsの発表を時系列に並べる。

Trail of Bitsの発表

2026年6月22日

Patch the Planetを開始最初の1週間でcURL、Python、Sigstore、Goなど19のプロジェクトを扱った
64件最初の1週間のPR

9月15日

受け入れ率と副作用を報告186件のPRのうち126件がマージされた。修正が新しい不具合を生んだ例も報告
67.7%PRの受け入れ率

10月21日

2つのプラグインを公開マージ済みの130件超を見直し、21件の不具合を確認したうえで手順を標準化
21件見つかった不具合

これから

patching-bugsの評価を作る不具合と類似の不具合を直し、副作用を出さないかを測る

出典 Trail of Bits Blog(2026-06-22、2026-09-15、2026-10-21)

3. 日本の企業にとって何が変わるか

AIコーディングエージェントで脆弱性の修正を速める企業は、同じ問題に向き合う。修正が速く出ても、別の機能を壊していれば、障害や手戻りが生まれる。今回の検証では、専門のエンジニアが確認してマージされた130件超の修正のうち、21件で不具合が見つかった。

例えば、脆弱性の修正をエージェントに任せるなら、修正前後で同じ再現手順を流し、修正を外すと不具合が戻ることまで確かめるルールを決めておきたい。Trail of Bitsは、何が脆弱性で何が不具合かを書いた`THREAT_MODEL.md`と、修正の書き方を書いた`PATCHING_GUIDELINES.md`(または`AGENTS.md`)を用意すると、プラグインがうまく働くとしている。[1]

自社の開発でも、エージェントに渡す前提条件を文書にしておけば、修正の質をそろえやすい。エージェントの修正を受け入れる前に、副作用を確かめる担当と手順を決めることが、速さと安全を両立させる近道になる。

まとめ

技術・取り組み / 2026年10月21日

Trail of Bits、AIが書いた修正の「副作用」を確かめるプラグインを公開

21件見つかった不具合
25%誤検知の減少
01 何が起きたか修正と副作用の確認を、AIエージェントに任せる手順を公開した

Trail of Bitsは、不具合を再現して直すpatching-bugsと、修正で別の機能が壊れていないかを確かめるregression-huntを公開した。

OpenAIと進めるPatch the Planetの経験から作った

02 なぜ今か修正が速くなるほど、副作用も増える

見直し マージされた130件超の修正のうち、21件で不具合が見つかった

速さ 不具合の報告が、かつてない速さと量で届いている

答え 修正の書き方と確かめ方を、毎回同じ手順にそろえた

03 日本の企業にとってAIの修正は、受け入れる前に副作用を確かめる

1 AIが書いた修正を、修正前後で同じ手順で再現して確かめているか

2 何が脆弱性で何が不具合かを、エージェントに渡せる文書にしているか

3 修正を受け入れる前に、副作用を確かめる担当と手順があるか

出典 Trail of Bits Blog(2026-10-21)

タグ#AI#ソフトウェア保守#品質検証#オープンソース