---
task_id: task-2486
type: checklist
scope: task
created: 2026-05-08
updated: 2026-05-08
status: completed
---

# 체크리스트: task-2486

**task**: task-2486

---

## Phase 0 — 헤르메스 (G1)
- [x] 작업 파일 / 차단 evidence 분석
- [x] 3문서 채우기 (plan/context/checklist)
- [x] worktree 생성: `/home/jay/workspace/.worktrees/task-2486-dev1`
- [x] Codex 사전 검증 PASS (2차, critical=false)
- [x] sanitize 게이트 (PII 0건 확인 — codex 호출 시 3건 자동 마스킹)

## Phase 1 — 불칸 (백엔드 — Sonnet)
- [x] A. `scripts/verify_workflow_sha_payload.py` 신설 (391줄, fallback chain + audit + canonical)
- [x] B. dry-run mode 통합
- [x] C. `.github/workflows/ci.yml` `gemini-review-gate` step 교체
- [x] D. `.github/workflows/ci.yml` `phase3-merge-gate` step 교체
- [x] E. `tests/regression/fixtures/workflow_sha_payload/` 4 fixture + 4 expected
- [x] F. micro-commit `3d19ec79` (rebase 후 `c776411c`)

## Phase 2 — 아르고스 (테스터 — Sonnet)
- [x] A. `tests/regression/test_workflow_sha_payload.py` 신설 (323줄, 10 케이스)
- [x] B. pytest 10/10 PASS
- [x] C. micro-commit `0b2b51ac` (rebase 후 `6223d54a`)

## Phase 3 — 헤르메스 (G2 + G3)
- [x] A. `python3 scripts/verify_workflow_sha_payload.py --mode dry-run` exit 0 (4/4)
- [x] B. 회귀: `pytest tests/regression/test_workflow_sha_payload.py` 10/10 PASS
- [x] C. yaml.safe_load PASS / py_compile PASS / pyright 0 잔존
- [x] D. PR 생성 (PR #48)
- [x] E. Gemini 리뷰 medium 1건 도착 → 기각 사유 코멘트 + thread resolve
- [x] F. PR #48 MERGED (mergeCommit ed817260, 2026-05-07T16:29:18Z)
- [x] G. PR #47 재실행 결과 SHA 추출 정상화 확인 (이전 5회 빈값 → 이번 정상)
- [x] H. 보고서 작성 + 3문서 finalize
- [ ] I. `finish-task.sh` 실행 (다음 단계)

## 검증
- [x] verify_workflow_sha_payload.py 4/4 PASS
- [x] regression test 10/10 PASS
- [x] PR #48 11/11 required check SUCCESS → MERGED
- [x] PR #47 SHA payload 결함 100% 해소 (production 환경 검증)
- [x] forbidden_actions 위반 0건

## 범위 외 (후속)
- [ ] PR #47 evidence stale 처리 (task-2485 영역, 별도 후속)
- [ ] PR #42 / task-2483 / task-2484 chain 진행 (회장 명시 후속 chain)
