---
task_id: task-2405
type: checklist
scope: task
created: 2026-05-03
updated: 2026-05-03
status: completed
---

# 체크리스트: task-2405

**task**: task-2405

---

## Phase 1 — 오딘 (설계)

- [x] A. task 파일 분석 + session-watchdog.sh 현재 코드 분석
- [x] B. 3문서 작성 (plan/context-notes/checklist)
- [x] C. Codex 사전 검증 (PASS, 6 risks 모두 설계에 반영)
- [x] D. 3 Step Why A-B-C 일관성 검증

## Phase 2 — 토르 (구현)

- [x] A. Fix A: should_skip_for_escalate() 의미 반전 (line 214-225)
- [x] B. Fix B: .done.notified 추가 + 자동 박제 (line 286-298)
- [x] C. Fix C: should_skip_for_superseded 함수 + 진입 필터 (line 44-63, 357-370)
- [x] D. Fix D: 화이트리스트 주석에 "회장 정의 D" 명시 (line 35)
- [x] E. shellcheck error 0건
- [x] F. Edit 직후 grep 검증 (4 fix 모두 grep으로 확인)

## Phase 3 — 헤임달 (테스트)

- [x] A. test_watchdog_chairman_definition.py 신규 16개 시나리오
- [x] B. pytest 16/16 PASS
- [x] C. 기존 test_watchdog_noise_elimination.py 14/14 회귀 PASS (line 244-264 의미 반전 적용)

## Phase 4 — 오딘 (L1 검증)

- [x] A. WATCHDOG_DRY_RUN=1 실행 → false alert 0건 확인
- [x] B. 현 escalated task 7건 모두 RUNNING_TASKS 제외 확인
- [x] C. 회장 정의 OK/NG 매트릭스 작성 (보고서)

## Phase 5 — 마아트/Gemini (G2/G3)

- [x] A. Sanitize 게이트 (시스템 코드 — PII 0건)
- [x] B. 마아트 독립 검증 (PASS, 머지 권고 YES)
- [ ] C. PR 생성 + Gemini 리뷰 (시스템 코드, 메인 브랜치 직접 머지)
- [ ] D. G3 독립 검증 (g3_independent_verifier.py 호출 예정)

## 검증

- [x] pytest test_watchdog_chairman_definition.py 16/16 PASS
- [x] pytest test_watchdog_noise_elimination.py 14/14 PASS 회귀 유지
- [x] shellcheck scripts/session-watchdog.sh error 0건
- [x] L1 DRY_RUN false alert 0건
- [ ] 보고서 작성 + finish-task.sh 호출 (진행 중)
