**핵심 개선:** - 호칭 복수/단수 검증 시스템 구축 (실제 오류 대응) - Summary 재생성 규칙 최적화 (토큰 효율) - 플랫폼 가독성 기준 작성 단계 반영 - POLISH/MODIFICATION 경계 명확화 **신규 파일:** - file-formats.md v1.0.0 → v1.1.0 (나이 관계 테이블) **업그레이드:** - writing-mode.md v2.1.0 → v2.1.1 (간이 검증) - verification-mode.md v2.2.0 → v2.3.0 (상세 검증) - modification-mode.md v2.0.0 → v2.1.0 (Summary 최적화) - writing-guide.md v2.1.0 → v2.2.0 (플랫폼 기준) - polish-mode.md v2.2.0 → v2.3.0 (경계 명확화) **적용 배경:** 1945-novel 실제 오류: 박현우(37세) "형님들" 사용 → 올바른 호칭: "형님" (윗사람 1명) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
440 lines
9.6 KiB
Markdown
440 lines
9.6 KiB
Markdown
# 검증 모드 프로토콜
|
|
|
|
> **버전:** 2.3.0
|
|
> **최종 수정:** 2026-01-20
|
|
> **호환:** CWS Writing Guide v3.3.0+
|
|
> **용도:** 전체 검증 및 기록 (수정 없음)
|
|
> **주요 변경:** 호칭 복수/단수 정확성 검증 추가
|
|
|
|
---
|
|
|
|
## 🔄 컴팩팅 대응 시스템 (v2.1.0 신규)
|
|
|
|
### 배치 작업 시 WORK-MODE.txt 사용
|
|
|
|
**배치 시작 시:**
|
|
```
|
|
1. WORK-MODE.txt 파일 생성
|
|
---
|
|
CURRENT_MODE: VERIFICATION
|
|
READ_FILE: standards/verification-mode.md
|
|
---
|
|
BATCH: 01
|
|
RANGE: ch-001 ~ ch-010
|
|
STATUS: IN_PROGRESS
|
|
LAST_COMPLETED: none
|
|
NEXT: ch-001
|
|
REPORT_FILE: validation-batch-01.md
|
|
STARTED: 2026-01-20 14:20
|
|
---
|
|
|
|
2. validation-batch-01.md 파일 생성 (진행 상황 체크리스트)
|
|
```
|
|
|
|
**각 챕터 완료 후:**
|
|
```
|
|
1. validation-batch-01.md에 [x] 표시
|
|
2. 챕터별 상세 내용 추가
|
|
3. WORK-MODE.txt의 LAST_COMPLETED, NEXT 업데이트
|
|
4. 파일 저장
|
|
5. 다음 챕터
|
|
```
|
|
|
|
**컴팩팅 후 재개 시:**
|
|
```
|
|
1. WORK-MODE.txt 읽기
|
|
2. CURRENT_MODE 확인 → VERIFICATION
|
|
3. READ_FILE 확인 → verification-mode.md (이 파일)
|
|
4. REPORT_FILE 읽기 → validation-batch-01.md
|
|
5. 진행 상황 체크리스트 확인
|
|
6. NEXT 챕터부터 재개
|
|
```
|
|
|
|
**배치 완료 시:**
|
|
```
|
|
1. 전체 [x] 확인
|
|
2. WORK-MODE.txt 삭제
|
|
3. 사용자에게 완료 보고
|
|
```
|
|
|
|
**핵심 원칙:**
|
|
```
|
|
❌ 10개 전부 메모리에 저장 후 한 번에 파일 작성
|
|
✅ 1개 완료 → 즉시 파일 업데이트 → WORK-MODE.txt 업데이트 → 다음
|
|
```
|
|
|
|
---
|
|
|
|
## 📋 검증 모드 개요
|
|
|
|
**검증 모드는:**
|
|
- 6단계 통합 검증
|
|
- 문제 발견 및 **기록만** (수정하지 않음!)
|
|
- 검증 보고서 생성 → FIX 모드로 전달
|
|
|
|
**핵심 원칙:**
|
|
```
|
|
VERIFICATION = 발견 + 기록
|
|
FIX = 수정
|
|
(분리!)
|
|
```
|
|
|
|
**진입 명령:**
|
|
- "검증해"
|
|
- "점검 모드"
|
|
- "X권 검증해"
|
|
- "전체 검증"
|
|
|
|
**부분 검증:**
|
|
- "타임라인만 검증해"
|
|
- "호칭 검증해"
|
|
- "바텀 검증해"
|
|
|
|
---
|
|
|
|
## 📚 모드 진입 시 읽을 파일
|
|
|
|
### 필수
|
|
1. `volumes/vol-XX/plot-master.md` - 플롯 (일치도 검증용)
|
|
2. `settings/characters-master.md` - 캐릭터 + 호칭 규칙
|
|
3. `volumes/vol-XX/timeline.md` - 타임라인
|
|
|
|
### 검증 대상
|
|
4. `volumes/vol-XX/chapters/ch-*.md` - 전체 챕터
|
|
|
|
---
|
|
|
|
## 🎯 6단계 통합 검증
|
|
|
|
```
|
|
사용자: "검증해"
|
|
↓
|
|
[1/6] 구조 검증 중...
|
|
[2/6] 형식 검증 중...
|
|
[3/6] 타임라인 검증 중...
|
|
[4/6] 내용 검증 중...
|
|
[5/6] 일관성 검증 중...
|
|
[6/6] 보고서 생성 중...
|
|
↓
|
|
검증 보고서 출력
|
|
↓
|
|
"FIX 모드로 수정하시겠습니까?"
|
|
```
|
|
|
|
---
|
|
|
|
## 📝 단계별 상세
|
|
|
|
### 1단계: 구조 검증
|
|
|
|
```
|
|
✅ 파일 존재/연속성
|
|
- ch-001 ~ ch-XXX 모두 있나?
|
|
- 빠진 번호 없나?
|
|
- 중복 번호 없나?
|
|
|
|
✅ 파일명 규칙
|
|
- ch-XXX.md 형식
|
|
- 3자리 숫자 패딩
|
|
|
|
기록:
|
|
- 총 챕터 수
|
|
- 빠진 번호 목록
|
|
- 중복 번호 목록
|
|
```
|
|
|
|
### 2단계: 형식 검증
|
|
|
|
```
|
|
✅ 헤더 형식
|
|
- "# X권 Y화: 제목" 형식
|
|
- 파일명 번호 = 헤더 화수 일치
|
|
|
|
✅ 타임라인 형식
|
|
- "> **타임라인:** YYYY.M.D-M.D" 형식
|
|
|
|
⭐ 바텀 검증
|
|
- "[X화 끝]" 있으면 → 🔴 기록
|
|
- "다음 X화:" 있으면 → 🔴 기록
|
|
|
|
기록:
|
|
- 헤더 오류 목록
|
|
- 화수 불일치 목록
|
|
- 바텀 있는 챕터 목록
|
|
```
|
|
|
|
### 3단계: 타임라인 검증
|
|
|
|
```
|
|
✅ 시간 순서
|
|
- ch-001 → ch-002 → ... 시간 순서
|
|
|
|
✅ 역행 체크
|
|
- 이전 화보다 과거로 가는 경우
|
|
|
|
✅ 날짜 겹침
|
|
- 같은 날짜 과도한 반복
|
|
|
|
⭐ 배치 경계 체크 (v2.2.0 신규)
|
|
- ch-010 → ch-011 연결 확인
|
|
- ch-020 → ch-021 연결 확인
|
|
- 배치 마지막과 다음 배치 첫 챕터 시간 흐름
|
|
|
|
기록:
|
|
- 타임라인 순서 테이블
|
|
- 역행 발견 목록
|
|
- 날짜 겹침 경고
|
|
- 배치 경계 문제 목록 (신규)
|
|
```
|
|
|
|
### 4단계: 내용 검증
|
|
|
|
```
|
|
✅ 플롯 일치도
|
|
- plot-master.md와 실제 내용 비교
|
|
- 제목, 타임라인, 핵심 내용
|
|
|
|
✅ 캐릭터 등장
|
|
- 소개 없이 갑자기 등장?
|
|
- 죽은/퇴장 캐릭터 재등장?
|
|
|
|
⭐ 호칭 일관성
|
|
- characters-master.md의 호칭 규칙 기준
|
|
- 결혼 전/후 호칭 구분
|
|
- 갑자기 호칭 바뀌는 경우
|
|
|
|
⭐ 호칭 복수/단수 정확성 (v2.3.0 신규!)
|
|
- characters-master.md 나이 관계 테이블 기준
|
|
- 화자가 대상 몇 명에게 말하는지 검증
|
|
- 검증 방법:
|
|
1. "형님들", "형들", "선배님들" 등 복수 호칭 검색
|
|
2. 화자 확인 (대화 직전 지문에서 파악)
|
|
3. 나이 관계 테이블에서 화자보다 나이/지위 높은 사람 수 확인
|
|
4. 대상 1명 → 단수 / 대상 2명 이상 → 복수
|
|
- 실제 오류 예시:
|
|
❌ 박현우(37세, 2위): "형님들" → 윗사람 1명(강민준 41세)만 있음 → "형님" 사용해야
|
|
✅ 최태준(35세, 3위): "형님들" → 윗사람 2명(강민준+박현우) 있음 → 올바름
|
|
- 발견 시 기록: 화자, 대화 내용, 실제 윗사람 수, 올바른 호칭
|
|
|
|
✅ 말투 일관성
|
|
- 존댓말/반말 패턴 유지
|
|
|
|
⭐ 장면 중복 (v2.1.0 신규)
|
|
- 같은 대화/장면이 챕터 내에서 반복되는지
|
|
- 같은 정보를 여러 번 전달하는지
|
|
- 예: "예언 내용"을 Part 2, Part 3에서 중복
|
|
|
|
⭐ 인과관계 논리 (v2.1.0 신규)
|
|
- 이전 챕터에서 받은 물건/정보가 다음 챕터에 반영되는지
|
|
- 예: ch-004에서 명단 받았는데 ch-005에서 또 작성 ❌
|
|
- 시간 흐름에 따른 상태 변화 논리
|
|
|
|
⭐ 정보 흐름 (v2.1.0 신규)
|
|
- 캐릭터 첫 등장 시 소개 있는지
|
|
- 관계 형성이 점진적인지 (갑자기 친밀한 호칭 ❌)
|
|
- 예: 강세우가 소개 없이 갑자기 "형님" ❌
|
|
|
|
⭐ 설정 일관성 (v2.2.0 신규)
|
|
- 숫자/데이터 일관성: 인원수, 금액, 날짜 일치
|
|
- 예: 3화에서 "20명" → 5화에서 "50명" (설명 없음) ❌
|
|
- 물리적 설정: 거리, 시간, 위치 논리
|
|
- 예: 서울→부산 1시간 (불가능) ❌
|
|
- 호칭 변화 추적: 호칭 변화에 계기 있는지
|
|
- 예: "서 선생님" → "윤희" (계기 누락) ❌
|
|
|
|
기록:
|
|
- 플롯 불일치 목록
|
|
- 호칭 오류 목록
|
|
- 호칭 복수/단수 오류 목록 (v2.3.0 신규!)
|
|
- 캐릭터 오류 목록
|
|
- 장면 중복 목록 (v2.1.0)
|
|
- 인과관계 오류 목록 (v2.1.0)
|
|
- 정보 흐름 오류 목록 (v2.1.0)
|
|
- 설정 일관성 오류 목록 (v2.2.0)
|
|
```
|
|
|
|
### 5단계: 일관성 검증
|
|
|
|
```
|
|
✅ 앞뒤 연결
|
|
- 이전 화 끝 ↔ 다음 화 시작
|
|
- 갑작스러운 상황 변화
|
|
|
|
✅ 복선 추적
|
|
- 설치된 복선 목록
|
|
- 회수된 복선 목록
|
|
- 미회수 복선 (회수 예정)
|
|
|
|
✅ 설정 충돌
|
|
- 같은 사건 다른 날짜
|
|
- 같은 캐릭터 다른 나이
|
|
|
|
기록:
|
|
- 연결 오류 목록
|
|
- 복선 현황 테이블
|
|
- 설정 충돌 목록
|
|
```
|
|
|
|
### 6단계: 보고서 생성
|
|
|
|
---
|
|
|
|
## 📊 검증 보고서 형식
|
|
|
|
```markdown
|
|
# X권 검증 보고서
|
|
|
|
> **검증일:** YYYY-MM-DD
|
|
> **검증 범위:** ch-001 ~ ch-XXX
|
|
> **모드:** VERIFICATION (기록만, 수정 없음)
|
|
|
|
---
|
|
|
|
## 📊 요약
|
|
|
|
| 항목 | 발견 건수 | 심각도 |
|
|
|------|----------|--------|
|
|
| 구조 오류 | X건 | 🔴/🟡/🟢 |
|
|
| 형식 오류 | X건 | 🔴/🟡/🟢 |
|
|
| 타임라인 오류 | X건 | 🔴/🟡/🟢 |
|
|
| 내용 오류 | X건 | 🔴/🟡/🟢 |
|
|
| 일관성 오류 | X건 | 🔴/🟡/🟢 |
|
|
| **총계** | **X건** | |
|
|
|
|
---
|
|
|
|
## 🔴 심각 (즉시 수정 필요)
|
|
|
|
| # | 위치 | 유형 | 내용 |
|
|
|---|------|------|------|
|
|
| 1 | ch-012:34 | 설정 충돌 | 민준 나이 32→34 불일치 |
|
|
| 2 | ch-025:102 | 타임라인 | 5월인데 단풍 묘사 |
|
|
| ... | | | |
|
|
|
|
---
|
|
|
|
## 🟡 중요 (수정 권장)
|
|
|
|
| # | 위치 | 유형 | 내용 |
|
|
|---|------|------|------|
|
|
| 1 | ch-018:45 | 호칭 | "윤희 씨" → "서 선생님" (시점 이전) |
|
|
| 2 | ch-033:78 | 바텀 | "[33화 끝]" 존재 |
|
|
| ... | | | |
|
|
|
|
---
|
|
|
|
## 🟢 경미 (선택적 수정)
|
|
|
|
| # | 위치 | 유형 | 내용 |
|
|
|---|------|------|------|
|
|
| 1 | ch-005:12 | 날짜 겹침 | 3일 연속 같은 날짜 |
|
|
| ... | | | |
|
|
|
|
---
|
|
|
|
## 📋 복선 현황
|
|
|
|
| 복선 | 설치 | 회수 | 상태 |
|
|
|------|------|------|------|
|
|
| 만주 언급 | ch-003 | ch-045 | ✅ 회수됨 |
|
|
| 검은 반지 | ch-015 | - | ⏳ 미회수 |
|
|
| ... | | | |
|
|
|
|
---
|
|
|
|
## ➡️ 다음 단계
|
|
|
|
총 **X건** 발견됨.
|
|
→ `FIX 모드`로 일괄 수정 진행
|
|
|
|
명령: "FIX 모드" 또는 "수정 진행해"
|
|
```
|
|
|
|
---
|
|
|
|
## 🔍 부분 검증
|
|
|
|
### 타임라인만
|
|
```
|
|
"타임라인만 검증해" → 3단계만 실행
|
|
```
|
|
|
|
### 호칭만
|
|
```
|
|
"호칭 검증해" → 4단계 호칭 항목만
|
|
```
|
|
|
|
### 바텀만
|
|
```
|
|
"바텀 검증해" → 2단계 바텀 항목만
|
|
→ 바텀 있는 챕터 목록 출력
|
|
```
|
|
|
|
### 형식만
|
|
```
|
|
"형식 검증해" → 2단계만 실행
|
|
```
|
|
|
|
---
|
|
|
|
## ✅ 검증 체크리스트
|
|
|
|
### 1단계: 구조
|
|
- [ ] 파일 존재 확인
|
|
- [ ] 번호 연속성
|
|
- [ ] 중복 없음
|
|
|
|
### 2단계: 형식
|
|
- [ ] 헤더 형식
|
|
- [ ] 헤더 화수 = 파일명
|
|
- [ ] 타임라인 형식
|
|
- [ ] 바텀 없음 ⭐
|
|
|
|
### 3단계: 타임라인
|
|
- [ ] 시간 순서
|
|
- [ ] 역행 없음
|
|
- [ ] 날짜 겹침 최소
|
|
|
|
### 4단계: 내용
|
|
- [ ] 플롯 일치도
|
|
- [ ] 캐릭터 등장/퇴장
|
|
- [ ] 호칭 일관성 ⭐
|
|
- [ ] 말투 일관성
|
|
|
|
### 5단계: 일관성
|
|
- [ ] 앞뒤 연결
|
|
- [ ] 복선 추적
|
|
- [ ] 설정 충돌 없음
|
|
|
|
### 6단계: 보고서
|
|
- [ ] 전체 요약
|
|
- [ ] 심각도별 분류
|
|
- [ ] 다음 단계 안내
|
|
|
|
---
|
|
|
|
## 🚫 검증 모드 금지사항
|
|
|
|
```
|
|
❌ 검증 중 수정 → FIX 모드에서!
|
|
❌ 추측 보고 (실제 확인!)
|
|
❌ 사소한 문제 숨기기 (모두 기록!)
|
|
❌ 보고서 누락
|
|
```
|
|
|
|
---
|
|
|
|
## 🔗 연계 모드
|
|
|
|
```
|
|
VERIFICATION (검증, 기록)
|
|
↓
|
|
FIX (일괄 수정)
|
|
↓
|
|
POLISH (가독성/문체)
|
|
```
|
|
|
|
---
|
|
|
|
*검증은 기록만! 수정은 FIX 모드에서!*
|