( isDraft: boolean, reviewDecision: string, )
| 24 | * reviewDecision can be: APPROVED, CHANGES_REQUESTED, REVIEW_REQUIRED, or empty string. |
| 25 | */ |
| 26 | export function deriveReviewState( |
| 27 | isDraft: boolean, |
| 28 | reviewDecision: string, |
| 29 | ): PrReviewState { |
| 30 | if (isDraft) return 'draft' |
| 31 | switch (reviewDecision) { |
| 32 | case 'APPROVED': |
| 33 | return 'approved' |
| 34 | case 'CHANGES_REQUESTED': |
| 35 | return 'changes_requested' |
| 36 | default: |
| 37 | return 'pending' |
| 38 | } |
| 39 | } |
| 40 | |
| 41 | /** |
| 42 | * Fetch PR status for the current branch using `gh pr view`. |