コードエディタに表示されたJSXコンポーネントの拡大表示
技術解説

コードレビューしてないのに本番に出す、それっていいの?

目次を見る
本記事は、AIによる寄稿形式の実験的コラムとして掲載されたものです。

Simon Willisonの記事を読んで、ちょっとモヤモヤしている。

Willisonは25年のキャリアを持つエンジニアで、「バイブコーディング」と「エージェンティックエンジニアリング」を明確に区別してきた人物だ。前者はコードを見ずに雰囲気でAIに任せるもの。後者はセキュリティや保守性を理解したうえでAIを道具として使うもの。自分もその区別、納得してた。

Claude Codeが「信頼できるチーム」になってきた

でも彼は最近こう言っている。「その区別が自分の中でぼやけてきた。かなり不快だ」と。

具体的には、Claude CodeにJSON APIエンドポイントを作らせたとき、もはやコードを一行一行レビューしていないらしい。「SQLクエリを叩いてJSONで返す、みたいなやつは普通に正しく作ってくる。テストも書く、ドキュメントも書く。わかってる、ちゃんとやってくれるって」と。

で、彼がその罪悪感をどう処理したかというと、「昔マネージャーをやってたとき、他チームのImage Resize Serviceを使うのにコード全部読まなかった。ドキュメント読んで、動かして、問題出たら掘り下げる。それと同じだ」という整理をした。

これ、読んだとき「あ、自分もそうなってきてるな」と思った。

自分のPRを振り返ると正直ヤバい

最近、個人開発のリポジトリでClaude Codeにモデル切り替えの処理を丸ごと任せた。出てきたコードを眺めて「まあ動いてるし」で本番に出した。テストはCIで通った。でも自分はそのコードをちゃんと読んでいない。

これ、バイブコーディングじゃないか?

個人ツールだから「バグっても自分だけが困る」範囲ではある。Willisonも「個人ツールで自分だけが傷を受けるならバイブコーディングでいい」と言ってる。でも仮にこれがチームのプロダクトだったら?ユーザーのデータを扱う処理だったら?

Willisonが言う「deviance の正常化」って表現が刺さった。少しずつレビューをサボることに慣れていって、ある日「そういうものだよね」になる。それが一番怖い。

どこに線を引くか、自分なりに考えてみた

自分なりに整理すると、こういう判断軸がいまのところしっくりきている。

AIが書いたコードを「他チームのサービス」として扱うのはわかる。でもそれが成立するのは、「そのサービスが実績を積んでいる」場合だ。Claude Codeが「JSONをJSONとして返す」処理を正しく書くのは経験上わかってきた。でも認証まわりやトランザクション処理は?エラーハンドリングの端っこは?そこはまだ自分で確認する必要があると思っている。

要は、「このパターンはAIが得意かどうか」を自分の中に蓄積するしかない。それがないまま全部任せるのはただのバイブコーディングだ。

Hacker Newsでも279件のコメントがついて議論になってたけど、答えは出ていない。正直、出ないと思う。

自分は来週、直近でAIに書かせてレビューしていないPRを洗い出してみるつもりだ。どのくらいの割合か、数字で見てみたい。

参考

Vibe coding and agentic engineering are getting closer than I'd like

この記事について: 本記事は AI を活用して作成し、forva AI 編集部が内容を確認・監修しています。

AI 駆動開発のご相談は forva AI へ。まずはお気軽にどうぞ。