---
task_id: task-2489
type: plan
scope: task
created: 2026-05-08
updated: 2026-05-08
status: completed
---

# 계획서: task-2489

**task**: task-2489
**목표**: Phase B 8종 종료 분류 enum + 자동 분류 룰 설계 + dry-run classifier 구현 (production 미반영)
**승인**: 회장 (2026-05-08, task-2489 발행 시)
**근거**: `memory/tasks/task-2489.md`, `memory/orchestration/phase_b_integration_items_260507.md`

---

## 목표

Phase B 통합 시 적용할 종료 분류 자동화 시스템의 청사진 + dry-run classifier를 격리 경로에 작성.
- 8종 분류 enum 명세 (boolean 조건식 + 우선순위)
- 마커 파일 컨벤션 표준화
- dry-run classifier (`tools/poc/termination_classifier.py`) — production 미반영
- 회귀 fixtures 5종 (task-2466 / 2481 / 2472+1 / 2483 / 2485) PASS

## 범위

### 포함
- `memory/orchestration/phase_b_termination_classifier_spec_260508.md` 분류 룰 설계 문서
- `tools/poc/termination_classifier.py` dry-run classifier (격리)
- `memory/poc/termination_classifier/fixtures/*.json` 회귀 fixtures
- `tests/poc/test_termination_classifier.py` 회귀 테스트
- `task-timer.py --reason` 옵션 명세 (문서만, 코드 X)

### 제외 (다음 페이즈 이후)
- ❌ task-timer.py production 수정 (회장 명시 금지)
- ❌ dispatch.py / scripts/* production 수정
- ❌ 실제 분류 dispatch / production marker 생성
- ❌ admin override

## 위임 계획

- 분류 룰 설계 문서: **모코시 (UX/UI)** — 정보 설계 + 의사결정 트리 구조화 강점
- dry-run classifier 구현: **스바로그 (백엔드)** — Python 룰 엔진 + dataclass 설계
- 회귀 fixtures + 테스트: **벨레스 (테스터)** — 5개 task 회귀 케이스 + pytest
- 통합 검토 + Codex 사전 검증: **페룬 (팀장)**

## 검증 기준

- 산출물 1: `ls memory/orchestration/phase_b_termination_classifier_spec_260508.md` → 존재
- 산출물 2: `python3 -c "from tools.poc.termination_classifier import classify; print(classify({}))"` → enum 반환
- 산출물 3: `pytest tests/poc/test_termination_classifier.py -v` → 5/5 PASS
- 격리 보장: `git diff memory/task-timer.py scripts/dispatch.py scripts/finish-task.sh` → 변경 없음
- Codex 사전 검증: PASS
