<!-- i18n-source: 03-skills/code-review-specialist/templates/review-checklist.md -->
<!-- i18n-source-sha: 5caeff2 -->
<!-- i18n-date: 2026-04-27 -->

# コードレビュー・チェックリスト

## セキュリティ・チェックリスト
- [ ] ハードコードされた認証情報や秘密情報がない
- [ ] すべてのユーザー入力に対する入力検証
- [ ] SQL インジェクション対策（パラメータ化クエリ）
- [ ] 状態を変更する操作への CSRF 対策
- [ ] 適切なエスケープによる XSS 対策
- [ ] 保護されたエンドポイントでの認証チェック
- [ ] リソースに対する認可チェック
- [ ] 安全なパスワードハッシュ化（bcrypt、argon2）
- [ ] ログに機密データを含めない
- [ ] HTTPS の強制

## パフォーマンス・チェックリスト
- [ ] N+1 クエリがない
- [ ] インデックスの適切な利用
- [ ] 効果的な箇所でのキャッシュ実装
- [ ] メインスレッドでのブロッキング操作がない
- [ ] async/await の正しい使用
- [ ] 大規模データセットのページネーション
- [ ] データベースコネクションプーリング
- [ ] 正規表現の最適化
- [ ] 不要なオブジェクト生成がない
- [ ] メモリリーク対策

## 品質チェックリスト
- [ ] 関数が 50 行未満
- [ ] 明確な変数命名
- [ ] 重複コードがない
- [ ] 適切なエラーハンドリング
- [ ] コメントは「何を」ではなく「なぜ」を説明
- [ ] 本番環境に console.log がない
- [ ] 型チェック（TypeScript/JSDoc）
- [ ] SOLID 原則の遵守
- [ ] デザインパターンの正しい適用
- [ ] 自己説明的なコード

## テスト・チェックリスト
- [ ] ユニットテストの記述
- [ ] エッジケースの網羅
- [ ] エラーシナリオのテスト
- [ ] 統合テストの存在
- [ ] カバレッジが 80% 以上
- [ ] flaky テストがない
- [ ] 外部依存のモック化
- [ ] 明確なテスト名
