ADR-003 prod 배포 게이트 = qa-gate job + environment 보호

상태

채택 (2026-07-03)

맥락

prod 배포는 main 기준 + private-qa PASS를 필수 선행 조건으로 한다(FR-4). QA 미통과 상태의 prod 배포 경로는 0건이어야 한다(NFR 강제). private-qa 에이전트 자체 구현은 범위 밖.

결정

  • deploy-prod.yml 1단계 qa-gate job이 qa/verdict.json을 읽어 3중 검증: ① status==PASScommit==배포 대상 SHA (stale PASS 차단) ③ 파일 존재·형식 유효. 실패 시 즉시 종료.
  • deploy job은 needs: qa-gate + environment: production(필수 승인 보호 규칙) → 자동+수동 2중 관문.
  • verdict 계약: { status, commit, reportUrl, ranAt }. FR-7 위해 원문을 artifact + step summary에 기록.
  • 최소 QA 기준(M4 전제): PRD User Scenarios 1~5 해피패스 E2E 전건 통과 = PASS.

대안과 미채택 사유

  • 브랜치 보호만: QA 게이트 부재로 FR-4 위반.
  • 외부 승인 서비스 연동: verdict 파일 + environment 보호로 충분, 과함.

결과

  • QA 미통과 prod 배포 0건 강제. private-qa 구현과 워크플로가 verdict 파일 계약으로 느슨 결합.
  • stale PASS(이전 커밋 통과분으로 신규 배포) 차단.