michael-denyer/pstack-claude

make-pr-easy-to-review

Prepare PRs for review by cleaning noisy history, improving PR descriptions, and adding reviewer guidance without changing code behavior.

查看源码
仓库原始内容

按源仓库内容呈现,保留标题、案例、代码、表格、链接以及原文引用的演示图片。

Make PR Easy to Review

Prepare a PR so a reviewer can quickly understand the intent, important files, and risk. The default goal is reviewability without behavior changes.

Workflow

  1. Resolve the target PR from the user-provided URL or current branch.
  2. Inspect commits, diff size, changed paths, generated files, and PR description.
  3. Identify reviewability issues: noisy commits, stale description, unrelated changes, mixed mechanical and logic changes, missing tests, or unclear reviewer entry points.
  4. Propose a plan before rewriting history or force-pushing.
  5. Apply safe improvements, then verify the tree or diff still matches the intended code.

History Cleanup

Only rewrite history when the user asks for it or agrees to the plan. Before rewriting:

bash
gh pr view <PR> --json title,headRefName,baseRefName,state,commits
git fetch origin <headRefName> <baseRefName>
ORIGINAL_TREE=$(git rev-parse origin/<headRefName>^{tree})

Good commit groupings usually follow dependency order:

  1. Schema/storage or generated API definitions.
  2. Core logic.
  3. Wiring and integration.
  4. UI or surface behavior.
  5. Tests.

After rewriting, verify content identity:

bash
echo "Original tree: $ORIGINAL_TREE"
echo "Current tree:  $(git rev-parse HEAD^{tree})"
git diff origin/<headRefName> --stat

Do not push if the tree changed unintentionally.

Reviewer Guidance

When code behavior should stay untouched, prefer PR description and review notes:

  • Add a TL;DR that matches the actual diff.
  • Separate core files from generated or mechanical files.
  • Call out risky behavior changes, migration order, rollout plan, and test coverage.
  • Link issue trackers, dashboards, or design docs when they explain intent.

Guardrails

  • Never hide meaningful behavior changes inside "cleanup".
  • Do not bypass hooks unless the user explicitly asks.
  • If the PR is too large to make reviewable with notes, recommend splitting instead of polishing around the problem.
来自同一仓库

更多 Skills

全部 Skills