@henry1981/nondev-harness-plugin 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  name: clarify-nondev
3
- description: Use when starting a non-developer deliverable task requiring PRD authoring before plan/execute/review — SOP/QMS/compliance document, audit/legal response, markdown-body rule·skill·harness revision, or wiki filing/reference curation. Performs task-type judgment, just-in-time context search, and PRD 8-element generation as plan-nondev input. Triggers on "비개발자 작업 시작", "SOP 개정", "법률 메모 작성", "audit 응답", "compliance 검토", "wiki filing", "reference 정리", "규제 질의 답변", "규칙 개정", "스킬 개정", "비개발자 PRD 작성". Skip for programming tasks (use superpowers:brainstorming) or single-unit tasks (한 줄 수정·파일 1개 cp·메모리 항목 추가 등). Medical-device regulatory work enters here and is delegated to medical-device-ra-qa-frame at Step 1 after domain identification.
3
+ description: Use when starting a non-developer deliverable task requiring PRD authoring before plan/execute/review — SOP/QMS/compliance document, audit/legal response, markdown-body rule·skill·harness revision, or wiki filing/reference curation. Performs task-type judgment, just-in-time context search, and PRD 8-element generation as plan-nondev input. Triggers on "비개발자 작업 시작", "SOP 개정", "법률 메모 작성", "audit 응답", "compliance 검토", "wiki filing", "reference 정리", "규제 질의 답변", "규칙 개정", "스킬 개정", "비개발자 PRD 작성". Skip for programming tasks (use superpowers:brainstorming) or single-unit tasks (한 줄 수정·파일 1개 cp·메모리 항목 추가 등).
4
4
  ---
5
5
 
6
6
  # Clarify-nondev — 비개발자 PRD 8 항목 생성기
7
7
 
8
- 비개발자 산출물 작업 진입 시 PRD `docs/superpowers/specs/2026-05-14-nondev-harness-prd-v2.md` §7 §단계 1 정의 8 항목을 채워 plan-nondev 입력으로 넘긴다. 본 스킬은 PRD v2.4 §5 §단계 1 매핑 영역의 PRD 생성기 역할이다.
8
+ 비개발자 산출물 작업 진입 시 §단계 1 PRD 8 항목을 채워 plan-nondev 입력으로 넘긴다. 본 스킬은 비개발자 하네스 4단계 흐름(PRD → Plan → Execute → Review) 중 §단계 1(PRD 생성기) 역할이며, PRD 8 항목·완성 판단 신호등 5 항목 정의를 자체 보유한다(§Output Format·§Workflow Step 5).
9
9
 
10
10
  ## 언제 사용하는가
11
11
 
@@ -21,15 +21,12 @@ description: Use when starting a non-developer deliverable task requiring PRD au
21
21
  - 프로그래밍 작업 (코드 구현·bug fix·리팩토링) → `superpowers:brainstorming`
22
22
  - 단건 작업 (검증 단위 1개, 한 줄 수정·파일 1개 cp·메모리 추가 등) — 직접 진행, PRD 작성 불필요
23
23
 
24
- 참고: 의료기기 인허가 특화 작업도 본 스킬로 진입한다. Step 1에서 의료기기 SaMD·허가·임상시험·수가 등 도메인 판정 시 `medical-device-ra-qa-frame`으로 위임되며 본 스킬은 Step 2 진입 없이 종료된다 (§Workflow Step 1 참조).
25
-
26
24
  ## 전제·의존성
27
25
 
28
- 본 스킬 성립 전제 3종. 위반 시 아래 Step에서 자산 호출 실패 또는 출력 schema 재작성 필요.
26
+ 본 스킬 성립 전제 2종. 위반 시 아래 Step에서 자산 호출 실패 또는 출력 schema 재작성 필요.
29
27
 
30
- 1. **PRD v2 본문 실존**: `docs/superpowers/specs/2026-05-14-nondev-harness-prd-v2.md` 영역에 §7 §단계 1 PRD 8 항목 정의·§9 신호등 5 항목·§주 영속 결정 본문 보존
31
- 2. **모노레포 자산 실존**: `.claude/agents/narrator.md`·`strategist.md`·`critic.md` + `.claude/skills/medical-device-ra-qa-frame/skill.md` 4건 존재
32
- 3. **plan-nondev 스킬 입력 계약 수락**: 후속 plan-nondev 스킬이 본 스킬 §Output Format PRD 8 항목 markdown 본문을 입력으로 수락. plan-nondev가 다른 형식 요구 시 §Output Format 재작성 필요
28
+ 1. **보조 agent 실존**: `critic`·`narrator`·`strategist` 3 agent가 plugin 번들에 동봉돼 Agent tool로 호출 가능 (§Asset Invocation Matrix). 부재 해당 Step의 보조 호출만 스킵하고 기본 흐름은 유지
29
+ 2. **plan-nondev 스킬 입력 계약 수락**: 후속 plan-nondev 스킬이 본 스킬 §Output Format PRD 8 항목 markdown 본문을 입력으로 수락. plan-nondev가 다른 형식 요구 시 §Output Format 재작성 필요
33
30
 
34
31
  ---
35
32
 
@@ -39,16 +36,14 @@ description: Use when starting a non-developer deliverable task requiring PRD au
39
36
 
40
37
  ### Step 1 — 작업 타입 판정 + 도메인 라벨 결정
41
38
 
42
- HB 첫 발화 분석 + 작업 타입 + 도메인 라벨 동시 결정.
39
+ 사용자 첫 발화 분석 + 작업 타입 + 도메인 라벨 동시 결정.
43
40
 
44
41
  - **작업 타입 명시 있으면** (예: "SOP 개정 작업", "compliance 검토") → 도메인 라벨 catch 후 Step 2 진입
45
- - **명시 없으면** 1질문 출력 — "이 작업은 어느 도메인 영역인가요? (예: rwe-vendor-audit / compliance/pasta-singapore-hsa / iso-13485 SOP / 다른 도메인 라벨)"
46
-
47
- 도메인 라벨은 PRD v2.4 §7 §단계 1 §1 정의 — 분류 코드 (c/f/d/g)가 아닌 도메인 라벨 형태. PRD §단계 1 §1 직접 흡수 영역.
42
+ - **명시 없으면** 1질문 출력 — "이 작업은 어느 도메인 영역인가요? (예: 감사 대응 / 규제 컴플라이언스 검토 / SOP 개정 / 다른 도메인 라벨)"
48
43
 
49
- **의료기기 인허가 도메인 판정 위임**: 작업 타입 확정 과정에서 의료기기 SaMD·허가·임상시험·수가·NHT·IFU·품목분류·급여·기술문서·인허가 전략 등 도메인 키워드가 핵심 주제로 판정되면 `medical-device-ra-qa-frame`로 위임 + 본 스킬 Step 2 진입 없이 종료. 위임 후 medical-device-ra-qa-frame이 도메인 frame 주입 + 명확화를 담당한다.
44
+ 도메인 라벨은 분류 코드가 아닌 도메인 영역 명칭 형태다 (§Output Format §1 정합).
50
45
 
51
- **혼합 브랜치 처리**: rules/workflow.md §작업 진입 판정 gate 적용:
46
+ **혼합 브랜치 처리**: 핵심 산출물의 1차 형태로 분기한다:
52
47
  - 핵심 산출물이 markdown 본문 → 비개발자 규율 (본 스킬 진행)
53
48
  - 핵심 산출물이 hook 스크립트·command 스크립트 → 프로그래밍 인접 (본 스킬 중단, `superpowers:brainstorming`으로 위임)
54
49
  - 본문이 wiki 페이지·reference 정리 → 비개발자 규율 (본 스킬 진행)
@@ -60,9 +55,9 @@ LLM 자율 호출. 사전 surface 절차 강제 없음 — 아래 3 항목 체
60
55
 
61
56
  | # | 자문 | 호출 도구 |
62
57
  |---|---|---|
63
- | (a) | HB 첫 발화에 파일명·SOP 코드·DP 번호·도메인 용어 등장했는가? | Grep / Glob |
64
- | (b) | 작업 타입 기반 자료군 — SOP면 `sop/`·`refs/`·wiki entity / 감사면 `rwe-vendor-audit/`·`audit_QA_Talking_Points` / 규칙·스킬이면 `rules/`·`.claude/skills/` / wiki면 `wiki/sources/` | Glob + Read |
65
- | (c) | 관련 wiki 페이지·`tasks/lessons.md`·memory 항목·`deliverables/` 선행 사례 | Grep + wiki query |
58
+ | (a) | 사용자 첫 발화에 파일명·SOP 코드·DP 번호·도메인 용어 등장했는가? | Grep / Glob |
59
+ | (b) | 작업 타입 기반 자료군 — SOP면 절차서·규정 디렉토리 / 감사면 audit 대응 자료 / 규칙·스킬이면 rules·skill 디렉토리 / 지식 베이스면 소스 디렉토리 | Glob + Read |
60
+ | (c) | 관련 지식 베이스 페이지·교훈 기록·memory 항목·선행 산출물 사례 | Grep + 지식 베이스 query |
66
61
 
67
62
  호출 안 해도 되면 스킵. **호출 결과는 Step 3·Step 4의 input**.
68
63
 
@@ -77,40 +72,40 @@ PRD 8 항목 전체 작성 진입 전 cutoff 4 조건 모두 충족 여부 catch
77
72
 
78
73
  4 조건 모두 충족 시 PRD Lite 4 항목 축약본 산출 (작업 유형·작업 목표·산출물·제약). PRD 8 항목 전체 작성 부담 우회. Step 4 PRD 8 항목 채우기 영역 → PRD Lite 4 항목 채우기 영역으로 단축.
79
74
 
80
- **PRD Lite도 생략 X 영역** (HB 명시 정합): repo 변경·외부 발신·규제·법규 판단·source_fidelity 요구 있으면 plan-nondev + execute-nondev + deliverable-review 흐름 생략 X. PRD Lite는 *작성 부담 단축*이지 *후속 흐름 생략*이 아니다.
75
+ **PRD Lite도 생략 X 영역** (사용자 명시 정합): repo 변경·외부 발신·규제·법규 판단·source_fidelity 요구 있으면 plan-nondev + execute-nondev + deliverable-review 흐름 생략 X. PRD Lite는 *작성 부담 단축*이지 *후속 흐름 생략*이 아니다.
81
76
 
82
77
  cutoff 4 조건 중 1건이라도 X면 Step 4 PRD 8 항목 전체 작성 영역 진입.
83
78
 
84
79
  ### Step 4 — PRD 8 항목 채우기
85
80
 
86
- PRD v2.4 §7 §단계 1 정의 8 항목을 순차 채움. PRD `docs/superpowers/specs/2026-05-14-nondev-harness-prd-v2.md` §7 line 98~111 영역 본문 직접 참조 (v2.4 ship 시점 실측 기준).
81
+ §Output Format에 정의된 PRD 8 항목을 순차 채운다.
87
82
 
88
83
  각 항목 채우기 흐름:
89
84
 
90
85
  | # | 항목 | 채우기 source | 채우기 영역 |
91
86
  |---|---|---|---|
92
87
  | 1 | **작업 유형** | Step 1 도메인 라벨 | 도메인 라벨 형태 (분류 코드 X). PRD §7 §1 정합 |
93
- | 2 | **작업 목표** | HB 첫 발화 + Step 2 검색 | 한 단어·한 줄 압축. 모호 시 PRD 미완성 신호 — Step 5 hb_judgment_required 1라운드로 결정 |
94
- | 3 | **성공 판단 기준** | HB 첫 발화 + 도메인 amplification | 암묵지→명시지 변환 동반. 상황 논리·정서적 요인 명시. 시간 압박 시 trade-off 우선순위(PRD §3 3-layer — Never sacrifice / Can compress first / Escalate to HB) 인용 |
95
- | 4 | **지식 요구사항** | Step 2 검색 결과 | 기준(GT, 강제) + 참조(선택, HB 명시 시 추가). GT는 *문서·폴더 경로 단위*까지 (그 아래 줄·섹션은 plan-nondev 영역). 참조는 PRD에서 명시적으로 추가 가능 |
96
- | 5 | **산출물** | HB 첫 발화 | 형태(필수) + 목적(필수) + 대상(선택, 외부 발신 시 필수). 외부 발신 산출물의 경우 대상의 *특이 성향·필수 키워드·반드시 피해야 할 표현*까지 명시 |
88
+ | 2 | **작업 목표** | 사용자 첫 발화 + Step 2 검색 | 한 단어·한 줄 압축. 모호 시 PRD 미완성 신호 — Step 5 hb_judgment_required 1라운드로 결정 |
89
+ | 3 | **성공 판단 기준** | 사용자 첫 발화 + 도메인 amplification | 암묵지→명시지 변환 동반. 상황 논리·정서적 요인 명시. 시간 압박 시 trade-off 우선순위(PRD §3 3-layer — Never sacrifice / Can compress first / Escalate to 사용자) 인용 |
90
+ | 4 | **지식 요구사항** | Step 2 검색 결과 | 기준(GT, 강제) + 참조(선택, 사용자 명시 시 추가). GT는 *문서·폴더 경로 단위*까지 (그 아래 줄·섹션은 plan-nondev 영역). 참조는 PRD에서 명시적으로 추가 가능 |
91
+ | 5 | **산출물** | 사용자 첫 발화 | 형태(필수) + 목적(필수) + 대상(선택, 외부 발신 시 필수). 외부 발신 산출물의 경우 대상의 *특이 성향·필수 키워드·반드시 피해야 할 표현*까지 명시 |
97
92
  | 6 | **산출물 ↔ 참조 연계 역할** | Step 2 검색 결과 + GT 분석 | 본문 직접 인용 / 구조 틀 / 검증 기준 중 어느 역할인지 (3종) |
98
93
  | 7 | **스킬 (계획-구현-검증 흐름)** | 도메인 + plan-nondev·execute-nondev·deliverable-review 매핑 | 분량 강제 X, 함축 추구하되 강제 X. 명명된 자산 인용 또는 흐름 풀어 적기 |
99
- | 8 | **제약** | HB 첫 발화 + Step 2 검색 + 도메인 amplification | 표준 6 범주(시간·범위·형식·과거 결정·외부 의존·도메인 규제) 체크리스트 + 유사 작업 회상 + 암묵지 트리거 질문 세 보조 방법 병행. *불필요한 확장 금지* 영역 (PRD §8 — 미사여구·일반론·작업 노트 어휘 산출물 추가 X) |
94
+ | 8 | **제약** | 사용자 첫 발화 + Step 2 검색 + 도메인 amplification | 표준 6 범주(시간·범위·형식·과거 결정·외부 의존·도메인 규제) 체크리스트 + 유사 작업 회상 + 암묵지 트리거 질문 세 보조 방법 병행. *불필요한 확장 금지* 영역 (PRD §8 — 미사여구·일반론·작업 노트 어휘 산출물 추가 X) |
100
95
 
101
96
  LLM 자율 채우기 영역 + Step 5에서 hb_judgment_required 영역 catch.
102
97
 
103
98
  ### Step 5 — 핵심 결정 라운드 + PRD 신호등 self-check
104
99
 
105
- Step 4 PRD 8 항목 채우기 결과를 *PRD 작성 단계 결정 3분류*로 분리 (skill 자체 구조, PRD 원문 명시 X — Step 4·5 반복 round 차단 + HB 개입 영역 cap을 위한 본 skill 내부 보조 분류):
100
+ Step 4 PRD 8 항목 채우기 결과를 *PRD 작성 단계 결정 3분류*로 분리 (skill 자체 구조, PRD 원문 명시 X — Step 4·5 반복 round 차단 + 사용자 개입 영역 cap을 위한 본 skill 내부 보조 분류):
106
101
 
107
- - **confirmed**: HB 첫 발화·문서·이전 세션·PRD에서 이미 닫힌 결정. 본 Step에서 묻지 않고 Step 6 출력에만 반영
102
+ - **confirmed**: 사용자 첫 발화·문서·이전 세션·PRD에서 이미 닫힌 결정. 본 Step에서 묻지 않고 Step 6 출력에만 반영
108
103
  - **open**: LLM이 로컬 탐색(Read·Grep·Glob·wiki query) 또는 자율 판단으로 닫을 수 있는 결정. 본 Step에서 LLM이 먼저 닫는다 (질문 출력 X)
109
104
  - **hb_judgment_required**: 도메인 판단·정책 결정·되돌리기 어려운 경계(adapter 승격 여부 등). 본 Step에서 §Question Quality Pre-Self-Check 통과 후 1라운드 1질문으로 묻는다
110
105
 
111
106
  분류 후 hb_judgment_required 0건이면 Step 5 스킵 + PRD 신호등 self-check 영역 진입.
112
107
 
113
- **PRD §9 신호등 5 항목 self-check**: PRD 8 항목 채우기 후 PRD `docs/superpowers/specs/2026-05-14-nondev-harness-prd-v2.md` §9 line 196~212 영역 5 항목 시뮬레이션 (v2.4 ship 시점 실측 기준):
108
+ **PRD 완성 판단 — 신호등 5 항목 self-check**: PRD 8 항목 채우기 후 다음 5 항목을 시뮬레이션한다:
114
109
 
115
110
  | # | 항목 | 시뮬레이션 질문 | 신호 |
116
111
  |---|---|---|---|
@@ -120,23 +115,23 @@ Step 4 PRD 8 항목 채우기 결과를 *PRD 작성 단계 결정 3분류*로
120
115
  | 4 | 계획-구현-검증 흐름 명료성 | 세 단계 흐름이 모호함 없이 정리됐는가? | 녹/황/적 |
121
116
  | 5 | 제약 체크리스트 답변 후 추가 없음 | 표준 6 범주 답변 후 추가 항목이 없는가? | 녹/황/적 |
122
117
 
123
- - 전 항목 녹 → Step 6 출력 진입 (PRD §9 원문 "spec/plan 진입" 정합)
124
- - 황 1+ → HB 보강 후 재평가 (PRD §9 원문) skill 본문에서 LLM이 Step 4 회귀로 자동 보강 시도 가능하나, 보강 결과는 HB 재평가 의무. PRD §주 "LLM 자율주행 차단" 정합
125
- - 적 1+ → PRD 미완성 — HB 명시 신호 대기
118
+ - 전 항목 녹 → Step 6 출력 진입
119
+ - 황 1+ → 사용자 보강 후 재평가 — LLM이 Step 4 회귀로 자동 보강 시도 가능하나, 보강 결과는 사용자 재평가 의무 (LLM 자율주행 차단)
120
+ - 적 1+ → PRD 미완성 — 사용자 명시 신호 대기
126
121
 
127
- **최종 보증**: HB 명시 신호("이제 spec/plan 가자") — 신호등이 모호할 때 backstop.
122
+ **최종 보증**: 사용자 명시 신호("이제 spec/plan 가자") — 신호등이 모호할 때 backstop.
128
123
 
129
124
  라운드 상한 3 (Step 1 + Step 4 보강 + Step 5 합계). 3라운드 초과 시 §Escape Hatches "라운드 상한 도달" 발동.
130
125
 
131
126
  ### Step 6 — 출력 생성 + 다음 흐름 진입
132
127
 
133
- §Output Format PRD 8 항목 markdown 본문 산출 → HB에게 제시 + 승인 요청 → 승인 후 plan-nondev 진입 (default).
128
+ §Output Format PRD 8 항목 markdown 본문 산출 → 사용자에게 제시 + 승인 요청 → 승인 후 plan-nondev 진입 (default).
134
129
 
135
130
  ---
136
131
 
137
132
  ## Output Format — PRD 8 항목 markdown 본문
138
133
 
139
- Step 6 출력. PRD `docs/superpowers/specs/2026-05-14-nondev-harness-prd-v2.md` §7 §단계 1 본문 형식 답습. 산출 위치는 §산출물 위치 영역 참조.
134
+ Step 6 출력. PRD 8 항목 markdown 본문 형식은 다음과 같다. 산출 위치는 §산출물 위치 영역 참조.
140
135
 
141
136
  ### Full PRD (8 항목)
142
137
 
@@ -167,7 +162,7 @@ related_paths:
167
162
 
168
163
  - {판단 기준 1}
169
164
  - {판단 기준 2}
170
- - 시간 압박 trade-off 우선순위 — Never sacrifice (source fidelity·regulatory correctness·HB judgment boundaries) / Can compress first (optional polish·nonessential automation·broad research·secondary docs) / Escalate to HB when (Never sacrifice 영역 흔들림 시점)
165
+ - 시간 압박 trade-off 우선순위 — Never sacrifice (source fidelity·regulatory correctness·사용자 judgment boundaries) / Can compress first (optional polish·nonessential automation·broad research·secondary docs) / Escalate to 사용자 when (Never sacrifice 영역 흔들림 시점)
171
166
 
172
167
  ## 4. 지식 요구사항
173
168
 
@@ -215,8 +210,8 @@ related_paths:
215
210
 
216
211
  **분기 처리** (PRD §9 정합):
217
212
  - 전 항목 녹 → plan-nondev 진입 정합
218
- - 황 1+ → 해당 항목 보강 후 HB 재평가 의무 (LLM 자동 ship X)
219
- - 적 1+ → PRD 미완성, HB 명시 신호 대기 후 재작성
213
+ - 황 1+ → 해당 항목 보강 후 사용자 재평가 의무 (LLM 자동 ship X)
214
+ - 적 1+ → PRD 미완성, 사용자 명시 신호 대기 후 재작성
220
215
 
221
216
  ## 10. 본 PRD 변경 이력
222
217
 
@@ -265,11 +260,11 @@ prd_lite: true
265
260
 
266
261
  PRD 산출물 위치는 작업 영역에 따라 분기:
267
262
 
268
- - **PRD가 RWE Vendor Audit·SOP·compliance 도메인** `{project}/specs/YYYY-MM-DD-{topic}-prd.md` (예: `compliance/pasta-singapore-hsa/specs/2026-05-15-{topic}-prd.md`)
269
- - **PRD가 비개발자 하네스·rules·skill 영역** `docs/superpowers/specs/YYYY-MM-DD-{topic}-prd.md`
270
- - **PRD가 drafts 영역 (실험·아이디어)** `drafts/{topic}/specs/YYYY-MM-DD-{topic}-prd.md`
263
+ - **도메인 프로젝트 산출물** 해당 프로젝트의 spec 디렉토리 (예: `{project}/specs/YYYY-MM-DD-{topic}-prd.md`)
264
+ - **규칙·스킬·하네스 개정** 저장소의 spec·문서 디렉토리
265
+ - **실험·초안 영역** → drafts 디렉토리 (예: `drafts/{topic}/specs/YYYY-MM-DD-{topic}-prd.md`)
271
266
 
272
- frontmatter `related_paths`에 GT 자산 경로·후속 plan/handoff 경로 등록 의무 (KHC `rules/handoff.md` 정합).
267
+ frontmatter `related_paths`에 GT 자산 경로·후속 plan 경로를 등록한다.
273
268
 
274
269
  ---
275
270
 
@@ -284,7 +279,7 @@ PRD Lite는 plan-nondev Lite로 축약 가능하나 *후속 흐름 자체*는
284
279
  2. 외부 발신 X
285
280
  3. 산출물 생성 X
286
281
  4. 기존 문서 조회·단순 답변 영역
287
- 5. HB 명시 승인
282
+ 5. 사용자 명시 승인
288
283
 
289
284
  5 조건 중 1건이라도 X면 plan-nondev 강제 흐름 의무.
290
285
 
@@ -294,10 +289,10 @@ PRD Lite는 plan-nondev Lite로 축약 가능하나 *후속 흐름 자체*는
294
289
 
295
290
  4종. 라운드 상한 도달 이전이어도 조건 만족 시 바로 발동.
296
291
 
297
- - **명확하면 스킵**: HB 첫 발화에 작업 타입 + PRD 8 항목 + 핵심 결정까지 모두 명시 → Step 1~5 전체 스킵, Step 6 바로 진입
298
- - **라운드 상한 도달 (3라운드)**: "현재까지 명확화된 사항만으로 진행할까요, 아니면 추가 라운드 필요할까요?" HB 1줄 선택
299
- - **HB 통찰로 결정 축 재정의 요청**: HB가 "이 결정 축 자체가 맞나?" / "이거 더 고민할 요소야" / "잠깐 이 방향 다시 보자" 신호 감지 시 → 즉시 현재 라운드 중단 + 결정 축 재검토 진입
300
- - **HB 스킵 신호**: "그냥 바로 진행해" / "Clarify 스킵" 신호 → Step 6로 바로 진입, PRD 본문에 "Clarify 생략됨(HB 스킵 요청)" 기록
292
+ - **명확하면 스킵**: 사용자 첫 발화에 작업 타입 + PRD 8 항목 + 핵심 결정까지 모두 명시 → Step 1~5 전체 스킵, Step 6 바로 진입
293
+ - **라운드 상한 도달 (3라운드)**: "현재까지 명확화된 사항만으로 진행할까요, 아니면 추가 라운드 필요할까요?" 사용자 1줄 선택
294
+ - **사용자 통찰로 결정 축 재정의 요청**: 사용자가 "이 결정 축 자체가 맞나?" / "이거 더 고민할 요소야" / "잠깐 이 방향 다시 보자" 신호 감지 시 → 즉시 현재 라운드 중단 + 결정 축 재검토 진입
295
+ - **사용자 스킵 신호**: "그냥 바로 진행해" / "Clarify 스킵" 신호 → Step 6로 바로 진입, PRD 본문에 "Clarify 생략됨(사용자 스킵 요청)" 기록
301
296
 
302
297
  ---
303
298
 
@@ -307,13 +302,10 @@ PRD Lite는 plan-nondev Lite로 축약 가능하나 *후속 흐름 자체*는
307
302
 
308
303
  | 자산 | 위치 | 호출 규약 | 호출 시점 | 목적 |
309
304
  |---|---|---|---|---|
310
- | `clarify:vague` | `~/.claude/plugins/cache/team-attention-plugins/clarify/2.0.0/skills/vague/SKILL.md` | Skill tool | Step 4·5 요구사항이 계속 애매할 | 반복 질문으로 요구사항 구체화 |
311
- | `clarify:unknown` | 동일 경로 variant `unknown/` | Skill tool | Step 5 전략 blind spot 감지 시 | 4분면 분석으로 숨은 가정 표면화 |
312
- | `clarify:metamedium` | 동일 경로 variant `metamedium/` | Skill tool | Step 1~5 "내용 vs 형식" 재검토 신호 시 | 작업 형식 자체 재정의 |
313
- | `narrator` | `.claude/agents/narrator.md` | Agent tool `subagent_type: narrator` | Step 6 출력 직전 | HB에게 현재 진행도·전체 맥락 설명 |
314
- | `strategist` | `.claude/agents/strategist.md` | Agent tool `subagent_type: strategist` | Step 5 분기 시점 대안 필요 시 | 현재 접근 외 대안 + 트레이드오프 |
315
- | `critic` | `.claude/agents/critic.md` | Agent tool `subagent_type: critic` | Step 5 권장안 확정 직전 | Devil's advocate로 약점·리스크 점검 |
316
- | `medical-device-ra-qa-frame` | `.claude/skills/medical-device-ra-qa-frame/skill.md` | Skill tool | Step 1 결과 의료기기 인허가 도메인 판정 시 | 하위 도메인 스킬로 위임, 본 스킬 종료 |
305
+ | `narrator` | `${CLAUDE_PLUGIN_ROOT}/agents/narrator.md` (plugin 번들) | Agent tool `subagent_type: narrator` | Step 6 출력 직전 | 사용자에게 현재 진행도·전체 맥락 설명 |
306
+ | `strategist` | `${CLAUDE_PLUGIN_ROOT}/agents/strategist.md` (plugin 번들) | Agent tool `subagent_type: strategist` | Step 5 분기 시점 대안 필요 시 | 현재 접근 대안 + 트레이드오프 |
307
+ | `critic` | `${CLAUDE_PLUGIN_ROOT}/agents/critic.md` (plugin 번들) | Agent tool `subagent_type: critic` | Step 5 권장안 확정 직전 | Devil's advocate로 약점·리스크 점검 |
308
+ | `clarify` plugin (vague·unknown·metamedium) | 외부 clarify plugin (설치 시) | Skill tool | Step 4·5 요구사항 애매 / 전략 blind spot / 내용 vs 형식 재검토 시 | 반복 질문·4분면 분석·형식 재정의 미설치 시 LLM 직접 처리로 대체 |
317
309
 
318
310
  ---
319
311
 
@@ -329,8 +321,8 @@ PRD Lite는 plan-nondev Lite로 축약 가능하나 *후속 흐름 자체*는
329
321
  ### 체크 2 — 로컬 탐색 선행
330
322
 
331
323
  - 이 질문의 답을 Read·Glob·Grep·wiki query로 LLM이 직접 확인 가능한가?
332
- - 가능하면 **먼저 탐색** → 탐색 결과 바탕으로 질문 재평가 → 여전히 HB 판단 필요 시에만 질문 출력
333
- - "로컬 탐색 없이 추정 질문"은 HB 명시 안티패턴. 위반 시 HB 리뷰 흐름 붕괴
324
+ - 가능하면 **먼저 탐색** → 탐색 결과 바탕으로 질문 재평가 → 여전히 사용자 판단 필요 시에만 질문 출력
325
+ - "로컬 탐색 없이 추정 질문"은 사용자 명시 안티패턴. 위반 시 사용자 리뷰 흐름 붕괴
334
326
 
335
327
  ### 체크 3 — 1라운드 1질문 원칙
336
328
 
@@ -353,11 +345,11 @@ PRD Lite는 plan-nondev Lite로 축약 가능하나 *후속 흐름 자체*는
353
345
 
354
346
  | 합리화 | 실제 |
355
347
  |---|---|
356
- | "HB에게 일단 물어보는 게 빠르다" | 탐색 가능한 정보를 묻는 건 HB 시간 낭비 + 추정 기반 응답 유도 |
348
+ | "사용자에게 일단 물어보는 게 빠르다" | 탐색 가능한 정보를 묻는 건 사용자 시간 낭비 + 추정 기반 응답 유도 |
357
349
  | "여러 가능성 다 물어보자" | 체크 3 위반. 1라운드 1질문 원칙 |
358
350
  | "이 질문은 필수는 아니지만..." | 체크 1 실패 신호. 본질무관이면 출력 금지 |
359
- | "HB가 알려주지 않으면 어차피 진행 못 해" | 진짜 그런지 검증해라 — 대부분 LLM이 로컬 탐색으로 해소 가능 |
360
- | "이 정도는 가볍게 물어봐도..." | "가볍게"가 HB 리뷰 흐름을 깨는 주원인 |
351
+ | "사용자가 알려주지 않으면 어차피 진행 못 해" | 진짜 그런지 검증해라 — 대부분 LLM이 로컬 탐색으로 해소 가능 |
352
+ | "이 정도는 가볍게 물어봐도..." | "가볍게"가 사용자 리뷰 흐름을 깨는 주원인 |
361
353
 
362
354
  ---
363
355
 
@@ -366,17 +358,16 @@ PRD Lite는 plan-nondev Lite로 축약 가능하나 *후속 흐름 자체*는
366
358
  | 합리화 | 반박 |
367
359
  |---|---|
368
360
  | "Step 2 자율이라고 했으니 탐색 안 해도 된다" | 자율 = 필요 판단은 자율, 필요하면 무조건 호출. "호출 안 함" default 아님 |
369
- | "HB가 작업 타입 명시했으니 Step 1 스킵" | 맞다. Step 2·3·4·5는 여전히 진행 — 판단 조기 종료 금지 |
361
+ | "사용자가 작업 타입 명시했으니 Step 1 스킵" | 맞다. Step 2·3·4·5는 여전히 진행 — 판단 조기 종료 금지 |
370
362
  | "PRD 8 항목 중 1~2개는 생략해도 된다" | plan-nondev 입력 계약 위반. 해당 없으면 명시적 "해당 없음" 표기 |
371
363
  | "PRD Lite cutoff 4 조건 중 3건만 충족해도 Lite 적용" | cutoff 4 조건 모두 충족 시만 Lite. 1건이라도 X면 PRD 8 항목 전체 작성 |
372
364
  | "PRD Lite는 후속 흐름도 생략 가능" | Lite는 *작성 부담 단축*이지 *후속 흐름 생략* X. plan-nondev + execute-nondev + deliverable-review 흐름은 그대로 |
373
- | "라운드 상한 넘어도 한 번만 더..." | 상한 도달 시 escape hatch 발동이 규율. 연장은 HB 명시 승인 후에만 |
365
+ | "라운드 상한 넘어도 한 번만 더..." | 상한 도달 시 escape hatch 발동이 규율. 연장은 사용자 명시 승인 후에만 |
374
366
  | "PRD 신호등 황 1건은 무시해도 된다" | 황 1+ → Step 4 회귀 의무. 신호등 우회는 PRD 미완성 ship으로 직결 |
375
367
 
376
368
  ---
377
369
 
378
370
  ## Notes
379
371
 
380
- - **PRD v2.4 매핑**: 본 스킬은 PRD `docs/superpowers/specs/2026-05-14-nondev-harness-prd-v2.md` §5 §단계 1 PRD = `clarify-nondev` (개정) 매핑 영역. PRD §7 §단계 1 8 항목 + §9 신호등 5 항목 정의를 스킬 출력에 직접 흡수
381
- - **개정 규율**: 본 스킬 수정 시 반드시 `skill-creator` 경유 (rules/workflow.md §스킬 수정)
382
- - **dogfood 영역**: 본 스킬 자체가 *비개발자 하네스 PRD 작성기*라 첫 dogfood는 비개발자 작업 진입 시점. 본 cycle (plan v2.12 Task 7 E2E smoke test)에서 4 skill 연계 dogfood 진행
372
+ - **하네스 위치**: 본 스킬은 비개발자 하네스 4단계 §단계 1(PRD) 생성기다. PRD 8 항목 + 완성 판단 신호등 5 항목 정의를 자체 보유한다.
373
+ - **개정 규율**: 본 스킬 수정 시 skill-creator 경유.
@@ -5,23 +5,23 @@ description: Use when finishing a document deliverable (law memo, SOP, tech spec
5
5
 
6
6
  # Deliverable Review
7
7
 
8
- Domain verification gate for document deliverables. The goal is to catch the failure modes that keep showing up in feedback memory — missed exception clauses, scope creep, unverified assumptions, misattributed specs — **before** HB sees the draft, not after.
8
+ Domain verification gate for document deliverables. The goal is to catch the failure modes that keep showing up in feedback memory — missed exception clauses, scope creep, unverified assumptions, misattributed specs — **before** the user sees the draft, not after.
9
9
 
10
10
  This skill is a **dispatcher**. The actual review happens in a reviewer agent. Your job here is: detect document type, pick the right reviewer, hand it the file + context, and format the result.
11
11
 
12
12
  ## Why This Exists
13
13
 
14
- HB's 6-axis harness diagnosis put 검증 (verification) at 5/10 — the thinnest axis. The pattern: doctrine is strong ("Verify Before Done", "Problem Diagnosis First"), but there's no automation for document deliverables, so the same verification failures keep accumulating as `feedback_*.md` entries. This skill closes that loop by turning those feedbacks into an active pre-flight check.
14
+ Verification is the thinnest axis of most document workflows: doctrine is strong ("verify before done", "diagnose the problem first"), but there is no automation for document deliverables, so the same verification failures keep recurring. This skill closes that loop by turning recorded feedback into an active pre-flight check.
15
15
 
16
- Every run should reduce the probability of a new `feedback_*` entry being written for the same class of mistake.
16
+ Every run should reduce the probability of a new feedback entry being written for the same class of mistake.
17
17
 
18
18
  ## When To Trigger
19
19
 
20
20
  Invoke this skill when any of the following is true:
21
- - HB explicitly says `/deliverable-review`, "산출물 검증", "리뷰 돌려", "검증 게이트", "검토 돌려"
22
- - A deliverable file under `drafts/`, `deliverables/`, `compliance/`, `wiki/pages/` was just created or substantially edited, and HB is about to conclude the session
21
+ - the user explicitly says `/deliverable-review`, "산출물 검증", "리뷰 돌려", "검증 게이트", "검토 돌려"
22
+ - A deliverable file under `drafts/`, `deliverables/`, `compliance/`, `wiki/pages/` was just created or substantially edited, and the user is about to conclude the session
23
23
  - The `wrap` skill is running and detects one or more deliverable candidates in the session diff
24
- - HB is about to send a document to a client, regulator, or stakeholder
24
+ - the user is about to send a document to a client, regulator, or stakeholder
25
25
 
26
26
  Do **not** trigger on:
27
27
  - Code files (`.py`, `.ts`, `.js`, …) — those belong to `superpowers:requesting-code-review`
@@ -33,7 +33,7 @@ Do **not** trigger on:
33
33
  The skill accepts one of:
34
34
  1. **File path** — absolute or relative to repo root. Primary mode.
35
35
  2. **Multiple paths** — batch mode, one reviewer call per file.
36
- 3. **No argument** — auto-detect deliverable candidates from `git status` + recent Write/Edit history, then ask HB which to review.
36
+ 3. **No argument** — auto-detect deliverable candidates from `git status` + recent Write/Edit history, then ask the user which to review.
37
37
 
38
38
  ## Dispatch Logic
39
39
 
@@ -57,7 +57,7 @@ Type detection has **two axes**:
57
57
  - File name contains `sop-`, `법규-`, `compliance-`, `audit-`, `contract-`, `계약-`
58
58
 
59
59
  **spec** if any of:
60
- - Path contains `drafts/harness-engineering/`, `docs/superpowers/specs/`, `docs/superpowers/plans/`
60
+ - Path contains `specs/`, `plans/`
61
61
  - Content mentions 3+ of: API, endpoint, architecture, requirement, user story, acceptance criteria, 아키텍처, 요구사항, 사양, 제안서, RFP, deliverable, milestone, 성과물
62
62
  - Frontmatter `type: spec | plan | proposal`
63
63
  - File name contains `spec-`, `plan-`, `proposal-`, `제안-`, `사양-`
@@ -80,7 +80,7 @@ Detect subtype in this order. First match wins.
80
80
  | `audit-response` | Filename `audit-`, `감사-`, `tpqq-`; content가 질의-응답 쌍 구조, audit 지적 사항 대응 |
81
81
  | `contract` | Filename `contract-`, `계약-`, `약관-`; content "제1조", "갑은 을에게", 서명란 |
82
82
  | `proposal` | Filename `proposal-`, `제안-`; path `deliverables/*/proposal*`; frontmatter `type: proposal` |
83
- | `plan` | Frontmatter `type: plan`; `docs/superpowers/plans/`; 단계적 실행 순서·마일스톤·체크포인트 구조. spec과 구분: spec은 "무엇을 만드는가", plan은 "어떤 순서로 만드는가" |
83
+ | `plan` | Frontmatter `type: plan`; path `plans/`; 단계적 실행 순서·마일스톤·체크포인트 구조. spec과 구분: spec은 "무엇을 만드는가", plan은 "어떤 순서로 만드는가" |
84
84
  | `spec` | Frontmatter `type: spec`; content에 acceptance criteria·요구사항·user story 구조 |
85
85
  | `architecture` | Filename `arch-`, `architecture-`; 구성도·다이어그램이 핵심이고 본문이 그 해설인 구조. spec과 구분: 요구사항보다 구조 자체가 주제 |
86
86
  | `report` | Filename `report-`, `보고서-`, `현황-`; 기간 요약·상태 보고 성격 |
@@ -120,15 +120,17 @@ Do **not** pre-filter feedback memory here — the reviewer does that dynamicall
120
120
 
121
121
  ### Step 3.5 — Voice gate (humanize-korean)
122
122
 
123
- After the domain reviewer dispatch, run the voice gate against the same file. This catches `rules/content-writing.md` 원칙 위반과 `ai-tell-taxonomy.md` SSOT의 10대 + KHC 고유 K·L 카테고리 패턴.
123
+ After the domain reviewer dispatch, run the voice gate against the same file. This catches 문체·voice 원칙 위반과 ai-tell 문체 패턴.
124
+
125
+ **자산 가용성 — peer-dependency (standalone)**: voice gate는 `humanize-korean` voice 자산(`humanize-monolith`·`ai-tell-detector` 등)에 대한 peer-dependency다 — 이 자산은 본 플러그인에 번들되지 않으며, 설치된 환경에서만 작동한다. 판정은 *reactive*로 한다: voice gate agent 디스패치를 시도하고, 미등록(unknown subagent_type 등)으로 실패하면 본 Step 3.5를 건너뛴 것으로 처리한다 — 사전에 설치 여부를 별도 점검하지 않는다. skip 시 Step 4로 진행하며, report의 Voice Gate 섹션에 "voice 자산 미설치 — domain reviewer 결과만 반영"을 명시하고, Step 4 Recommendation 종합은 domain reviewer 판정만으로 결정한다.
124
126
 
125
127
  Mode selection:
126
128
 
127
129
  | Trigger | Mode | Agent |
128
130
  |---|---|---|
129
131
  | Default | **fast** | `humanize-monolith` (1 call, 도구 호출 3회 cap, wall-clock 2~3분) |
130
- | Subtype = `SOP`·`legal-memo`·`regulation-analysis`·`audit-response`·`contract` (의료기기 도메인 산출물) | **strict (auto-promote)** | `ai-tell-detector` → `korean-style-rewriter` → 병렬(`content-fidelity-auditor` + `naturalness-reviewer`) |
131
- | HB explicit `--strict` or `정밀 모드` | **strict** | same as above |
132
+ | Subtype = `SOP`·`legal-memo`·`regulation-analysis`·`audit-response`·`contract` (법규·계약·SOP 도메인 산출물) | **strict (auto-promote)** | `ai-tell-detector` → `korean-style-rewriter` → 병렬(`content-fidelity-auditor` + `naturalness-reviewer`) |
133
+ | User explicit `--strict` or `정밀 모드` | **strict** | same as above |
132
134
  | File length > 8,000자 | **strict (auto-promote)** | same |
133
135
 
134
136
  **Minor revision 예외**: 검토 대상이 *기존 파일의 minor revision*(변경분이 파일 전체 대비 작음)이면 mode 판정 기준을 *파일 전체 길이*가 아니라 *변경분(diff) 크기*로 둔다. 변경분이 8,000자 미만이고 의료기기 도메인 subtype·`--strict`에 해당하지 않으면 fast. 이미 ship된 영역은 voice gate 대상에서 제외하고 변경분만 검토한다 — 파일 전체가 길어도 minor revision의 변경분만 voice gate에 넣는다.
@@ -150,11 +152,11 @@ The voice gate produces:
150
152
 
151
153
  Voice gate findings는 도메인 reviewer 결과와 별도 섹션으로 Step 4 report에 합산된다. 변경률 30%/50% 가드 위반은 즉시 voice 게이트가 자체 중단·롤백한다.
152
154
 
153
- Do **not** auto-apply voice rewriting to the original deliverable file. Voice gate output(`final.md`)은 *제안*이며 HB가 적용 여부 결정.
155
+ Do **not** auto-apply voice rewriting to the original deliverable file. Voice gate output(`final.md`)은 *제안*이며 사용자가 적용 여부 결정.
154
156
 
155
157
  ### Step 4 — Format the result
156
158
 
157
- The reviewer returns a structured report. Present it to HB as:
159
+ The reviewer returns a structured report. Present it to the user as:
158
160
 
159
161
  ```
160
162
  ## Deliverable Review — {{filename}}
@@ -195,7 +197,7 @@ Domain reviewer 판정과 voice gate 등급을 AND 종합:
195
197
  - domain ship + voice D → revise-major (voice 잔존 S1 3건+ 또는 과윤문)
196
198
  - domain revise/block → 그대로 따름
197
199
 
198
- **동일 영역 판정 충돌 해소** (위 AND 종합 표 전체에 적용 — 특정 행의 부연이 아니다): AND 종합 표는 *등급*의 종합이다. domain reviewer와 voice gate가 *동일 텍스트 영역*에 상반된 판정을 내면(예: 한쪽은 voice 위반, 다른쪽은 정상) domain reviewer 판정을 우선한다. voice gate는 ai-tell 패턴·문체 탐지에 특화돼 있으나, 산출물 voice 규율의 *문맥 예외*(룰 정의 문서 본문 인용 등) 판정은 domain reviewer의 `rules/*` 정합 검증이 더 정확하기 때문이다.
200
+ **동일 영역 판정 충돌 해소** (위 AND 종합 표 전체에 적용 — 특정 행의 부연이 아니다): AND 종합 표는 *등급*의 종합이다. domain reviewer와 voice gate가 *동일 텍스트 영역*에 상반된 판정을 내면(예: 한쪽은 voice 위반, 다른쪽은 정상) domain reviewer 판정을 우선한다. voice gate는 ai-tell 패턴·문체 탐지에 특화돼 있으나, 산출물 voice 규율의 *문맥 예외*(룰 정의 문서 본문 인용 등) 판정은 domain reviewer의 프로젝트 정합 검증이 더 정확하기 때문이다.
199
201
 
200
202
  ### Candidate feedback to file
201
203
  (optional, present only if the reviewer found a new failure pattern)
@@ -208,42 +210,42 @@ Surface WARN items prominently even when FAIL is zero — they're the ones that
208
210
 
209
211
  If the reviewer returned no FAIL items, still surface WARN items prominently — they're the ones that graduate into `feedback_*.md` next session if ignored.
210
212
 
211
- ### 신호등 분기 (PRD v2.4 §단계 4 정합)
213
+ ### 신호등 분기 (PRD §단계 4 정합)
212
214
 
213
215
  | 신호 | 의미 | 처리 |
214
216
  |---|---|---|
215
- | 녹 | 검증 7 영역 모두 PASS | HB 최종 점검으로 |
217
+ | 녹 | 검증 7 영역 모두 PASS | 사용자 최종 점검으로 |
216
218
  | 황 | Plan 수정 수준의 WARN 1+ | Agent 자체 처리 — **yellow state machine 6 step** (아래) |
217
- | 적 | PRD 수정 필요 FAIL 1+ 또는 산출물 본질 결함 | HB 확인 루프로 회귀 (Plan 수정 X) |
219
+ | 적 | PRD 수정 필요 FAIL 1+ 또는 산출물 본질 결함 | 사용자 확인 루프로 회귀 (Plan 수정 X) |
218
220
 
219
- **yellow state machine 6 step** (codex r5 P2.4 + r8 P1.1 + r10 P2.3 정합 — 조용한 계획 변경 차단 + review_gate 갱신 cap + freshness 전파):
221
+ **yellow state machine 6 step** (조용한 계획 변경 차단 + review_gate 갱신 cap + freshness 전파):
220
222
 
221
223
  1. 실행 중지
222
224
  2. Plan artifact §변경 이력 영역에 revision history row 추가 (yellow trigger·변경 영역 명시)
223
225
  3. workflow / 분기 / 앵커 라인 영역 본문 patch
224
226
  4. `/deliverable-review target={plan} subtype=plan` 게이트 재호출
225
- 5. **review_gate metadata 갱신** — Plan frontmatter `review_gate` 영역 8 필드 모두 갱신 (status·reviewed_at·reviewer·review_target·review_evidence·closure_note·**reviewed_revision·plan_fingerprint**, codex r10 P2.3 + r11 P1.2 단일 규칙). reviewed_revision 부재 시 *fail-closed* (review_gate 미기록 + review 재호출). status: `block`은 *명시 block recommendation* 영역만 사용 (codex r11 P1.1 — schema enum 정합).
226
- 6. 갱신된 `review_gate`(+ freshness)를 execute-nondev 입력 조건으로 재확인 후 resume (revise-major·block → red 격상, PRD/HB 회귀)
227
+ 5. **review_gate metadata 갱신** — Plan frontmatter `review_gate` 영역 8 필드 모두 갱신 (status·reviewed_at·reviewer·review_target·review_evidence·closure_note·**reviewed_revision·plan_fingerprint**, 단일 규칙). reviewed_revision 부재 시 *fail-closed* (review_gate 미기록 + review 재호출). status: `block`은 *명시 block recommendation* 영역만 사용 (schema enum 정합).
228
+ 6. 갱신된 `review_gate`(+ freshness)를 execute-nondev 입력 조건으로 재확인 후 resume (revise-major·block → red 격상, PRD/사용자 회귀)
227
229
 
228
230
  verification_type별 추가 분기:
229
231
  - state_update FAIL → 자동 revise-minor 이상
230
232
  - source_fidelity FAIL → 자동 revise-major 이상 (GT Drift catch 강화)
231
233
 
232
- ### Recommendation ↔ Signal Mapping (codex r6 P2.2 정합)
234
+ ### Recommendation ↔ Signal Mapping
233
235
 
234
236
  | Recommendation | Signal | 처리 |
235
237
  |---|---|---|
236
- | ship | green | HB final inspection |
238
+ | ship | green | User final inspection |
237
239
  | revise-minor | yellow | Plan/workflow/deliverable patch 후 재검증 (yellow state machine 6 step) |
238
240
  | revise-major | red (default) | PRD/GT/source/regulatory boundary 영향 여부 확인. Plan 수정만으로 닫히는 예외는 reviewer가 근거를 본문에 명시 후 yellow로 낮출 수 있음 |
239
- | block | red | HB/PRD 회귀 |
241
+ | block | red | 사용자/PRD 회귀 |
240
242
 
241
243
  **무조건 red 영역** (recommendation과 무관):
242
244
  - source_fidelity FAIL — 인용 정확성·원문 대조 실패
243
245
  - regulatory correctness FAIL — 법규·SOP·고시 정합 실패
244
- - explicit HB judgment boundary 침범 — HB 결정 영역 자율 처리
246
+ - explicit 사용자 judgment boundary 침범 — 사용자 결정 영역 자율 처리
245
247
 
246
- ### Signal ↔ Recommendation ↔ review_gate.status 정규화 (codex r8 P2.3)
248
+ ### Signal ↔ Recommendation ↔ review_gate.status 정규화
247
249
 
248
250
  | Signal | Recommendation | review_gate.status |
249
251
  |---|---|---|
@@ -252,20 +254,20 @@ verification_type별 추가 분기:
252
254
  | red | revise-major | revise-major |
253
255
  | red | block | block |
254
256
 
255
- **`pass` 영역 조건**: `Signal=green` AND `Recommendation=ship` 시만 `review_gate.status: pass` 기록 (codex r8 P1.2 + P2.3 정합). 다른 조합은 본 status 영역 X.
257
+ **`pass` 영역 조건**: `Signal=green` AND `Recommendation=ship` 시만 `review_gate.status: pass` 기록. 다른 조합은 본 status 영역 X.
256
258
 
257
259
  **예외 영역**: `revise-major`를 Plan-only yellow로 강하 시 reviewer가 본문에 명시 근거 명시 → 재게이트 후 `revise-minor` 또는 `pass`로 기록.
258
260
 
259
- ### deliverable-review Output Format (codex r8 P1.2 + r9 P1.2·P2.3 정합 — 확장 schema)
261
+ ### deliverable-review Output Format (확장 schema)
260
262
 
261
- **본 schema는 기존 deliverable-review 기본 report format을 *대체 X, 확장*** (codex r9 P1.2). 기존 필수 섹션은 유지:
263
+ **본 schema는 기존 deliverable-review 기본 report format을 *대체 X, 확장***. 기존 필수 섹션은 유지:
262
264
  - **PASS** — 항목별 evidence path/line
263
265
  - **WARN** — 항목별 evidence + Related feedback
264
266
  - **FAIL** — 항목별 evidence + Suggested fix + Related feedback
265
267
  - **Recommendation** — ship/revise-minor/revise-major/block
266
268
  - **Candidate feedback to file** (신규 패턴 발견 시)
267
269
 
268
- **추가 필수 섹션** (codex r8 P1.2 — 외부 fence four-backtick, codex r9 P2.3 정합):
270
+ **추가 필수 섹션** (외부 fence four-backtick):
269
271
 
270
272
  ````markdown
271
273
  ### Signal
@@ -273,8 +275,8 @@ green | yellow | red
273
275
 
274
276
  ### Signal Mapping Rationale
275
277
  - verification_type별 PASS/WARN/FAIL count (source_fidelity·rule_conformance·domain_editorial·state_update)
276
- - red/yellow 판정 근거 — **WARN/FAIL evidence line 영역 참조 의무** (codex r9 P1.2 — count만 아닌 line-level 근거)
277
- - 무조건 red 영역(source_fidelity FAIL·regulatory FAIL·HB boundary 침범) trigger 여부
278
+ - red/yellow 판정 근거 — **WARN/FAIL evidence line 영역 참조 의무** (count만 아닌 line-level 근거)
279
+ - 무조건 red 영역(source_fidelity FAIL·regulatory FAIL·사용자 boundary 침범) trigger 여부
278
280
 
279
281
  ### Review Gate Metadata (subtype=plan only)
280
282
  ```yaml
@@ -285,8 +287,8 @@ review_gate:
285
287
  review_target: {plan path}
286
288
  review_evidence: "inline: §Review Gate" 또는 {review report path}
287
289
  closure_note: "" # revise-minor 시 본문 필수
288
- reviewed_revision: "§변경 이력 row id 또는 version" # codex r9 P1.1 freshness anchor — required primary
289
- plan_fingerprint: "sha256:<canonical-plan-hash>" # canonical body rule: plan-nondev §3 (r10 P1.2 정의). codex r11 P1.2 — optional diagnostic, 값 존재 시만 비교
290
+ reviewed_revision: "§변경 이력 row id 또는 version" # freshness anchor — required primary
291
+ plan_fingerprint: "sha256:<canonical-plan-hash>" # canonical body rule: plan-nondev §3. optional diagnostic, 값 존재 시만 비교
290
292
  ```
291
293
  ````
292
294
 
@@ -302,30 +304,30 @@ Each `deliverable-*-reviewer` agent must:
302
304
 
303
305
  3. **Walk the file against the checklist.** For each item: PASS / WARN / FAIL with evidence (file line or feedback file path).
304
306
 
305
- 4. **Name the feedback source.** Every WARN or FAIL must cite which `feedback_*.md` or which static rule it came from. This is how HB audits the reviewer itself.
307
+ 4. **Name the feedback source.** Every WARN or FAIL must cite which `feedback_*.md` or which static rule it came from. This is how the user audits the reviewer itself.
306
308
 
307
309
  5. **Suggest a concrete fix for each FAIL.** Not "revisit this section" — an actual edit direction.
308
310
 
309
- 6. **Flag new failure patterns.** If the reviewer notices a failure mode that isn't yet in feedback memory, end the report with `### Candidate feedback to file` — a short entry HB can save as a new `feedback_*.md`.
311
+ 6. **Flag new failure patterns.** If the reviewer notices a failure mode that isn't yet in feedback memory, end the report with `### Candidate feedback to file` — a short entry the user can save as a new `feedback_*.md`.
310
312
 
311
- 7. **Verification type 라벨링.** PRD `docs/superpowers/specs/2026-04-29-nondev-harness-prd.md` Verification Layer 계약에 따라, 매 PASS/WARN/FAIL 항목은 다음 4분류 중 하나의 `verification_type`을 갖는다.
313
+ 7. **Verification type 라벨링.** 매 PASS/WARN/FAIL 항목은 다음 4분류 중 하나의 `verification_type`을 갖는다.
312
314
 
313
315
  - **`source_fidelity`** — 인용 정확성·원문 대조·출처 명시·법조문/SOP 코드/링크 일치. 예: M1·M2·M3·G1·S2.
314
- - **`rule_conformance`** — `rules/*` 문체·voice·금지어·구조·번역체·한영 병기 같은 규율. 예: G15·M12·S9·content-writing.md.
316
+ - **`rule_conformance`** — 프로젝트 룰(문체·voice·금지어·구조·번역체·병기) 같은 규율. 예: G15·M12·S9.
315
317
  - **`domain_editorial`** — 도메인 전문 판정·사실 검증·결론 정합성·acceptance criteria. 예: M5·M6·M7·S6·S10·P6·P7.
316
- - **`state_update`** — 상태 환류·`handoff/spec/wiki/lessons` 갱신 누락·status vocabulary 충돌. 예: 산출물이 PRD `next_gate`에 명시된 갱신을 빠뜨렸는지, dogfood Verify가 후속 review로 위임됐는지.
318
+ - **`state_update`** — 상태 환류·후속 문서(handoff·spec·index 등) 갱신 누락·status vocabulary 충돌. 예: 산출물이 명시된 후속 갱신 의무를 빠뜨렸는지, 검증이 후속 review로 위임됐는지.
317
319
 
318
- 각 항목은 단일 `verification_type` 1개로 라벨링한다. 모호하면 가장 강한 신호 1개 선택. 정적 체크리스트(G1~G15·M1~M16·P1~P20·S1~S17)는 reviewer 본문에서 verification_type을 노출 가능한 시점에 1회 라벨링하면 충분하다 — 이번 PRD adapter 단계에서는 SKILL.md contract에만 기록한다.
320
+ 각 항목은 단일 `verification_type` 1개로 라벨링한다. 모호하면 가장 강한 신호 1개 선택. 정적 체크리스트(G1~G15·M1~M16·P1~P20·S1~S17)는 reviewer 본문에서 verification_type을 노출 가능한 시점에 1회 라벨링하면 충분하다.
319
321
 
320
322
  `state_update` FAIL은 자동 `revise-minor` 이상으로 권고한다. 이는 wrap·다음 세션 진입에서 stale handoff·status vocabulary 충돌로 직결되는 항목이라 단독 선언이 필요하다.
321
323
 
322
- 8. **적대적 검토자 페르소나** — agent body는 "이 정도면 괜찮다" default 평가 회로 차단을 위해 *적대적 검토자 페르소나* 적용. 페르소나 본문은 각 reviewer agent body §0 영역에 명시 (Task 5 Step 3).
324
+ 8. **적대적 검토자 페르소나** — agent body는 "이 정도면 괜찮다" default 평가 회로 차단을 위해 *적대적 검토자 페르소나* 적용. 페르소나 본문은 각 reviewer agent body §0 영역에 명시.
323
325
 
324
- 9. **GT Drift catch 의무** — source_fidelity verification_type 영역의 PASS 표지는 *GT 인용 line·section 단위까지 grep 검증 완료* 후에만 허용. LLM 내장 지식 우선 패턴 차단 (rules/workflow.md §검증 주체 분리 정합).
326
+ 9. **GT Drift catch 의무** — source_fidelity verification_type 영역의 PASS 표지는 *GT 인용 line·section 단위까지 grep 검증 완료* 후에만 허용. LLM 내장 지식 우선 패턴 차단 (검증 주체 분리 원칙 정합).
325
327
 
326
328
  ## Growth Path
327
329
 
328
- The general reviewer is the incubator. When the same failure class recurs 3+ times in general reviewer output, that class should graduate into its own specialized reviewer. HB decides when to split.
330
+ The general reviewer is the incubator. When the same failure class recurs 3+ times in general reviewer output, that class should graduate into its own specialized reviewer. The user decides when to split.
329
331
 
330
332
  Current roster:
331
333
  - `deliverable-general-reviewer` — fallback + incubator
@@ -333,7 +335,7 @@ Current roster:
333
335
  - `deliverable-spec-reviewer` — 기술 spec·제안서·아키텍처 문서
334
336
 
335
337
  Future candidates (do not build until pattern justifies):
336
- - `deliverable-linkedin-reviewer` — voice/tone check for HB's LinkedIn posts
338
+ - `deliverable-linkedin-reviewer` — voice/tone check for the user's LinkedIn posts
337
339
  - `deliverable-wiki-reviewer` — cross-reference integrity, orphan detection
338
340
 
339
341
  ## Red Flags — STOP and run the full gate
@@ -343,18 +345,18 @@ These thoughts mean you're rationalizing your way around the check:
343
345
  | Thought | Reality |
344
346
  |---|---|
345
347
  | "This file is small, skip the gate" | Small files are where scope errors hide. The gate takes 60 seconds. |
346
- | "I already read the source carefully" | Past-HB said that exact sentence before `feedback_law_full_reading` got filed. |
348
+ | "I already read the source carefully" | A past session said that exact sentence before the same feedback got filed. |
347
349
  | "The wrap skill will catch it" | wrap delegates to this skill. There is no other net. |
348
350
  | "General reviewer is generic, it won't find anything" | That's a signal to strengthen the general reviewer, not to skip it. |
349
- | "HB said it's ready, they know best" | HB is the one who built this skill precisely because "ready" has been wrong before. |
351
+ | "The user said it's ready, they know best" | The user built this skill precisely because "ready" has been wrong before. |
350
352
  | "The deliverable is in a language the reviewer doesn't handle well" | Then warn about low confidence in the report — don't silently skip. |
351
353
 
352
- **No exceptions. If a file matches the trigger conditions, the gate runs. HB can read a 10-line PASS report in 3 seconds; the cost of skipping is measured in new feedback entries.**
354
+ **No exceptions. If a file matches the trigger conditions, the gate runs. The user can read a 10-line PASS report in 3 seconds; the cost of skipping is measured in new feedback entries.**
353
355
 
354
356
  ## Failure Handling
355
357
 
356
- If the named reviewer agent is not yet registered in `~/.claude/agents/`:
357
- 1. Warn HB once: "deliverable-{{type}}-reviewer not found, falling back to general-purpose agent with inline instructions"
358
+ If the named reviewer agent is not registered (e.g. the plugin bundle is incomplete):
359
+ 1. Warn the user once: "deliverable-{{type}}-reviewer not found, falling back to general-purpose agent with inline instructions"
358
360
  2. Pass the same contract (load feedback memory, static + dynamic checklist, evidence-cited output) as an inline prompt to the general-purpose subagent
359
361
  3. Note in the final report which reviewer was actually used
360
362