Files
pnpm/.git-wt/pr-hook
Zoltan Kochan d7ba22ef95 docs: add review guide (#12522)
Add REVIEW_GUIDE.md as the repository's canonical code-review guide, distilled
from the maintainer's review history. Centralize the review framework: move the
AI Review Guidance out of AGENTS.md into the guide, move the engineering
conventions into AGENTS.md's Code Style section, and update the CodeRabbit and
Qodo configs to apply the guide and split review focus between the two bots
(CodeRabbit on correctness/conventions, Qodo on security/performance).
2026-06-19 23:33:39 +02:00

39 lines
1.9 KiB
Bash
Executable File

#!/bin/sh
# Invoked by @zkochan/git-wt after `git wt <pr-number>` creates a worktree.
# Silently no-ops for contributors who don't have the requested agent installed.
case "${1:-}" in
'')
AGENT_CLI=claude
;;
*[!0-9]*)
AGENT_CLI=$1
;;
*)
AGENT_CLI=${2:-claude}
;;
esac
command -v "$AGENT_CLI" >/dev/null 2>&1 || exit 0
PROMPT="Review and fix PR #$PR_NUMBER. Steps:
1. Use gh to read the PR description, diff, and all review comments (both PR-level and inline).
2. Understand the intent of the PR and what each change does.
3. Resolve any conflicts with the base branch by running './shell/resolve-pr-conflicts.sh $PR_NUMBER'. This force-fetches the base branch (avoiding stale refs), rebases, and auto-resolves lockfile conflicts. If it prints MANUAL_RESOLUTION_NEEDED, read the listed conflicted files, resolve the conflict markers, run 'git add' on each resolved file, then run './shell/resolve-pr-conflicts.sh $PR_NUMBER --continue' to finish the rebase and push. Do NOT skip this step. Do NOT assume the branch is up to date.
4. Address every review comment — fix the code as requested or as appropriate.
5. Review the changed code with the framework in REVIEW_GUIDE.md (security first, performance second, then correctness) and the documented code conventions for the relevant stack — AGENTS.md and CONTRIBUTING.md for the TypeScript CLI, pacquet/AGENTS.md and pacquet/CODE_STYLE_GUIDE.md or pnpr/AGENTS.md for the Rust stacks. Fix any issues you find in the changed code.
6. Run the relevant tests to verify your fixes work.
7. Give me a summary of what you found and what you changed, including any conflicts you resolved.
Do NOT push. Leave all non-merge changes unstaged for me to review."
case "$AGENT_CLI" in
claude)
exec "$AGENT_CLI" --dangerously-skip-permissions "$PROMPT"
;;
codex)
exec "$AGENT_CLI" --dangerously-bypass-approvals-and-sandbox "$PROMPT"
;;
*)
exec "$AGENT_CLI" "$PROMPT"
;;
esac