---
name: nuclear-approval
description: "핵미사일 발사코드: Context Purge + 제이회장님 승인 요청 프로세스"
triggers:
  - "핵미사일"
  - "nuclear"
  - "발사코드"
  - "승인 요청"
  - "컨텍스트 퍼지"
usage: "/nuclear-approval"
---

# nuclear-approval 스킬

아누가 `/nuclear-approval`을 호출하거나 핵미사일 관련 키워드를 언급할 때 이 스킬을 따른다.

**이 스킬이 다루는 것**: 3문서 검증 → Context Purge 제안 → 제이회장님 승인 요청 → 승인 후 실행 시작
**이 스킬이 다루지 않는 것**: 3문서 작성, 코딩 구현, QC 검증

**이 스킬을 켜는 조건**: 핵미사일/nuclear/발사코드/승인 요청/컨텍스트 퍼지 키워드 감지
**이 스킬을 끄는 조건**: 승인 완료 후 task-timer start 실행 완료, 또는 아누가 명시적으로 중단 요청

---

## 실행 절차

### STEP 1: 3문서 존재 확인 (환각 방지 게이트)

아누에게 현재 프로젝트의 3문서 경로를 확인한다.

**확인할 파일:**
- 계획서: `memory/plans/<프로젝트명>/plan.md`
- 맥락노트: `memory/plans/<프로젝트명>/context-notes.md`
- 체크리스트: `memory/plans/<프로젝트명>/checklist.md`

**검증 항목 (순서대로 모두 통과해야 함):**

1. **파일 존재 확인**: 위 3개 파일이 모두 실제로 존재하는가.
   - 파일이 하나라도 없으면: **즉시 중단**.
   - 중단 메시지: "3문서 미완성. 핵미사일 발사코드 실행 불가. 먼저 3문서를 작성하세요: `memory/plans/<프로젝트명>/`"

2. **YAML 프론트매터 유효성 확인**: 각 파일의 YAML 프론트매터에 아래 필드가 모두 존재하고 유효한가.
   - `task_id`: `task-` 접두사로 시작하는 비어있지 않은 값
   - `type`: `plan` / `context` / `checklist` 중 하나
   - `status`: `draft` / `approved` / `in-progress` / `done` 중 하나
   - 유효하지 않은 필드 발견 시: **즉시 중단**.
   - 중단 메시지: "YAML 프론트매터 오류: [오류 내용]. 3문서 스키마 규약 확인: `memory/specs/3docs-schema.md`"

3. **계획서 근거 확인**: 계획서(plan.md)의 모든 결정에 근거(코드 위치, 문서, 테스트 결과)가 인용되어 있는가.
   - 근거 없는 판단 = 환각. 발견 시: **즉시 중단**.
   - 중단 메시지: "계획서에 근거 없는 판단 발견: [해당 내용]. 근거를 추가한 후 다시 실행하세요."

모든 검증 통과 시 STEP 2로 진행.

---

### STEP 2: Context Purge 제안

현재 대화에 누적된 노이즈를 경고하고 새 대화 시작을 권장한다.

아누에게 다음을 안내한다:

```
[Context Purge 권장]

현재 대화에 계획/논의 과정에서 누적된 노이즈가 있습니다.
3문서가 완성되었으므로 새 대화에서 깨끗한 컨텍스트로 시작하는 것을 권장합니다.

→ 새 대화 시작 권장: 3문서를 첨부하여 새 세션 시작
→ 계속 진행: 아누가 판단하여 현재 대화에서 진행 가능

어떻게 하시겠습니까?
```

아누가 계속 진행을 선택하면 STEP 3으로 진행.
아누가 새 대화를 선택하면 여기서 종료 (새 세션에서 다시 `/nuclear-approval` 호출).

---

### STEP 3: 제이회장님께 승인 요청

승인 요청 메시지 형식: `references/approval-message-template.md`를 읽어 해당 형식대로 출력한다.

제이회장님의 응답을 기다린다.

---

### STEP 4: 승인 후 실행 절차

**승인 확인 후에만** 아래를 순서대로 실행한다.

1. **task-timer 시작**:
   ```
   python3 /home/jay/workspace/memory/task-timer.py start [task_id]
   ```

2. **팀 dispatch**: dispatch.py로 계획서에 명시된 담당팀에 위임.
   - 위임 메시지에 3문서 경로를 포함하여 전달.

3. **DON'T IMPLEMENT YET 해제 확인 메시지 출력**:
   ```
   [task_id] 승인 완료. DON'T IMPLEMENT YET 해제.
   담당팀에 위임 완료. 구현을 시작해도 됩니다.
   ```

**거부 시**: "계획 재검토가 필요합니다. 3문서를 수정한 후 다시 `/nuclear-approval`을 실행하세요."

---

## 금지사항

이 스킬 실행 중 절대 하면 안 되는 것:

1. **3문서 없이 승인 요청 금지** — STEP 1을 건너뛰고 STEP 3으로 가는 것 금지.
2. **근거 없는 계획 승인 요청 금지** — 계획서에 근거 없는 판단이 있으면 통과 불가.
3. **승인 전 코딩 시작 절대 금지** — 제이회장님의 명시적 승인 없이 구현 관련 코드 작성 금지.
4. **3문서 내용 각색 금지** — 승인 요청 요약 시 계획서 내용을 임의로 변경하거나 추가하는 것 금지.
5. **부분 승인 처리 금지** — 제이회장님이 "거부" 또는 조건부 응답 시 전체 재검토.

---

## 참조

- 3문서 스키마 규약: `memory/specs/3docs-schema.md`
- 아누 가이드 Section 2.2: `memory/specs/anu-guide.md`
- task-timer: `memory/task-timer.py`
- 실제 3문서 예시: `memory/plans/anu-guide-system/`
