[STK8-03] pr-review.sh Codex fallback 추가

작업 내용 (설계 의도)

변경 사항

.githooks/pr-review.sh의 Claude code-reviewer 호출 이후에 Codex fallback 로직을 추가한다. STK8-02와 동일한 fallback 전략을 적용한다.

Claude 실패 시 Codex로 재리뷰, 둘 다 실패하면 경고 출력 후 PR 생성 허용.

다이어그램

처리 흐름

sequenceDiagram
    participant D as Developer
    participant PR as pr-review.sh
    participant CL as Claude code-reviewer
    participant CO as Codex CLI

    D->>PR: gh pr create
    PR->>PR: gh pr create 명령 감지
    PR->>CL: code-reviewer 호출
    alt Claude 성공
        CL-->>PR: 리뷰 결과
        alt REQUEST_CHANGES 포함
            PR-->>D: exit 2 (PR 생성 거부)
        else
            PR-->>D: exit 0 (PR 생성 허용)
        end
    else Claude 실패
        PR->>CO: Codex fallback 호출
        alt Codex 성공
            CO-->>PR: 리뷰 결과
            alt REQUEST_CHANGES 포함
                PR-->>D: exit 2 (PR 생성 거부)
            else
                PR-->>D: exit 0 (PR 생성 허용)
            end
        else Codex 실패
            PR-->>D: exit 0 (경고 출력 후 허용)
        end
    end

테스트 케이스

  • Claude 성공 + APPROVED → PR 생성 허용
  • Claude 성공 + REQUEST_CHANGES → PR 생성 거부 (exit 2)
  • Claude 실패(빈 출력) → Codex fallback 호출됨
  • Codex fallback + REQUEST_CHANGES → PR 생성 거부 (exit 2)
  • Claude·Codex 둘 다 실패 → 경고 출력 후 PR 생성 허용