- name
- code-review
- description
- How this organization reviews a change, and what a review must not let through.
- category
- engineering
# Reviewing a change
Read the whole change before commenting on any part of it. A review that
starts at the first diff hunk asks for things the third hunk already did.
## What a review is for
Correctness first, then clarity, then everything else. A comment about naming
on a change that corrupts data is a review that missed its job.
Say what is wrong and why it matters. "This is confusing" gives the author
nothing to act on; "this returns None when the list is empty, and the caller
indexes it" does.
## What must not pass
- A behaviour change with no test. Load `checklist.md` for the full list.
- A caught exception that is neither re-raised nor reported.
- A credential, token or key in the diff, including in a test fixture.
- A migration with no `downgrade`.
## How to say it
Distinguish what blocks from what does not. Prefix anything optional with
"nit:" so the author can tell in one pass which comments hold the merge.
When the fix is short, write it. A three-line suggestion is read; a paragraph
describing three lines is argued with.
在 GitHub 查看