Initial commit
This commit is contained in:
82
commands/review-pr.md
Normal file
82
commands/review-pr.md
Normal file
@@ -0,0 +1,82 @@
|
||||
# GitHub PR レビュー
|
||||
|
||||
指定されたPR番号のプルリクエストを包括的にレビューしてください。
|
||||
|
||||
## 実行手順
|
||||
|
||||
1. **PR情報の取得**
|
||||
- `gh pr view $ARGUMENTS` を実行して、PRの基本情報(タイトル、説明、ステータス、変更ファイル数など)を取得
|
||||
- `gh pr diff $ARGUMENTS` を実行して、変更内容の差分を取得
|
||||
|
||||
2. **コード分析**
|
||||
以下の観点で詳細に分析してください:
|
||||
|
||||
### コード品質
|
||||
- 可読性: コードが理解しやすいか、適切なコメントがあるか
|
||||
- 保守性: 将来の変更や拡張が容易か
|
||||
- 命名規則: 変数名、関数名、クラス名が適切か
|
||||
- コードの重複: DRY原則に従っているか
|
||||
- 関数やクラスの責務: 単一責任の原則に従っているか
|
||||
|
||||
### セキュリティ
|
||||
- 認証・認可の適切な実装
|
||||
- 入力値の検証とサニタイゼーション
|
||||
- 機密情報(パスワード、APIキーなど)のハードコーディング
|
||||
- SQLインジェクション、XSSなどの脆弱性
|
||||
- 安全でない依存関係の使用
|
||||
|
||||
### バグの可能性
|
||||
- 論理エラーや条件分岐の問題
|
||||
- エッジケースの処理
|
||||
- null/undefined参照の可能性
|
||||
- エラーハンドリングの適切さ
|
||||
- 非同期処理の正しい扱い
|
||||
- リソースリーク(メモリ、ファイルハンドルなど)
|
||||
|
||||
### テストカバレッジ
|
||||
- テストコードの有無
|
||||
- テストケースの網羅性
|
||||
- 重要な機能に対するテストの存在
|
||||
- エッジケースのテストカバレッジ
|
||||
|
||||
3. **レビュー結果の出力**
|
||||
以下の形式で結果を出力してください:
|
||||
|
||||
```markdown
|
||||
# PR #{PR番号} レビュー結果
|
||||
|
||||
## 📊 概要
|
||||
- タイトル: [PR title]
|
||||
- 変更ファイル数: [数]
|
||||
- 追加行数: [数]
|
||||
- 削除行数: [数]
|
||||
|
||||
## ✅ 良い点
|
||||
- [具体的な良い点を列挙]
|
||||
|
||||
## ⚠️ 改善提案
|
||||
|
||||
### 🔴 重要度: 高
|
||||
- [重大な問題や必須の修正事項]
|
||||
|
||||
### 🟡 重要度: 中
|
||||
- [改善が望ましい項目]
|
||||
|
||||
### 🟢 重要度: 低
|
||||
- [マイナーな提案や最適化]
|
||||
|
||||
## 🔒 セキュリティチェック
|
||||
- [セキュリティに関する指摘]
|
||||
|
||||
## 🧪 テストに関する所見
|
||||
- [テストカバレッジや品質についての指摘]
|
||||
|
||||
## 📝 総評
|
||||
[総合的な評価とマージ可否についての判断]
|
||||
```
|
||||
|
||||
## 注意事項
|
||||
- レビューは建設的かつ具体的に行うこと
|
||||
- 問題を指摘する際は、改善案も提示すること
|
||||
- ファイルパスと行番号を明記すること(例: `src/main.js:42`)
|
||||
- 重要度に応じて優先順位をつけること
|
||||
Reference in New Issue
Block a user