Files
affaan-m--everything-claude…/docs/ja-JP/rules/common/code-review.md
T
wehub-resource-sync d48cda4081
CI / Test (ubuntu-latest, Node 18.x, bun) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, npm) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, pnpm) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, yarn) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 20.x, bun) (push) Failing after 17m13s
CI / Test (ubuntu-latest, Node 20.x, npm) (push) Failing after 18m42s
CI / Test (ubuntu-latest, Node 20.x, pnpm) (push) Failing after 15m0s
CI / Test (ubuntu-latest, Node 20.x, yarn) (push) Failing after 49m44s
CI / Test (ubuntu-latest, Node 22.x, bun) (push) Failing after 51m55s
CI / Test (ubuntu-latest, Node 22.x, pnpm) (push) Failing after 21m57s
CI / Test (ubuntu-latest, Node 22.x, npm) (push) Failing after 37m39s
CI / Test (ubuntu-latest, Node 22.x, yarn) (push) Failing after 34m7s
CI / Validate Components (push) Failing after 37m15s
CI / Python Tests (push) Failing after 10m1s
CI / Security Scan (push) Failing after 10m1s
CI / Lint (push) Failing after 17m12s
CI / Coverage (push) Failing after 20m19s
CI / Test (macos-latest, Node 18.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, yarn) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, yarn) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, yarn) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 11:55:55 +08:00

4.6 KiB

コードレビュー基準

目的

コードレビューは、コードがマージされる前に品質、セキュリティ、保守性を確保します。このルールは、コードレビューの実施タイミングと方法を定義します。

レビューのタイミング

必須レビュートリガー:

  • コードの作成または修正後
  • 共有ブランチへのコミット前
  • セキュリティに関わるコードが変更された場合(認証、決済、ユーザーデータ)
  • アーキテクチャの変更時
  • プルリクエストのマージ前

レビュー前の要件:

レビューを依頼する前に、以下を確認してください:

  • すべての自動チェック(CI/CD)が通過している
  • マージコンフリクトが解決されている
  • ブランチがターゲットブランチと最新状態である

レビューチェックリスト

コードを完了とマークする前に:

  • コードが読みやすく、適切に命名されている
  • 関数が焦点を絞っている(50行未満)
  • ファイルが凝集している(800行未満)
  • 深いネストがない(4レベル以上)
  • エラーが明示的に処理されている
  • ハードコードされたシークレットや認証情報がない
  • console.logやデバッグ文がない
  • 新機能にテストが存在する
  • テストカバレッジが最低80%を満たしている

セキュリティレビュートリガー

以下の場合はsecurity-reviewerエージェントを使用してください:

  • 認証または認可コード
  • ユーザー入力の処理
  • データベースクエリ
  • ファイルシステム操作
  • 外部APIコール
  • 暗号化操作
  • 決済または金融コード

レビュー重大度レベル

レベル 意味 アクション
CRITICAL セキュリティ脆弱性またはデータ損失リスク BLOCK - マージ前に修正必須
HIGH バグまたは重大な品質問題 WARN - マージ前に修正すべき
MEDIUM 保守性の懸念 INFO - 修正を検討
LOW スタイルまたは軽微な提案 NOTE - 任意

エージェントの使用

コードレビューには以下のエージェントを使用してください:

エージェント 目的
code-reviewer 一般的なコード品質、パターン、ベストプラクティス
security-reviewer セキュリティ脆弱性、OWASP Top 10
typescript-reviewer TypeScript/JavaScript固有の問題
python-reviewer Python固有の問題
go-reviewer Go固有の問題
rust-reviewer Rust固有の問題

レビューワークフロー

1. git diffを実行して変更を理解する
2. セキュリティチェックリストを最初に確認する
3. コード品質チェックリストをレビューする
4. 関連するテストを実行する
5. カバレッジ >= 80%を検証する
6. 詳細レビューに適切なエージェントを使用する

よくある問題の検出

セキュリティ

  • ハードコードされた認証情報(APIキー、パスワード、トークン)
  • SQLインジェクション(クエリでの文字列連結)
  • XSS脆弱性(エスケープされていないユーザー入力)
  • パストラバーサル(未サニタイズのファイルパス)
  • CSRF保護の欠如
  • 認証バイパス

コード品質

  • 大きな関数(50行超)- より小さく分割
  • 大きなファイル(800行超)- モジュールを抽出
  • 深いネスト(4レベル超)- 早期リターンを使用
  • エラー処理の欠如 - 明示的に処理
  • ミューテーションパターン - イミュータブルな操作を優先
  • テストの欠如 - テストカバレッジを追加

パフォーマンス

  • N+1クエリ - JOINまたはバッチングを使用
  • ページネーションの欠如 - クエリにLIMITを追加
  • 制約のないクエリ - 制約を追加
  • キャッシュの欠如 - 高コスト操作をキャッシュ

承認基準

  • 承認: CRITICALまたはHIGHの問題なし
  • 警告: HIGHの問題のみ(注意してマージ)
  • ブロック: CRITICALの問題が検出

他のルールとの統合

このルールは以下と連携します: