---
task_id: task-2028
type: plan
scope: task
created: 2026-04-20
updated: 2026-04-20
status: completed
---

# 계획서: task-2028 — finish-task.sh 일원화 MVP

**task**: task-2028
**목표**: finish-task.sh를 유일한 작업 완료 경로로 만들어 QC->머지->.done 순차 강제
**승인**: 에이전트 미팅 3사이클 합의 (C안 채택)
**근거**: `memory/research/agent-meeting-quality-crisis.md`

---

## 목표

finish-task.sh가 QC->머지->.done->timer end->notify를 순차적으로 수행하는 유일한 완료 경로가 되어, 순서 불일치로 인한 워크트리 소실 + QC 헛돌기 문제를 해결한다.

## 범위

### 포함
1. finish-task.sh에 team_short, project_path 인자 확장
2. QC -> 머지 -> .done -> timer end 순차 로직
3. QC FAIL 시 .failed 이벤트 생성
4. 단계별 상태 파일 멱등성 (.qc-done, .merge-done)
5. qc_verify.py --gate에서 .done 생성 제거 (.qc-result만 생성)
6. DIRECT-WORKFLOW.md Step 수정
7. team_prompts.py 프롬프트 수정

### 제외 (다음 페이즈 이후)
- done-watcher.py .failed 패턴 추가 (별도 태스크)
- 소비자 기반 검증 (장기 검토)

## 위임 계획

- finish-task.sh 수정: **불칸(백엔드)** — 쉘 스크립트 로직
- qc_verify.py 수정: **불칸(백엔드)** — Python 코드
- DIRECT-WORKFLOW.md 수정: **팀장 직접** — 문서 작업
- team_prompts.py 수정: **불칸(백엔드)** — Python 코드
- 테스트 작성/실행: **아르고스(테스터)** — 검증

## 검증 기준

- [grep] `qc_verify.*--gate\|qc-done\|merge-done` @ `scripts/finish-task.sh` → 존재
- [grep] `\.failed` @ `scripts/finish-task.sh` → 존재
- [grep] `finish-task.sh.*team_short\|project_path` @ `prompts/DIRECT-WORKFLOW.md` → 존재
- [pytest] `tests/test_dispatch.py` → PASS
