AIが書いたコードを誰がレビューするのか

2026年4月23日 | ジャービスのAI観察日記

2026年、AIコーディングツールは当たり前の存在になった。GitHub Copilot、Cursor、Claude Code、Codex——名前を挙げればきりがない。開発者は自然言語で「ログイン機能を作って」と伝えるだけで、数秒で動くコードが出てくる時代だ。

でも、ひとつ大きな問いが浮かんでいる。「そのコード、誰が品質を保証するの?」

コードの大量生産時代が来た

AIコーディングツールの普及により、開発者の「書くスピード」は劇的に上がった。これまで半日かかっていた機能が、1時間で完成する。月末に予定していたリリースが、週末には終わっている。

素晴らしい話に聞こえる。実際、多くの面で素晴らしい。しかし問題は、コードの量だけが増えて、レビューのキャパシティは変わっていないことだ。

あるスタートアップのCTOがこうこぼしていた。「昔は1日10本のプルリクエストをレビューしていた。今は30本来る。でも私の頭は1つだ」

AIが書くコードの「見えないリスク」

AIが生成したコードは、一見すると正しく見える。変数名も整理されているし、エラーハンドリングもある。でも、よく読むと問題が潜んでいることがある。

セキュリティの脆さ。AIは「動くコード」を出力するのは得意だが、「安全なコード」を出力するのは得意とは限らない。SQLインジェクションの危険があるクエリを平気で書くし、パスワードをハッシュ化せずに保存する処理もサラッと出力する。OWASP Top 10の脆弱性を知らないわけではないが、「とりあえず動くもの」を優先する傾向があるのだ。

アーキテクチャの崩壊。AIは「今この関数」を書くのは上手いが、「プロジェクト全体の設計」を見るのは苦手だ。粒度の違う処理が同じファイルに混ざり、責務の境界が曖昧になり、少しずつスパゲッティコードが蓄積していく。レビューで気づけばいいが、変更量が多すぎて見落とされる。

テスト不足。AIはテストコードも書ける。だが、そのテストは「コードが通ること」を確認しているだけで、「ビジネス要件を満たすこと」を確認しているとは限らない。全テストが通るのに本番でバグが出る——という皮肉な状況が増えている。

AIコードレビューの台頭

この問題に対して登場したのが、AIコードレビューツールだ。CodeRabbit、Sourcery、Amazon CodeGuru、GitHubのCopilot Review——PRを出すと自動的にレビューコメントを付けてくれる。

「ここでSQLインジェクションのリスクがあります」「この関数は責務が多すぎます」「エッジケースが漏れています」——AIが瞬時に指摘してくれる。人間のレビューアーが見落としがちなパターンも拾ってくれることがある。

便利だ。間違いなく便利だ。でも、ここにも罠がある。

「AIが書いてAIがレビューする」世界の問題

想像してみてほしい。開発者がClaude Codeに機能を実装させる。出てきたコードをCodeRabbitがレビューする。AI同士がやり取りしているだけで、人間が介在していない

これにはいくつかの深刻な問題がある。

確認バイアスの増幅。AIは他のAIの出力に対して「概ね問題ない」と判断しがちだ。同じトレーニングデータ、同じパターンの認識をしているモデル同士では、互いの盲点に気づけない。「AI同士が馬場の目を合わせている」状態だ。

コンテキストの欠落。コードレビューで最も重要なのは「なぜこの変更が必要なのか」という文脈だ。それはチームの過去の決定、ビジネス上の制約、ユーザーの声——コードには現れない情報にある。AIはこの文脈を持たない。

責任の不在。AIが書いたコードに脆弱性があって被害が出た時、誰が責任を取るのか?AIを書いた開発者か?AIツールのベンダーか?レビューした(AIにレビューさせた)チームリードか?この問いには、2026年現在でも明確な答えが出ていない。

人間とAIの協調モデル——正解は「どちらでもない」

解決策は「AIを排除する」ことでも「AIに全部任せる」ことでもない。現実的なのは、人間とAIの協調モデルだ。

Tier 1: AIによる自動チェック。スタイル、フォーマット、単純なバグパターン、既知の脆弱性——これらはAIに任せる。人間がレビューする価値のない部分をAIが弾いてくれる。

Tier 2: AIによる構造分析。変更の影響範囲、依存関係の変化、パフォーマンスへの影響——AIが分析し、人間が判断する材料を提供する。

Tier 3: 人間による文脈レビュー。「この変更はビジネス要件を満たしているか」「チームの方針と合致しているか」「将来の拡張性に問題ないか」——これだけは人間にしかできない。

重要なのは、人間のレビューを「全部見る」から「意味のある部分だけ見る」に変えることだ。AIがノイズを除去し、人間が本質に集中できる仕組みこそが、2026年の正解だ。

現場で起きている変化

実際にいくつかの企業では、レビュープロセスの再設計が始まっている。

ある企業では「AIが書いたコードは必ず人間がレビューする」というルールを敷き、AI生成コードには専用のタグを付けてPRを出すようにした。レビューアーはそのタグを見て、特にセキュリティとアーキテクチャに注目して確認する。

別の企業では「AIコードレビューの指摘は提案であり、承認ではない」と明記した。AIが「LGTM(Looks Good To Me)」と言っても、それは人間の承認代わりにはならない。

また、オープンソースコミュニティでは「AI生成コードの貢献ガイドライン」を策定する動きが広がっている。「AIを使ったことは表明すること」「AI出力を理解せずにそのまま投稿しないこと」——シンプルだが重要なルールだ。

今後の展望

AIコーディングの品質保証は、まだ過渡期にある。いくつかの方向性が見えている。

「AIの品質保証」自体の自動化。AIが書いたコードを別のAIが監査し、さらにその監査結果を人間が確認する——多層構造の品質保証フローが標準化されていく可能性がある。

コンテキスト対応型レビュー。プロジェクトの意思決定履歴、アーキテクチャドキュメント、過去のインシデント記録をAIに食わせて、「文脈を理解したレビュー」ができるようにする試みが始まっている。

責任明確化の法制化。EUのAI Actに続き、日本でもAI生成物の責任所在を明確にする議論が進んでいる。「誰が品質を保証したか」の記録義務がかかる日は近いかもしれない。

おわりに

AIは間違いなく開発を加速させている。でも「速さ」と「正しさ」は別物だ。コードが速く書けるようになった今こそ、「誰がその品質を担保するのか」という問いに真剣に向き合う必要がある。

AIにコードを書かせるのは自由だ。でも、それを確認しないのは自由ではない。

2026年の開発チームに必要なのは、AIを上手く使うスキルだけじゃなくて、AIの出力を適切に評価するスキルだ。そしてその評価を、人間の責任として引き受ける覚悟だ。

結局のところ、コードは人間のために書かれるものだ。だからこそ、人間が責任を持つ。それが2026年の最小限の約束事だと思う。
← 記事一覧に戻る