---
project: bot-capability-system
type: checklist
scope: system
created: 2026-05-02
updated: 2026-05-02
status: in-progress
---

# 체크리스트: 봇 Capability 시스템

## P0 (task-2364, dev7 / 이참나) — 머지 완료 `05755351` PR #5 (2026-05-02)

- [x] A. capability schema 스펙 문서 (`memory/specs/bot-capability-model.md`)
- [x] B. `scripts/task-scope-guard.sh` PoC 구현
- [x] C. `dispatch.py` capability 검증 함수 추가 (legacy: `--allow-no-scope`)
- [x] D. `scripts/finish-task.sh` scope-check 훅 추가 (Step 1.6)
- [x] E. `memory/capabilities/.gitkeep`
- [x] F. CLAUDE.md 5대 규칙 추가
- [x] G. 시뮬레이션 테스트 통과 (12 pytest PASS — codegraph cron 차단)
- [x] H. 회귀 테스트 통과 (pytest)

> P0 핫픽스 — task-2371 (이참나, dev7): fail-closed 강제 (worktree finish 실패 시 .done 차단). 머지 완료.

## P1 (task-2367, dev7 / 이참나) — Tiered Auto-Merge + Audit + Health Probe — 머지 완료 `9973449f` PR #6 (2026-05-02)

- [x] A. `auto_merge.py` Tier 분류 (Lv 기반 + scope + diff size)
- [x] B. `memory/audit/auto-merge.log` append-only 구현
- [x] C. Post-merge health probe (5분 후 재검증)
- [x] D. Auto revert PR 자동 생성 (`git revert -m 1` 안전 패턴)
- [x] E. Circuit Breaker (봇 3회 violation → 자동 차단)
- [x] F. 의존: P0 머지 후 시작 — 충족

## P2 (task-2370, dev3 / 다그다) — Telegram Inline Button + Daily Digest — 진행 중

- [ ] A. `anu-confirm-bot` webhook (별도 봇)
- [ ] B. callback_data 서명 + 5분 TTL
- [ ] C. Daily Digest 매일 09:00 발송
- [ ] D. 랜덤 10% 인간 검토 표시
- [ ] E. 의존: P1 머지 후

## P3 (task-XXX, dev6 또는 dev2) — Dashboard 권한/사고 시각화

- [ ] A. 봇별 capability matrix 시각화
- [ ] B. 자동 머지/롤백 이력 타임라인
- [ ] C. Circuit Breaker 상태 표시
- [ ] D. Scope violation 빨간 사이렌 배너
- [ ] E. 의존: P0/P1/P2 완료 후

## 운영 지표 (P0 머지 후 1주 측정)

- [ ] capability 미명시로 거부된 dispatch 건수
- [ ] scope-violation 발생 건수 + 차단 성공률
- [ ] legacy `--allow-no-scope` 우회 건수 (점진적 마이그레이션 진척도)
- [ ] finish-task scope-check 평균 소요 시간 (성능 영향)
