AI開発でレビューすべき差分・設定・依存関係
はじめに
AI 生成コードをレビューするときは、差分・設定・依存関係を特に注意深く確認する必要があります。本記事では、レビューポイントを説明します。
レビューポイント 1:差分(git diff)
確認項目
□ 意図しない削除がないか
AI がコメント・ドキュメントを削除した
□ ロジックの意図は明確か
複雑な修正は説明が必要
□ パフォーマンスに問題ないか
O(n^2) アルゴリズムになっていないか
□ 副作用がないか
元のデータを修正していないか
実装例
❌ 問題のある差分:
- # This function calculates the average
- def calculate_avg(data):
+ def calculate_avg(data):
問題:
- ドキュメント削除
- 型注釈削除
- 複雑性増加
レビューポイント 2:設定ファイル
確認項目
□ .env ファイルは .gitignore に入っているか
機密情報が repository に入らない
□ requirements.txt は正しいか
古いバージョン、脆弱性がないか
□ config.yml は正しいか
本番環境設定が間違っていないか
□ .gitignore は完全か
ローカルキャッシュ、ログが除外されているか
チェックリスト
✅ 正しい例:
# .gitignore
.env
.env.local
__pycache__/
*.pyc
.pytest_cache/
.coverage
# requirements.txt
requests==2.28.1
pytest==7.2.0
black==23.1.0
レビューポイント 3:依存関係
確認項目
□ 新しいライブラリを追加していないか
既存ライブラリで実装できないか再検討
□ ライブラリバージョンは安全か
脆弱性ないか、サポート状況は
□ ライセンスは確認したか
GPL など制限ないか
□ 依存関係の依存関係(transitive)はチェック
pip-audit で脆弱性スキャン
実装例
❌ 問題ある例:
# requirements.txt に新しいライブラリ追加
+ numpy==1.16.0 # 3年以上前、脆弱性ある
✅ 正しい例:
# 既存ライブラリで実装、バージョンは最新
# numpy を避けて、標準 list で実装
def process_data(data: list) -> float:
return sum(data) / len(data) if data else 0.0
一体型レビューフロー
【差分確認】
git diff で全変更を確認
↓
【設定確認】
.env, config.yml, .gitignore をチェック
↓
【依存関係確認】
requirements.txt, pip-audit をチェック
↓
【統合確認】
すべてが一貫しているか確認
↓
【承認】
OK なら merge
NG なら修正指示
よくある見落とし
1. 差分
- コメント削除
- 型注釈削除
- 複雑さ増加
2. 設定
- .env が repository に含まれた
- 本番環境設定が間違っている
- .gitignore が不完全
3. 依存関係
- 古いバージョンのライブラリ
- 新しい脆弱性あるライブラリ
- 不要なライブラリ追加
まとめ
AI 開発のレビュー(差分・設定・依存関係):
差分レビュー:
- 意図しない削除
- ロジックの意図
- パフォーマンス
- 副作用確認
設定レビュー:
- 機密情報管理
- .gitignore の完全性
- 本番環境設定
依存関係レビュー:
- 新しいライブラリ追加の必要性
- バージョンのセキュリティ
- pip-audit での脆弱性確認
Claude Codeの実装結果を人間がレビューする観点と合わせることで、安全な deployment が実現します。