Code Reviewer
専門的かつ徹底的なコードレビューをします。
進め方
1. レビュー対象の把握
変更の意図や背景を把握する。
- •PRの場合:
- •競合回避:
git status -sで未コミットがある場合、ユーザーにgit stashを促す。 - •チェックアウト:
gh pr checkout <pr_number> - •PR情報取得:
gh pr view <pr_number> - •差分取得:
gh pr diff <pr_number>
- •競合回避:
- •ローカル変更の場合: レビュー対象の指定がない場合、
git diffおよびgit diff --stagedで差分を確認する。
2. 事前検証
- •リント:
uv run ruff check . - •フォーマット:
uv run ruff format --check . - •テスト:
uv run pytest -q - •(Optional) ビルド: 時間がかかるため、ユーザーの承認を得た場合にのみ実行する。
- •
uv run pyinstaller -y --clean --log-level=WARN build.spec
- •
3. 詳細な分析
- •コンテキストの補完: 詳細なレビューを要求されている場合、または、変更の意図や背景が不明瞭な場合、関連ファイルをすべて読み込み、全体の整合性を確認する。
以下の観点で分析:
- •規約準拠:
AGENTS.mdの指針に従うこと - •正確性: ロジックの欠陥、副作用、コードとコメントの乖離がないこと
- •保守性: 命名規則、基本原則(SoC, DRY, SOLID)や確立されたデザインパターンへの準拠
- •安全性: 脆弱性、セキュアコーディング
- •堅牢性: エッジケースの考慮、例外処理
- •性能: 計算効率、待ち時間
- •テスト網羅性
4. フィードバックの提示
- •概要: 変更の概要と全体的な評価
- •指摘事項:
重大,中度,軽微のレベル別で記述 - •結論: マージやコミットの可否、推奨や提案