status that moves through a fixed state machine. A review starts in DRAFT when the reviewer creates it and ends at one of three terminal states when they submit.
Use the submit review endpoint to leave DRAFT. Any transition that is not allowed returns 409 Conflict. Status changes are recorded with timestamps (changes_requested_at, approved_at, rejected_at).
The parent request has its own lifecycle — see Request status lifecycle.
State diagram
States
Transitions
- Creating a review starts it in
DRAFT. Calling create again while a draft exists for that reviewer resumes that draft instead of creating a duplicate. PATCHon a review is allowed only while it is inDRAFT.submitwithapprove,request_changes, orrejectmoves the review out ofDRAFTand advances the parent request with the same event.- Submitted reviews are immutable.