From 3ce44ec47f9e3975a7113490152b30e861634d68 Mon Sep 17 00:00:00 2001 From: Alex Date: Sun, 18 Jan 2026 10:12:57 +0900 Subject: [PATCH] =?UTF-8?q?v3.0=20=ED=85=9C=ED=94=8C=EB=A6=BF=20=EC=A0=84?= =?UTF-8?q?=EB=A9=B4=20=EA=B0=9C=ED=8E=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## 신규 파일 - templates/CURRENT-TASK.md.template (컴팩팅 대응) - templates/standards/writing-mode.md (작성 모드) - templates/standards/modification-mode.md (수정 모드 8가지 유형) - templates/standards/verification-mode.md (6단계 통합 검증) - templates/standards/chapter-format.md (바텀 금지 포함) - templates/standards/writing-guide.md (문체/분량) - templates/standards/renaming-protocol.md (안전한 리네임) - validation-standards.md (검증 기준) ## 수정 파일 - templates/CLAUDE.md.template (모드 시스템 반영) ## 주요 변경 - 폴더 분리: standards/ (방법론) vs settings/ (콘텐츠) - 바텀 금지 표준화 - 수정 모드 8가지 유형 체계화 - 검증 모드 6단계 통합 - CURRENT-TASK.md로 컴팩팅 대응 Co-Authored-By: Claude Opus 4.5 --- README.md | 33 +- templates/CLAUDE.md.template | 304 ++------ templates/CURRENT-TASK.md.template | 67 ++ templates/standards/chapter-format.md | 227 ++++++ templates/standards/modification-mode.md | 325 +++++++++ templates/standards/renaming-protocol.md | 239 ++++++ templates/standards/verification-mode.md | 314 ++++++++ templates/standards/writing-guide.md | 218 ++++++ templates/standards/writing-mode.md | 182 +++++ validation-standards.md | 885 +++++++++++++++++++++++ 10 files changed, 2546 insertions(+), 248 deletions(-) create mode 100644 templates/CURRENT-TASK.md.template create mode 100644 templates/standards/chapter-format.md create mode 100644 templates/standards/modification-mode.md create mode 100644 templates/standards/renaming-protocol.md create mode 100644 templates/standards/verification-mode.md create mode 100644 templates/standards/writing-guide.md create mode 100644 templates/standards/writing-mode.md create mode 100644 validation-standards.md diff --git a/README.md b/README.md index ca106eb..1420a93 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Novel Writing Guide -> **버전:** 3.0 +> **버전:** 3.1 > **최종 수정:** 2026-01-17 > **용도:** AI 협업 장편 소설 작성 시스템 @@ -32,6 +32,28 @@ AI(Claude)와 협업하여 **장편 소설**(10권 이상)을 체계적으로 - VERIFICATION: 전체 점검 모드 - DISCUSSION: 협의/논의 모드 +### **validation-standards.md** (v3.1 신규) +검증 모드 전용 가이드 문서입니다. + +**포함 내용:** +- **3가지 검증 모드:** + - 본문 검증: 챕터 자체 완결성 확인 + - 플롯 검증: 플롯과 본문 일치성 확인 + - 요약본 검증: 2종 요약본 크로스체크 +- **배치 검증 시스템:** + - 10개씩 6개 배치로 나눠 검증 + - 각 배치마다 검증 요약본 생성 + - 컴팩팅 대응 프로토콜 +- **검증 요약본 형식:** + - 챕터별 상세 정보 + - 제목-내용 일치 확인 + - 타임라인 검증 + - 캐릭터 일관성 체크 +- **검증 보고서 템플릿:** + - 본문 검증 보고서 + - 플롯 검증 보고서 + - 요약본 검증 보고서 + --- ## 📁 템플릿 폴더 (templates/) @@ -214,6 +236,13 @@ my-novel-project/ ## 📝 버전 히스토리 +### v3.1 (2026-01-17) +- ✅ **validation-standards.md 추가** (검증 모드 전용 가이드) +- ✅ 배치 검증 시스템 (10개씩 분할, 컴팩팅 대응) +- ✅ 검증 요약본 시스템 (validation-batch-XX.md) +- ✅ 2종 요약본 크로스체크 (작성 요약본 vs 검증 요약본) +- ✅ 검증 보고서 템플릿 3종 + ### v3.0 (2026-01-17) - ✅ 모드 시스템 구축 (WRITING/MODIFICATION/VERIFICATION/DISCUSSION) - ✅ 수정 프로토콜 체계화 (Summary 재생성 강제, 타임라인 검증) @@ -249,5 +278,5 @@ my-novel-project/ --- **마지막 업데이트**: 2026-01-17 -**버전**: 3.0 +**버전**: 3.1 **라이선스**: 개인 프로젝트 diff --git a/templates/CLAUDE.md.template b/templates/CLAUDE.md.template index c8e6390..9f99435 100644 --- a/templates/CLAUDE.md.template +++ b/templates/CLAUDE.md.template @@ -1,214 +1,73 @@ # CLAUDE.md - AI 협업 프로토콜 -> **프로젝트:** [소설 제목] +> **프로젝트:** [프로젝트명] > **장르:** [장르] -> **권수:** [N]권 -> **작성일:** YYYY-MM-DD +> **현재 진행:** [X권 작성 중 / 수정 중 / 완료] --- -## 🔴 절대 규칙 (최우선) +## 🔴 세션 시작 시 필수! -1. **세션 시작 시 자동 실행** - 아래 "세션 시작 프로토콜" 무조건 실행 -2. **모드 확인** - WORK-MODE.txt 확인 후 해당 모드 프로토콜 실행 (v3.0) -3. **5화 단위 작성** - 항상 5화씩 연속 작성 -4. **서머리 자동 업데이트** - 각 화 완료 시 즉시 summary 업데이트 -5. **설정 파일 우선** - settings/ 및 vol-XX/ 내용이 최우선 -6. **일관성 검증** - 매 화마다 캐릭터/타임라인 체크 -7. **마스터 파일 동기화** - 작업 파일 변경 시 마스터도 업데이트 +### 1. CURRENT-TASK.md 확인 +``` +CURRENT-TASK.md 있으면 → 읽고 해당 작업 이어서 +CURRENT-TASK.md 없으면 → 사용자에게 "무엇을 할까요?" 질문 +``` + +### 2. 복구 시 읽을 파일 +CURRENT-TASK.md에 명시된 파일들 자동 읽기 --- -## 📋 세션 시작 프로토콜 (v3.0) +## 📂 파일 위치 -**Step 1: 이 파일 읽기** ✅ (자동) - -**Step 2: 모드 확인 (최우선!)** ⭐⭐⭐ - -```bash -# WORK-MODE.txt 확인 -if [ -f "volumes/vol-XX/WORK-MODE.txt" ]; then - MODE=$(grep "^MODE:" volumes/vol-XX/WORK-MODE.txt | cut -d: -f2 | xargs) -else - MODE="UNKNOWN" -fi +### 🔧 작업 표준 (How to write) +``` +standards/ +├── writing-mode.md # 작성 모드 절차 +├── modification-mode.md # 수정 모드 절차 +├── verification-mode.md # 점검 모드 절차 +├── chapter-format.md # 챕터 형식 규칙 +├── renaming-protocol.md # 리네임 안전 규칙 +└── writing-guide.md # 작성 규칙 (문체, 분량) ``` -**MODE별 분기:** - -**MODE = "MODIFICATION"** (수정 모드) +### 📚 소설 설정 (What to write) ``` -→ settings/modification-mode.md 읽기 -→ 수정 프로토콜 실행 -→ 이 파일 이하 실행 중단! (modification-mode.md만 따름) +settings/ +├── characters-master.md # 전체 캐릭터 + 호칭 규칙 +├── timeline-master.md # 전체 타임라인 +└── plot-master.md # 전체 플롯 ``` -**MODE = "VERIFICATION"** (점검 모드) +### 📖 권별 작업 파일 ``` -→ settings/verification-mode.md 읽기 -→ 점검 프로토콜 실행 -→ 이 파일 이하 실행 중단! -``` - -**MODE = "UNKNOWN"** 또는 **없음** (작성 모드, 기본) -``` -→ 계속 진행 (아래 Step 3 실행) -→ settings/writing-mode.md 읽기 (선택) -``` - -**Step 3: 작성 모드 파일 읽기** - -세션 시작 시 자동 실행: - -``` -1. 이 파일 (CLAUDE.md) 읽기 ✅ (자동) -2. WORK-MODE.txt 확인 ✅ (Step 2) -3. volumes/vol-XX/characters.md 읽기 -4. volumes/vol-XX/timeline.md 읽기 -5. settings/writing-guide.md 읽기 -6. plots/plot-XXX-YYY.md 읽기 (이번 5화) -7. summaries/summary-이전.md 읽기 ⭐ -8. summaries/summary-vol-이전-final.md 읽기 (다른 권이면) -9. docs/todo.md 읽기 (있으면) -``` - -**읽기 완료 후:** -``` -"준비 완료. ch-XXX부터 시작합니다." +volumes/vol-XX/ +├── characters.md # 해당 권 캐릭터 (추출본) +├── timeline.md # 해당 권 타임라인 (추출본) +├── plot-master.md # 해당 권 플롯 +├── plots/ # 5화별 플롯 +├── summaries/ # 누적 서머리 +├── chapters/ # 실제 원고 +└── CHANGELOG.md # 변경 이력 ``` --- -## 📝 작성 프로세스 +## 🎯 모드 진입 -### 각 화 작성 시: +| 명령어 | 모드 | 읽을 파일 | +|--------|------|----------| +| "작성 모드" / "X화 작성해" | WRITING | standards/writing-mode.md | +| "수정 모드" / "수정 준비해" | MODIFICATION | standards/modification-mode.md | +| "점검 모드" / "검증해" | VERIFICATION | standards/verification-mode.md | -``` -1. plot 파일 확인 - - 날짜, 장소, 등장인물 - - 핵심 내용, 주요 장면 - - 분량, 복선 - -2. 메모리 참조 (파일 읽기 X!) - - characters.md: 성격, 말투 - - timeline.md: 날짜 확인 - - writing-guide.md: 작성 규칙 - - summary: 이전 내용 - -3. 작성 - - Show, Don't Tell - - 5감 묘사 - - 대화:묘사:서술 = 40:40:20 - - 분량: 8,000-12,000자 - -4. 완료 후 즉시 - - chapters/ch-XXX.md 저장 - - summaries/summary 업데이트 (누적!) - - 변경사항 있으면 마스터 동기화 -``` - ---- - -## 🔄 변경사항 처리 - -### 새 캐릭터 추가 시: -``` -1. volumes/vol-XX/characters.md 업데이트 -2. settings/characters-master.md 업데이트 ⭐ -3. summary에 기록 -``` - -### 복선 추가 시: -``` -1. volumes/vol-XX/timeline.md 복선 추적표 -2. settings/timeline-master.md 복선 추적표 ⭐ -3. summary에 기록 -``` - -### 설정 변경 시: -``` -즉시 사용자에게 보고: -"[변경사항] 발생. 확인 필요합니다." -``` - ---- - -## 📊 서머리 관리 - -### 형식: - -```markdown -# X-Y화 누적 서머리 - -> 최종 업데이트: YYYY-MM-DD HH:MM -> 현재: ch-YYY (총 Y화) - -## 📌 전체 줄거리 -{누적 3-5문단} - -## 📖 챕터별 핵심 -### ch-XXX: [제목] -**날짜:** YYYY-MM-DD -**핵심:** 1줄 요약 - -## 🎭 캐릭터 상태 -### [이름]: -- ch-XXX: 상태 - -## ⚠️ 복선 -- [ ] [내용] (ch-XXX) → 회수: [시점] - -## 📊 통계 -- 총 챕터: Y화 -- 총 분량: Z자 -``` - ---- - -## ✅ 5화 완료 체크리스트 - -``` -각 5화 완료 시 자동 실행: - -✅ 5개 챕터 파일 생성 -✅ summary 누적 업데이트 -✅ 캐릭터/타임라인 변경사항 마스터 동기화 -✅ Git 커밋 - 형식: - "X-Y화 작성 완료 - - - ch-XXX: [제목] (Z자) - ... - - summary-XXX-YYY.md 업데이트 - - 총 Z자 - - Co-Authored-By: Claude Sonnet 4.5 " -✅ Git 푸시 -✅ 다음 5화 안내 -``` - ---- - -## 🎯 권 완료 체크리스트 - -``` -50화 완료 시: - -✅ summary-001-050.md 확인 -✅ summary-vol-XX-final.md 생성 (압축!) -✅ 미회수 복선 정리 -✅ Git 커밋 - "X권 완료 - - - 50화 전체 (Z자) - - summary-vol-XX-final.md 생성 - - 미회수 복선 N개 - - Co-Authored-By: Claude Sonnet 4.5 " -✅ Git 푸시 -✅ 다음 권 안내 -``` +### 모드 진입 시 행동 +1. 해당 모드 파일 읽기 +2. 모드 파일이 지시하는 추가 파일 읽기 +3. CURRENT-TASK.md 생성/업데이트 +4. "준비 완료" 보고 +5. 작업 시작 --- @@ -216,73 +75,26 @@ fi **제목:** [소설 제목] **장르:** [장르] -**권수:** [N]권 -**화/권:** 50화 +**총 권수:** [N]권 +**화/권:** [50]화 **분량/화:** 8,000-12,000자 -**총 분량:** 약 [N * 500,000]자 - -**시간 배경:** [시작] - [종료] +**시간 배경:** [시작년도] - [종료년도] **주인공:** [이름] **핵심 줄거리:** -{3문장} +[3문장 요약] --- -## 🚫 금지 사항 +## 🚫 절대 규칙 -❌ 설정 파일 읽지 않고 작성 -❌ 서머리 업데이트 생략 -❌ 마스터 파일 동기화 누락 -❌ 날짜/나이 오류 -❌ 캐릭터 OOC -❌ 복선 누락 -❌ WORK-MODE.txt 무시 (v3.0) -❌ 수정 시 summary 재생성 누락 (v3.0) +1. **CURRENT-TASK.md 확인 필수** - 세션 시작 시 +2. **모드 파일 읽고 작업** - 맨땅에 헤딩 금지 +3. **summary 업데이트 필수** - 매 화 완료 시 +4. **바텀 금지** - 챕터 끝에 "[X화 끝]" 넣지 말 것 +5. **헤더만 화수 표시** - # X권 Y화: 제목 --- -## 💡 명령어 - -### 설계: -- "큰 틀 정하자" → Phase 1 -- "X권 플롯 작성" → Phase 2 - -### 실행: -- "실행 준비" → Phase 3 -- "1~5화 작성해" → Phase 4 - -### 수정 (v3.0): -- "수정 준비해: [문제명]" → 수정 모드 준비 -- "수정 실행" → 수정 모드 실행 - -### 점검 (v3.0): -- "점검해" → 전체 검증 - -### 유틸: -- "타임라인 검증" → 날짜 체크 -- "복선 현황" → 미회수 떡밥 -- "캐릭터 상태" → 현재 상태 - ---- - -## 📚 참고 파일 - -### 공통 (settings/): -- `writing-guide.md`: 전체 작성 규칙 -- `chapter-format-standard.md`: 챕터 형식 표준 (v3.0) -- `writing-mode.md`: 작성 모드 절차 (v3.0) -- `modification-mode.md`: 수정 모드 절차 (v3.0) -- `verification-mode.md`: 점검 모드 절차 (v3.0) -- `renaming-protocol.md`: 안전한 리네임 (v3.0) - -### 권별 (volumes/vol-XX/): -- `CHANGELOG.md`: 변경 이력 (v3.0) -- `WORK-MODE.txt`: 현재 모드 (v3.0, 임시) - ---- - -*AI는 이 파일을 항상 우선 읽고 규칙을 준수한다.* - -*v3.0에서는 WORK-MODE.txt 확인이 최우선이다!* +*이 파일은 매 세션 자동으로 읽습니다. 가볍게 유지하세요.* diff --git a/templates/CURRENT-TASK.md.template b/templates/CURRENT-TASK.md.template new file mode 100644 index 0000000..b04dbe7 --- /dev/null +++ b/templates/CURRENT-TASK.md.template @@ -0,0 +1,67 @@ +# 현재 작업 상태 + +**최종 업데이트:** YYYY-MM-DD HH:MM + +--- + +## 모드 +[WRITING / MODIFICATION / VERIFICATION] + +## 작업 +[구체적인 작업 내용] +예: 2권 6-10화 작성 / ch-029 타임라인 수정 / 2권 전체 검증 + +## 진행 상황 + +### 작성 모드 (WRITING) +| 챕터 | 상태 | 완료 시간 | +|------|------|----------| +| ch-006 | ✅ 완료 | 14:00 | +| ch-007 | ✅ 완료 | 15:30 | +| ch-008 | ⏳ 진행중 | - | +| ch-009 | ⬜ 대기 | - | +| ch-010 | ⬜ 대기 | - | + +### 수정 모드 (MODIFICATION) +| 단계 | 상태 | +|------|------| +| 영향 분석 | ✅ 완료 | +| 챕터 수정 | ⏳ 진행중 | +| summary 재생성 | ⬜ 대기 | +| 검증 | ⬜ 대기 | +| Git 커밋 | ⬜ 대기 | + +### 검증 모드 (VERIFICATION) +| 단계 | 상태 | +|------|------| +| 1. 구조 검증 | ✅ 완료 | +| 2. 형식 검증 | ✅ 완료 | +| 3. 타임라인 검증 | ⏳ 진행중 | +| 4. 내용 검증 | ⬜ 대기 | +| 5. 일관성 검증 | ⬜ 대기 | +| 6. 보고서 생성 | ⬜ 대기 | + +--- + +## 다음 할 일 +[구체적인 다음 액션] +예: ch-008 작성 시작 / summary-001-030 재생성 / 4단계 내용 검증 + +--- + +## 읽어야 할 파일 +- volumes/vol-XX/plots/plot-XXX-YYY.md +- volumes/vol-XX/summaries/summary-XXX-YYY.md +- volumes/vol-XX/characters.md +- volumes/vol-XX/timeline.md + +--- + +## 메모 +[컴팩팅 후 알아야 할 중요 정보] +- 예: ch-007에서 린샤오핑 첫 등장 +- 예: ch-029/030 타임라인 역전 문제 수정 중 + +--- + +*이 파일은 컴팩팅 후 맥락 복구용입니다. 작업 진행 시 수시로 업데이트하세요.* diff --git a/templates/standards/chapter-format.md b/templates/standards/chapter-format.md new file mode 100644 index 0000000..9712647 --- /dev/null +++ b/templates/standards/chapter-format.md @@ -0,0 +1,227 @@ +# 챕터 형식 표준 + +> **버전:** 2.0 +> **용도:** 챕터 파일 헤더/구조 규칙 + +--- + +## 📐 필수 형식 + +### 헤더 (필수) + +```markdown +# [권수]권 [화수]화: [제목] + +> **타임라인:** YYYY.M.D-M.D +> **장소:** 장소1, 장소2 +``` + +### 본문 + +```markdown +--- + +## Part 1: [소제목] + +(본문 내용) + +--- + +## Part 2: [소제목] + +(본문 내용) + +--- + +(Part 3, 4, ... 반복) + +(본문으로 끝. 바텀 없음!) +``` + +--- + +## ✅ 헤더 규칙 + +### 제목 라인 + +**형식:** `# [권수]권 [화수]화: [제목]` + +``` +✅ 올바른 예: +# 2권 29화: 만주 특별구 출범 +# 1권 1화: 빛 속으로 + +❌ 잘못된 예: +# ch-029: 제목 (ch- 형식 금지) +# 29화: 제목 (권 번호 누락) +# 2권 29화 : 제목 (콜론 앞 공백) +# 2권 이십구화: 제목 (화수는 숫자만) +``` + +### 타임라인 + +**형식:** `> **타임라인:** YYYY.M.D-M.D` + +``` +✅ 올바른 예: +> **타임라인:** 1950.3.11-4.1 +> **타임라인:** 1947.1.1 +> **타임라인:** 1950.5.1-12.31 + +❌ 잘못된 예: +> **타임라인:** 1950-3-11~4-1 (구분자 잘못) +> **타임라인:** 1950/3/11 (슬래시 금지) +> **타임라인:** 1950.03.11 (0 패딩 불필요) +``` + +### 장소 + +**형식:** `> **장소:** 장소1, 장소2` + +``` +✅ 올바른 예: +> **장소:** 만주 연길 +> **장소:** 서울, 청와대 +``` + +--- + +## 🚫 바텀 금지! (매우 중요) + +### 절대 넣지 말 것 + +``` +❌ [29화 끝] +❌ [2권 29화 끝] +❌ 다음 30화: 제목 +❌ --- 끝 --- +❌ (계속) +``` + +### 이유 + +1. **중복 정보** - 헤더에 이미 화수 있음 +2. **유지보수 지옥** - 리넘버링 시 전부 수정 필요 +3. **불일치 위험** - 파일명/헤더와 바텀 불일치 + +### 올바른 챕터 끝 + +```markdown +## Part 4: 마지막 장면 + +(본문 내용) + +(여기서 끝. 아무것도 추가하지 않음!) +``` + +--- + +## 📊 타임라인 연속성 + +### 규칙 + +``` +이전 화 종료일 ≤ 현재 화 시작일 +``` + +### 예시 + +``` +ch-028: 1950.3.11-4.1 (종료: 4.1) +ch-029: 1950.4.2-4.30 (시작: 4.2) ← OK ✅ + +ch-029: 1950.5.1-12.31 (종료: 12.31) +ch-030: 1950.4.1-4.30 (시작: 4.1) ← 역행! ❌ +``` + +### 예외: 플래시백/회상 + +``` +> **타임라인:** 1950.5.1 (회상: 1947.6.1) +``` + +--- + +## 📝 제목 규칙 + +### 유니크성 + +``` +❌ 동일 권 내 제목 중복 금지 + +ch-029: "만주 개발 시작" +ch-030: "만주 개발 시작" ← 중복! ❌ + +해결: +ch-029: "만주 개발 준비" +ch-030: "만주 개발 시작" ← OK ✅ +``` + +### 제목 형식 + +- 간결하게 (10자 이내 권장) +- 해당 화 핵심 내용 반영 +- 스포일러 주의 + +--- + +## 📐 본문 구조 + +### Part 구성 + +```markdown +## Part 1: 아침 +(2-4문단) + +--- + +## Part 2: 회의 +(3-5문단) + +--- + +## Part 3: 결정 +(2-3문단) +``` + +### 권장 + +- Part 4-6개 / 화 +- Part당 2-5문단 +- Part 사이 `---` 구분선 +- 마지막 Part 후 아무것도 없음 (바텀 금지!) + +--- + +## ✅ 작성 전 체크리스트 + +``` +- [ ] 이전 화 종료 날짜 확인 +- [ ] 타임라인 연속성 확인 +- [ ] 제목 중복 없는지 확인 +- [ ] 헤더 형식 올바른지 확인 +- [ ] plot 파일과 일치하는지 확인 +``` + +## ✅ 작성 후 체크리스트 + +``` +- [ ] 헤더 형식 정확 +- [ ] 타임라인 형식 정확 +- [ ] 바텀 없음 확인! +- [ ] 분량 8,000자 이상 +``` + +--- + +## 🔍 자동 검증 명령 + +``` +"형식 검증해" → 헤더/타임라인/바텀 체크 +"바텀 검증해" → 바텀 있는 챕터 목록 +"바텀 일괄 제거해" → 바텀 자동 제거 +``` + +--- + +*헤더만 화수 표시! 바텀은 절대 금지!* diff --git a/templates/standards/modification-mode.md b/templates/standards/modification-mode.md new file mode 100644 index 0000000..b175814 --- /dev/null +++ b/templates/standards/modification-mode.md @@ -0,0 +1,325 @@ +# 수정 모드 프로토콜 + +> **버전:** 2.0 +> **용도:** 기존 챕터 수정 및 재구성 (MODE: MODIFICATION) + +--- + +## 📋 수정 모드 개요 + +**수정 모드는:** +- 기존 챕터 수정/재구성 +- 영향 범위 분석 필수 +- summary 재생성 필수 +- CHANGELOG 업데이트 + +**진입 명령:** +- "수정 모드" +- "수정 준비해" +- "수정 준비해: [수정 내용]" + +--- + +## 📚 모드 진입 시 읽을 파일 + +### 필수 +1. `standards/chapter-format.md` - 챕터 형식 규칙 +2. 수정 대상 챕터들 +3. 영향받는 summary들 + +### 리네임 시 추가 +4. `standards/renaming-protocol.md` - 리네임 안전 규칙 + +--- + +## 🔀 수정 유형 분류 + +| 유형 | 설명 | 복잡도 | +|------|------|--------| +| **A. 단순 수정** | 오타, 문장 다듬기 | ⭐ | +| **B. 내용 수정** | 한 화 내용 변경 | ⭐⭐ | +| **C. 다중 수정** | 여러 화 같은 변경 (예: 호칭) | ⭐⭐ | +| **D. 플롯 수정** | 플롯 변경 → 본문 반영 | ⭐⭐⭐ | +| **E. 삽입** | 중간에 새 화 추가 | ⭐⭐⭐⭐ | +| **F. 삭제** | 기존 화 삭제 | ⭐⭐⭐ | +| **G. 분할** | 한 화 → 두 화 | ⭐⭐⭐⭐ | +| **H. 병합** | 두 화 → 한 화 | ⭐⭐⭐ | + +--- + +## 🎯 공통 프로세스 + +``` +1. 수정 유형 판단 + ↓ +2. 영향 범위 분석 ⭐⭐⭐ + - 어떤 챕터? + - 어떤 summary? + - 리네임 필요? + ↓ +3. 수정 계획 수립 + ↓ +4. CURRENT-TASK.md 생성 + ↓ +5. 사용자 승인 + ↓ +6. 수정 실행 + ↓ +7. summary 재생성 (영향 범위 전체!) + ↓ +8. 검증 + ↓ +9. CHANGELOG 업데이트 + ↓ +10. Git 커밋 +``` + +--- + +## 📝 유형별 상세 + +### A. 단순 수정 (오타, 문장) + +``` +영향 범위: 해당 챕터만 +summary: 내용 변화 없으면 불필요 +리네임: 불필요 + +절차: +1. 챕터 수정 +2. Git 커밋 +``` + +### B. 내용 수정 (한 화) + +``` +영향 범위: 해당 챕터 + 이후 summary +summary: 해당 챕터부터 끝까지 재생성 +리네임: 불필요 + +절차: +1. 챕터 수정 +2. summary-001-XXX ~ 끝 재생성 +3. 검증 +4. Git 커밋 + +예: ch-029 수정 +→ summary-001-030, 035, 040, ..., 060 전부 재생성 +``` + +### C. 다중 수정 (여러 화, 같은 변경) + +``` +영향 범위: 해당 챕터들 + 이후 summary +summary: 첫 수정 챕터부터 끝까지 +리네임: 불필요 + +절차: +1. 대상 챕터 일괄 수정 +2. summary 재생성 (첫 수정 챕터부터) +3. 검증 +4. Git 커밋 + +예: ch-025~050 "당신" → "윤희 씨" 변경 +→ summary-001-025부터 재생성 +``` + +### D. 플롯 수정 (대규모) + +``` +영향 범위: plot + 해당 챕터들 + summary +summary: 영향받는 첫 챕터부터 끝까지 +리네임: 보통 불필요 + +절차: +1. plot-master.md 수정 +2. plot-XXX-YYY.md 수정 +3. 챕터 수정/재작성 +4. summary 재생성 +5. 검증 +6. Git 커밋 +``` + +### E. 삽입 (새 화 추가) ⭐⭐⭐⭐ + +``` +영향 범위: 삽입 위치 이후 모든 챕터 번호! +summary: 삽입 위치부터 전체 재생성 +리네임: 필수! + +절차: +1. 영향 범위 분석 + - ch-029와 030 사이 삽입 + - → ch-030~060 전부 +1 + +2. 리네임 (역순!) + ch-060 → ch-061 + ch-059 → ch-060 + ... + ch-030 → ch-031 + +3. 새 화 작성 (ch-030) + +4. 헤더 수정 (모든 리넘버링 파일) + # 2권 30화 → # 2권 31화 + +5. plot 수정 + +6. summary 재생성 + +7. 검증 + +8. Git 커밋 +``` + +### F. 삭제 (화 삭제) + +``` +영향 범위: 삭제 위치 이후 모든 챕터 번호 +summary: 삭제 위치부터 전체 재생성 +리네임: 필수! + +절차: +1. ch-029 백업/삭제 + +2. 리네임 (정순!) + ch-030 → ch-029 + ch-031 → ch-030 + ... + +3. 헤더 수정 + +4. plot 수정 + +5. summary 재생성 + +6. 검증 + +7. Git 커밋 +``` + +### G. 분할 (한 화 → 두 화) + +``` += E. 삽입과 유사 + +ch-029 → ch-029(상), ch-030(하) +→ 이후 번호 +1 +``` + +### H. 병합 (두 화 → 한 화) + +``` += F. 삭제와 유사 + +ch-029 + ch-030 → ch-029 +→ 이후 번호 -1 +``` + +--- + +## 🔄 리네임 안전 규칙 + +### 덮어쓰기 방지! + +``` +❌ 정순 (삽입 시): +ch-030 → ch-031 +ch-031 → ch-032 ← ch-031이 이미 바뀐 파일! +→ 데이터 손실! + +✅ 역순 (삽입 시): +ch-060 → ch-061 +ch-059 → ch-060 +... +ch-030 → ch-031 +→ 안전! + +✅ 정순 (삭제 시): +ch-030 → ch-029 +ch-031 → ch-030 +... +→ 안전! (이미 삭제된 위치로 이동) +``` + +### 또는 2단계 리네임 + +``` +1단계: 임시 이름 +ch-030 → ch-030-temp +ch-031 → ch-031-temp +... + +2단계: 최종 이름 +ch-030-temp → ch-031 +ch-031-temp → ch-032 +... +``` + +--- + +## ✅ 수정 체크리스트 + +### 수정 전 +- [ ] 수정 유형 판단 (A~H) +- [ ] 영향 범위 분석 +- [ ] CURRENT-TASK.md 생성 +- [ ] Git 현재 상태 커밋 (백업) + +### 수정 중 +- [ ] 챕터 수정 +- [ ] 리네임 (필요시, 순서 주의!) +- [ ] 헤더 수정 (리네임 시) +- [ ] plot 수정 (필요시) + +### 수정 후 +- [ ] summary 재생성 (영향 범위 전체!) +- [ ] 타임라인 검증 +- [ ] 헤더 화수 = 파일명 확인 +- [ ] CHANGELOG 업데이트 +- [ ] Git 커밋 +- [ ] CURRENT-TASK.md 삭제 + +--- + +## 📊 영향 범위 분석 템플릿 + +```markdown +# 수정 영향 분석 + +**수정 유형:** [A~H] +**수정 내용:** [구체적 내용] + +## 영향받는 파일 + +### 챕터 +| 현재 | 변경 후 | 헤더 수정 | +|------|--------|----------| +| ch-030 | ch-031 | # 30화 → 31화 | +| ... | ... | ... | + +### Summary (재생성 필요) +- summary-001-030.md ~ summary-001-060.md + +### Plot (수정 필요) +- plot-master.md +- plot-026-030.md + +## 작업 순서 +1. ... +2. ... +``` + +--- + +## 🚫 수정 모드 금지사항 + +❌ 영향 분석 없이 수정 +❌ summary 재생성 누락 +❌ 리네임 순서 무시 (덮어쓰기 위험!) +❌ CHANGELOG 업데이트 누락 +❌ Git 커밋 없이 종료 + +--- + +*수정은 신중하게! 영향 범위 분석이 핵심입니다.* diff --git a/templates/standards/renaming-protocol.md b/templates/standards/renaming-protocol.md new file mode 100644 index 0000000..2f07aa7 --- /dev/null +++ b/templates/standards/renaming-protocol.md @@ -0,0 +1,239 @@ +# 리네임 안전 프로토콜 + +> **버전:** 2.0 +> **용도:** 화수 변경/리넘버링 시 안전한 절차 + +--- + +## 🚨 왜 리네임이 위험한가? + +### 덮어쓰기 문제 + +``` +시나리오: ch-030~060을 ch-031~061로 변경 + +❌ 정순으로 하면: +ch-030 → ch-031 (OK, ch-031 자리 비어있음) +ch-031 → ch-032 (❌ ch-031은 이미 바뀐 ch-030!) +→ 원래 ch-031 데이터 손실! + +✅ 역순으로 하면: +ch-060 → ch-061 (OK) +ch-059 → ch-060 (OK, ch-060 자리 비어있음) +... +ch-030 → ch-031 (OK) +→ 안전! +``` + +--- + +## 📋 리네임 유형 + +| 유형 | 방향 | 방법 | +|------|------|------| +| **삽입** | 번호 +1 | 역순 | +| **삭제** | 번호 -1 | 정순 | +| **분할** | 번호 +1 | 역순 | +| **병합** | 번호 -1 | 정순 | + +--- + +## 🔄 방법 1: 역순/정순 리네임 + +### 삽입 시 (번호 +1) - 역순! + +```bash +# ch-029와 030 사이에 삽입 +# → ch-030~060을 ch-031~061로 + +# 역순으로! (60부터 30까지) +mv ch-060.md ch-061.md +mv ch-059.md ch-060.md +mv ch-058.md ch-059.md +... +mv ch-030.md ch-031.md + +# 새 화 생성 +# ch-030.md 작성 +``` + +### 삭제 시 (번호 -1) - 정순! + +```bash +# ch-029 삭제 +# → ch-030~060을 ch-029~059로 + +# ch-029 백업/삭제 +mv ch-029.md _backup/ch-029.md + +# 정순으로! (30부터 60까지) +mv ch-030.md ch-029.md +mv ch-031.md ch-030.md +... +mv ch-060.md ch-059.md +``` + +--- + +## 🔄 방법 2: 2단계 리네임 (더 안전) + +### 1단계: 임시 이름으로 + +```bash +# 모든 대상 파일을 임시 이름으로 +mv ch-030.md ch-030-temp.md +mv ch-031.md ch-031-temp.md +mv ch-032.md ch-032-temp.md +... +mv ch-060.md ch-060-temp.md +``` + +### 2단계: 최종 이름으로 + +```bash +# 임시 이름에서 최종 이름으로 +mv ch-030-temp.md ch-031.md +mv ch-031-temp.md ch-032.md +... +mv ch-060-temp.md ch-061.md +``` + +**장점:** 순서 상관없이 안전 +**단점:** 두 번 작업 + +--- + +## ✅ 리네임 체크리스트 + +### 리네임 전 + +``` +- [ ] 영향 범위 분석 완료 +- [ ] Git 현재 상태 커밋 (백업!) +- [ ] 리네임 방향 결정 (역순/정순) +- [ ] 대상 파일 목록 작성 +``` + +### 리네임 중 + +``` +- [ ] 파일명 변경 (순서 주의!) +- [ ] 헤더 화수 수정 + # 2권 30화 → # 2권 31화 +- [ ] 타임라인 확인 (변경 필요 시) +``` + +### 리네임 후 + +``` +- [ ] 파일명 = 헤더 화수 일치 확인 +- [ ] summary 해당 챕터 번호 수정 +- [ ] plot 해당 챕터 번호 수정 +- [ ] 타임라인 연속성 확인 +- [ ] Git 커밋 +``` + +--- + +## 📊 영향받는 파일 + +### 챕터 파일 + +``` +파일명: ch-XXX.md → ch-YYY.md +헤더: # X권 XXX화 → # X권 YYY화 +``` + +### Summary 파일 + +``` +summary-001-030.md 내용: + "### ch-030: 제목" → "### ch-031: 제목" + +또는 summary 자체 재생성 +``` + +### Plot 파일 + +``` +plot-master.md: + "30화: 제목" → "31화: 제목" + +plot-026-030.md → plot-027-031.md (필요시) +``` + +--- + +## 🔧 자동화 스크립트 예시 + +### 삽입 (역순 리네임) + +```bash +#!/bin/bash +# 삽입 위치 이후 번호 +1 + +START=30 +END=60 + +for ((i=END; i>=START; i--)); do + OLD=$(printf "ch-%03d.md" $i) + NEW=$(printf "ch-%03d.md" $((i+1))) + + if [ -f "$OLD" ]; then + mv "$OLD" "$NEW" + echo "Renamed: $OLD → $NEW" + fi +done +``` + +### 헤더 일괄 수정 + +```bash +#!/bin/bash +# 헤더 화수 일괄 수정 + +for FILE in ch-*.md; do + # 파일명에서 화수 추출 + NUM=$(echo "$FILE" | grep -oP '\d+') + NUM_CLEAN=$(echo $NUM | sed 's/^0*//') + + # 헤더 수정 (권 번호는 유지) + sed -i "s/# \([0-9]*\)권 [0-9]*화:/# \1권 ${NUM_CLEAN}화:/" "$FILE" +done +``` + +--- + +## 🚫 리네임 금지사항 + +``` +❌ 백업 없이 리네임 +❌ 순서 무시 (덮어쓰기 위험!) +❌ 헤더 수정 누락 +❌ summary/plot 수정 누락 +❌ Git 커밋 없이 종료 +``` + +--- + +## 💡 팁 + +### 대규모 리네임 시 + +``` +1. 작은 범위로 테스트 먼저 +2. Git으로 롤백 가능한 상태 유지 +3. 2단계 방법 권장 (더 안전) +4. 리네임 후 즉시 검증 +``` + +### 실수 발생 시 + +``` +git checkout -- . +→ 마지막 커밋 상태로 복구 +``` + +--- + +*리네임은 신중하게! 백업 필수, 순서 중요!* diff --git a/templates/standards/verification-mode.md b/templates/standards/verification-mode.md new file mode 100644 index 0000000..50b1793 --- /dev/null +++ b/templates/standards/verification-mode.md @@ -0,0 +1,314 @@ +# 검증 모드 프로토콜 + +> **버전:** 2.0 +> **용도:** 전체 검증 및 일관성 체크 (MODE: VERIFICATION) + +--- + +## 📋 검증 모드 개요 + +**검증 모드는:** +- 6단계 통합 검증 +- 구조, 형식, 타임라인, 내용, 일관성 전체 체크 +- 상세 보고서 생성 + +**진입 명령:** +- "검증해" +- "점검 모드" +- "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] 보고서 생성 중... + ↓ +보고서 출력 +``` + +--- + +## 📝 단계별 상세 + +### 1단계: 구조 검증 + +``` +✅ 파일 존재/연속성 + - ch-001 ~ ch-XXX 모두 있나? + - 빠진 번호 없나? + - 중복 번호 없나? + +✅ 파일명 규칙 + - ch-XXX.md 형식 + - 3자리 숫자 패딩 + +출력: +- 총 챕터 수 +- 빠진 번호 목록 +- 중복 번호 목록 +``` + +### 2단계: 형식 검증 + +``` +✅ 헤더 형식 + - "# X권 Y화: 제목" 형식 + - 파일명 번호 = 헤더 화수 일치 + +✅ 타임라인 형식 + - "> **타임라인:** YYYY.M.D-M.D" 형식 + +⭐ 바텀 검증 + - "[X화 끝]" 있으면 → 🔴 제거 필요 + - "다음 X화:" 있으면 → 🔴 제거 필요 + +출력: +- 헤더 오류 목록 +- 화수 불일치 목록 +- 바텀 있는 챕터 목록 (제거 필요) +``` + +### 3단계: 타임라인 검증 + +``` +✅ 시간 순서 + - ch-001 → ch-002 → ... 시간 순서 + +✅ 역행 체크 + - 이전 화보다 과거로 가는 경우 + +✅ 날짜 겹침 + - 같은 날짜 과도한 반복 + +출력: +- 타임라인 순서 테이블 +- 역행 발견 목록 +- 날짜 겹침 경고 +``` + +### 4단계: 내용 검증 + +``` +✅ 플롯 일치도 + - plot-master.md와 실제 내용 비교 + - 제목, 타임라인, 핵심 내용 + +✅ 캐릭터 등장 + - 소개 없이 갑자기 등장? + - 죽은/퇴장 캐릭터 재등장? + +⭐ 호칭 일관성 + - characters-master.md의 호칭 규칙 기준 + - 결혼 전/후 호칭 구분 + - 갑자기 호칭 바뀌는 경우 + +✅ 말투 일관성 + - 존댓말/반말 패턴 유지 + +출력: +- 플롯 불일치 목록 +- 호칭 오류 목록 +- 캐릭터 오류 목록 +``` + +### 5단계: 일관성 검증 + +``` +✅ 앞뒤 연결 + - 이전 화 끝 ↔ 다음 화 시작 + - 갑작스러운 상황 변화 + +✅ 복선 추적 + - 설치된 복선 목록 + - 회수된 복선 목록 + - 미회수 복선 (회수 예정) + +✅ 설정 충돌 + - 같은 사건 다른 날짜 + - 같은 캐릭터 다른 나이 + +출력: +- 연결 오류 목록 +- 복선 현황 테이블 +- 설정 충돌 목록 +``` + +### 6단계: 보고서 생성 + +```markdown +# X권 전체 검증 보고서 + +**검증일:** YYYY-MM-DD +**검증 범위:** ch-001 ~ ch-XXX + +## 📊 전체 점수: XX/100 + +| 항목 | 점수 | 상태 | +|------|------|------| +| 구조 | 100% | ✅ | +| 형식 | XX% | ⚠️ | +| 타임라인 | XX% | ⚠️ | +| 내용 | XX% | ⚠️ | +| 일관성 | XX% | ⚠️ | + +## 🔴 즉시 수정 필요 (심각) +... + +## 🟡 수정 권장 (중요) +... + +## 🟢 경미한 문제 (선택) +... + +## 💡 권장 조치 +1. ... +2. ... +``` + +--- + +## 🔍 부분 검증 + +### 타임라인만 +``` +"타임라인만 검증해" → 3단계만 실행 +``` + +### 호칭만 +``` +"호칭 검증해" → 4단계 호칭 항목만 +``` + +### 바텀만 +``` +"바텀 검증해" → 2단계 바텀 항목만 +→ 바텀 있는 챕터 목록 출력 +→ "바텀 일괄 제거해" 명령 가능 +``` + +### 형식만 +``` +"형식 검증해" → 2단계만 실행 +``` + +--- + +## 🔧 바텀 일괄 제거 + +검증에서 바텀 발견 시: + +``` +AI: 바텀이 있는 챕터 15개 발견 + +| 챕터 | 바텀 내용 | +|------|----------| +| ch-003 | [3화 끝] | +| ch-006 | [6화 끝]\n다음 7화: | +| ... | ... | + +"바텀 일괄 제거해" 명령으로 제거 가능합니다. +``` + +``` +사용자: "바텀 일괄 제거해" + ↓ +AI: 15개 챕터에서 바텀 제거 + - [X화 끝] 패턴 제거 + - "다음 X화:" 패턴 제거 + ↓ +Git 커밋 +``` + +--- + +## ✅ 검증 체크리스트 + +### 1단계: 구조 +- [ ] 파일 존재 확인 +- [ ] 번호 연속성 +- [ ] 중복 없음 + +### 2단계: 형식 +- [ ] 헤더 형식 +- [ ] 헤더 화수 = 파일명 +- [ ] 타임라인 형식 +- [ ] 바텀 없음 ⭐ + +### 3단계: 타임라인 +- [ ] 시간 순서 +- [ ] 역행 없음 +- [ ] 날짜 겹침 최소 + +### 4단계: 내용 +- [ ] 플롯 일치도 +- [ ] 캐릭터 등장/퇴장 +- [ ] 호칭 일관성 ⭐ +- [ ] 말투 일관성 + +### 5단계: 일관성 +- [ ] 앞뒤 연결 +- [ ] 복선 추적 +- [ ] 설정 충돌 없음 + +### 6단계: 보고서 +- [ ] 전체 점수 +- [ ] 문제점 (심각도별) +- [ ] 권장 조치 + +--- + +## 📊 호칭 검증 기준 (characters-master.md 참조) + +```markdown +## 호칭 규칙 예시 + +### 강민준 ↔ 서윤희 +| 시점 | 민준→윤희 | 윤희→민준 | +|------|----------|----------| +| 첫 만남 | 서 선생님 | 강 선생님 | +| 친밀해진 후 | 윤희 씨 | 민준 씨 | +| 결혼 후 | 당신/윤희 씨 | 당신/민준 씨 | + +검증 시: +- 해당 시점의 호칭 규칙 적용 +- 불일치 시 오류 보고 +``` + +--- + +## 🚫 검증 모드 금지사항 + +❌ 검증 중 수정 (검증만!) +❌ 추측 보고 (실제 확인!) +❌ 사소한 문제 숨기기 (모두 보고!) +❌ 보고서 누락 + +--- + +*검증은 꼼꼼하게! 작성/수정 완료 후 반드시 실행하세요.* diff --git a/templates/standards/writing-guide.md b/templates/standards/writing-guide.md new file mode 100644 index 0000000..a1ca6e1 --- /dev/null +++ b/templates/standards/writing-guide.md @@ -0,0 +1,218 @@ +# 작성 가이드 (문체/분량 규칙) + +> **버전:** 2.0 +> **용도:** 소설 작성 시 문체, 분량, 표현 규칙 + +--- + +## 📝 핵심 원칙 + +### 1. Show, Don't Tell + +``` +❌ "강민준은 화가 났다." +✅ "강민준의 주먹이 떨렸다. 턱 근육이 단단히 굳었다." + +❌ "그녀는 슬펐다." +✅ "그녀의 눈가가 붉어졌다. 목소리가 떨렸다." +``` + +### 2. 5감 묘사 (최소 2가지/장면) + +``` +시각: 색, 빛, 움직임 +청각: 소리, 목소리, 침묵 +촉각: 온도, 질감, 압력 +후각: 냄새, 향기 +미각: 맛 (식사 장면 등) + +예시: +"차가운 바람이 뺨을 스쳤다(촉각). +멀리서 기적 소리가 들려왔다(청각)." +``` + +### 3. 대화:묘사:서술 비율 + +``` +대화: 40% +묘사: 40% +서술: 20% + +❌ 대화만 연속 (희곡처럼) +❌ 묘사만 연속 (지루함) +❌ 서술만 연속 (보고서처럼) +``` + +--- + +## 📊 분량 기준 + +### 1화 적정 분량 + +``` +권장: 8,000 ~ 12,000자 + +| 분량 | 평가 | +|------|------| +| 3,000-5,000자 | ❌ 너무 짧음 | +| 6,000-7,000자 | ⚠️ 조금 짧음 | +| 8,000-12,000자 | ✅ 적절 | +| 13,000-15,000자 | ⚠️ 조금 김 | +| 15,000자 이상 | ❌ 분할 고려 | +``` + +### 속도 조절 + +``` +일반: 1화 = 1-3일 +중요 장면: 느리게 (1일 = 2화도 OK) +일상/이동: 빠르게 (1주일 = 1화도 OK) +``` + +--- + +## 🎭 캐릭터 표현 + +### 말투 일관성 + +``` +각 캐릭터별 말투 패턴 유지: +- 존댓말 vs 반말 +- 말버릇, 어미 +- 어휘 수준 + +예시: +- 강민준: 짧고 명확, 존댓말 기본 +- 서윤희: 부드럽고 따뜻, 존댓말 +- 최태준: 형님에게 존댓말, 다른 이에게 반말 +``` + +### 호칭 일관성 + +``` +characters-master.md의 호칭 규칙 참조 + +시점별 호칭 변화: +- 첫 만남 → 친밀해진 후 → 결혼 후 +- 각 단계에서 일관성 유지 +``` + +--- + +## ⏱️ 시간 표현 + +### 날짜 명시 + +``` +✅ 명확한 날짜: +"1946년 5월 15일, 아침." +"다음 날 오후." +"사흘 후." + +❌ 모호한 시간: +"며칠이 지났다." (며칠?) +"얼마 후." (얼마?) +``` + +### 시간 점프 + +``` +✅ 자연스러운 전환: +"2주 후, 경성역." +"---" (장면 전환 후 날짜 명시) + +❌ 갑작스러운 점프: +설명 없이 시간 도약 +``` + +--- + +## 🚫 금지 사항 + +### 표현 금지 + +``` +❌ 과도한 감탄사: "아!", "오!", "와!" +❌ 이모티콘/특수문자 남용 +❌ 인터넷 용어 +❌ 시대에 맞지 않는 표현 +``` + +### 구조 금지 + +``` +❌ 갑작스러운 시간 점프 (설명 없이) +❌ 캐릭터 OOC (Out Of Character) +❌ 설정 모순 +❌ Deus Ex Machina (억지 해결) +❌ 바텀 (화수 표시) +``` + +### 대화 금지 + +``` +❌ 설명용 대화 (As-you-know 대화) + "너도 알다시피, 우리가 1945년에 회귀했잖아." + +❌ 독백 남용 +❌ 대화 태그 반복 + "라고 말했다" 연속 +``` + +--- + +## ✅ 작성 체크리스트 + +### 각 장면 + +``` +- [ ] Show, Don't Tell +- [ ] 5감 묘사 최소 2가지 +- [ ] 대화:묘사:서술 균형 +- [ ] 날짜/시간 명확 +``` + +### 각 화 + +``` +- [ ] 분량 8,000자 이상 +- [ ] 캐릭터 말투 일관성 +- [ ] 호칭 일관성 +- [ ] 타임라인 연속성 +- [ ] 바텀 없음 +``` + +--- + +## 📚 장르별 추가 규칙 + +### 대체역사 + +``` +- 실제 역사와 차이점 명확히 +- 연도/날짜 정확히 +- 나이 계산 철저히 +- 시대 배경 묘사 (의복, 언어, 기술) +``` + +### 로맨스 + +``` +- 비율: 30% 이하 (메인 플롯 우선) +- 천천히 진행 +- 감정 변화 단계적 +- 호칭 변화로 관계 발전 표현 +``` + +### 정치/외교 + +``` +- 실제 인물 존중 +- 역사적 맥락 고려 +- 전문 용어 적절히 +- 협상/회담 장면 긴장감 +``` + +--- + +*좋은 글은 규칙을 지키면서도 자연스럽게 읽힙니다.* diff --git a/templates/standards/writing-mode.md b/templates/standards/writing-mode.md new file mode 100644 index 0000000..6ef26c9 --- /dev/null +++ b/templates/standards/writing-mode.md @@ -0,0 +1,182 @@ +# 작성 모드 프로토콜 + +> **버전:** 2.0 +> **용도:** 신규 챕터 5화 단위 작성 (MODE: WRITING) + +--- + +## 📋 작성 모드 개요 + +**작성 모드는:** +- 플롯 기반 5화 연속 작성 +- 매 화 완료 시 summary 누적 업데이트 +- Git 자동 커밋 + +**진입 명령:** +- "작성 모드" +- "X화 작성해" +- "1-5화 작성해" + +--- + +## 📚 모드 진입 시 읽을 파일 + +### 필수 +1. `volumes/vol-XX/characters.md` - 해당 권 캐릭터 +2. `volumes/vol-XX/timeline.md` - 해당 권 타임라인 +3. `standards/writing-guide.md` - 작성 규칙 +4. `volumes/vol-XX/plots/plot-XXX-YYY.md` - 이번 5화 플롯 +5. `volumes/vol-XX/summaries/summary-이전.md` - 이전 서머리 + +### 다른 권 시작 시 추가 +6. `volumes/vol-이전/summaries/summary-vol-XX-final.md` - 이전 권 압축 서머리 + +--- + +## 🎯 작성 프로세스 + +### Phase 1: 준비 + +``` +1. 진행 상황 파악 + - 마지막 작성 챕터 확인 + - 다음 5화 범위 계산 + +2. 필수 파일 읽기 (위 목록) + +3. CURRENT-TASK.md 생성 + - 모드: WRITING + - 작업: X권 N-M화 작성 + - 진행 상황: 테이블 초기화 + +4. 준비 완료 보고 +``` + +### Phase 2: 각 화 작성 + +``` +1. 해당 화 플롯 확인 + - 날짜, 장소, 등장인물 + - 핵심 내용, 주요 장면 + +2. 작성 전 체크 + - 이전 화 종료일 확인 + - 타임라인 연속성 확인 + +3. 작성 + - 헤더: # X권 Y화: 제목 + - 타임라인: > **타임라인:** YYYY.M.D-M.D + - 분량: 8,000-12,000자 + - 바텀: 없음! (절대 금지) + +4. 저장 + - volumes/vol-XX/chapters/ch-XXX.md + +5. summary 즉시 업데이트 + - summaries/summary-001-XXX.md 누적 업데이트 + +6. CURRENT-TASK.md 업데이트 + - 해당 화: ✅ 완료 + +7. 다음 화로 이동 +``` + +### Phase 3: 5화 완료 + +``` +1. 5개 챕터 파일 확인 + +2. summary 최종 정리 + - 전체 줄거리 완성도 + - 챕터별 핵심 + - 캐릭터 상태 + - 복선 추적 + +3. Git 커밋 + "X권 N-M화 작성 완료 + + - ch-XXX: 제목 (분량) + - ch-XXX: 제목 (분량) + ... + - summary-001-XXX.md 업데이트 + + 총 XX,XXX자 + + Co-Authored-By: Claude " + +4. CURRENT-TASK.md 업데이트 또는 삭제 + +5. 완료 보고 + 다음 5화 안내 +``` + +--- + +## ✅ 각 화 작성 체크리스트 + +``` +작성 전: +- [ ] 플롯 확인 (날짜, 장소, 등장인물, 핵심) +- [ ] 이전 화 종료일 확인 +- [ ] 타임라인 연속성 확인 + +작성 중: +- [ ] 헤더 형식: # X권 Y화: 제목 +- [ ] 타임라인 형식: > **타임라인:** YYYY.M.D-M.D +- [ ] 분량 8,000자 이상 +- [ ] Show, Don't Tell +- [ ] 캐릭터 말투/호칭 일관성 + +작성 후: +- [ ] 바텀 없음 확인! +- [ ] summary 즉시 업데이트 +- [ ] CURRENT-TASK.md 업데이트 +``` + +--- + +## 🚫 작성 모드 금지사항 + +❌ 플롯 없이 작성 +❌ summary 업데이트 생략 +❌ 바텀 추가 ([X화 끝], 다음 X화: 등) +❌ 타임라인 역행 +❌ 캐릭터 OOC (Out Of Character) +❌ 호칭 불일치 + +--- + +## 📊 summary 형식 + +```markdown +# 1-X화 누적 서머리 + +> 최종 업데이트: YYYY-MM-DD HH:MM +> 현재: ch-XXX (X화) + +## 📌 전체 줄거리 +(누적 3-5문단) + +## 📖 챕터별 핵심 +### ch-001: [제목] +**날짜:** YYYY.M.D +**핵심:** 1줄 요약 + +### ch-002: [제목] +... + +## 🎭 캐릭터 상태 +### [이름]: +- ch-001: 상태 +- ch-005: 상태 변화 + +## ⚠️ 복선 +- [ ] [내용] (ch-XXX) → 회수 예정: X권 + +## 📊 통계 +- 총 챕터: X화 +- 총 분량: XX,XXX자 +``` + +--- + +*작성 모드는 속도가 핵심입니다. 플롯대로 빠르게 작성하고, 수정은 나중에!* diff --git a/validation-standards.md b/validation-standards.md new file mode 100644 index 0000000..b945929 --- /dev/null +++ b/validation-standards.md @@ -0,0 +1,885 @@ +# 1945 소설 검증 기준 문서 (v2.0) + +**최종 개정일:** 2026-01-17 +**목적:** 소설 검증 시 명확한 기준 제시 및 누락 방지 +**핵심:** 배치 검증 + 검증 요약본 + 2종 요약본 크로스체크 + +--- + +## 📋 검증 모드 분류 + +### 1️⃣ **본문 검증 모드** (Content Validation) +- **대상:** 실제 작성된 챕터 파일 (ch-001.md ~ ch-052.md 등) +- **목적:** 작성된 본문 자체의 완결성 및 일관성 확인 +- **플롯 비교:** 하지 않음 +- **출력:** 검증 요약본 (validation-batch-XX.md) + +### 2️⃣ **플롯 검증 모드** (Plot Validation) +- **대상:** 검증 요약본 vs plot-master.md +- **목적:** 계획된 플롯과 실제 작성된 내용의 일치성 확인 +- **전제 조건:** 본문 검증 완료 필수 + +### 3️⃣ **요약본 검증 모드** (Summary Validation) +- **대상:** 작성 요약본 vs 검증 요약본 +- **목적:** 2종 요약본 크로스체크로 이중 검증 +- **전제 조건:** 본문 검증 완료 필수 + +--- + +## 🔄 배치 검증 시스템 + +### 왜 배치로 나누는가? + +**문제점:** +- 한 번에 52개 전체 검증 → 중간에 대화 컴팩팅 발생 +- 컴팩팅 후 이전 내용 손실 → 검증 결과 신뢰성 저하 + +**해결책:** +- **10개씩 배치로 나눠서 검증** +- 각 배치마다 결과를 파일로 저장 +- 컴팩팅되어도 파일 읽으면 연속성 유지 + +### 배치 크기 + +| 범위 | 챕터 수 | 배치 번호 | 파일명 | +|------|---------|----------|--------| +| ch-001 ~ ch-010 | 10개 | 배치 1 | validation-batch-01.md | +| ch-011 ~ ch-020 | 10개 | 배치 2 | validation-batch-02.md | +| ch-021 ~ ch-030 | 10개 | 배치 3 | validation-batch-03.md | +| ch-031 ~ ch-040 | 10개 | 배치 4 | validation-batch-04.md | +| ch-041 ~ ch-050 | 10개 | 배치 5 | validation-batch-05.md | +| ch-051 ~ ch-052 | 2개 | 배치 6 | validation-batch-06.md | + +**총 6개 배치** + +### 배치 검증 프로토콜 + +**배치 시작 전:** +```markdown +1. "배치 N 검증 시작합니다" 선언 +2. 검증 범위 명시: ch-XXX ~ ch-YYY +3. (N > 1인 경우) 이전 배치 결과 파일 읽기 +``` + +**배치 검증 중:** +```markdown +1. 10개 챕터 순차 검증 +2. 중간 결과를 메모리에 누적 +3. 문제 발견 시 즉시 기록 +``` + +**배치 완료 후:** +```markdown +1. 검증 요약본 파일 생성: validation-batch-XX.md +2. "배치 N 완료" 선언 +3. 다음 배치 진행 여부 확인 +``` + +**컴팩팅 대비:** +```markdown +- 배치 중간에 컴팩팅 발생 가능 +- 다음 배치 시작 시 이전 배치 파일 읽으면 복구됨 +- 사용자가 "validation-batch-XX.md 읽어봐" 지시 가능 +``` + +--- + +## 📄 검증 요약본 형식 + +### 파일명 +``` +validation-batch-01.md +validation-batch-02.md +... +validation-batch-06.md +``` + +### 필수 구조 + +```markdown +# 검증 요약본 - 배치 N + +## 메타 정보 +- **배치 번호:** N +- **검증 범위:** ch-XXX ~ ch-YYY +- **검증 일시:** YYYY-MM-DD HH:MM +- **검증자:** Claude Sonnet 4.5 + +## 챕터 상세 + +### ch-XXX + +#### 기본 정보 +- **파일명:** ch-XXX.md +- **제목 화수:** N화 +- **제목:** [제목 텍스트] +- **타임라인:** YYYY.MM.DD ~ YYYY.MM.DD +- **분량:** XXX줄 + +#### 주요 이벤트 +1. [이벤트 1] +2. [이벤트 2] +3. [이벤트 3] + +#### 등장 캐릭터 +- **강민준:** (주인공, 회귀자) +- **서윤희:** (여주인공) +- **최태준:** (회귀자, 만주 담당) +- (기타...) + +#### 호칭/말투 패턴 +- 최태준 → 강민준: "형님" + 존댓말 +- 강민준 → 서윤희: "서 선생님" → "서윤희" (변화) + +#### 제목-내용 일치 +- ✅ 일치 / ❌ 불일치 +- 불일치 사유: [...] + +#### 특이사항 +- 중복: 없음 / 있음 (상세) +- 시간 역행: 없음 / 있음 (상세) +- 기타: [...] + +--- + +### (ch-XXX+1 ~ ch-YYY 동일 형식) + +--- + +## 배치 전체 분석 + +### 타임라인 요약 +- **시작일:** YYYY.MM.DD +- **종료일:** YYYY.MM.DD +- **기간:** N개월 / N일 + +### 주요 플롯 진행 +- [이 배치에서 진행된 주요 스토리라인] + +### 발견된 문제 + +#### 제목 관련 +| 챕터 | 문제 유형 | 상세 | +|------|----------|------| +| ch-XXX | 화수 불일치 | 파일 006인데 제목 7화 | +| ch-YYY | 제목 중복 | ch-XXX와 동일 제목 | + +#### 타임라인 관련 +| 챕터 | 문제 유형 | 상세 | +|------|----------|------| +| ch-XXX | 시간 역행 | 이전 챕터보다 날짜 앞섬 | + +#### 내용 중복 +| 챕터 1 | 챕터 2 | 중복 내용 | +|--------|--------|----------| +| ch-XXX | ch-YYY | [동일한 이벤트] | + +#### 캐릭터 일관성 +| 챕터 | 캐릭터 | 문제 | 상세 | +|------|--------|------|------| +| ch-XXX | 최태준 | 호칭 변화 | "형님" → "민준씨" | + +### 검증 결과 +- ✅ **통과** - 문제 없음 +- ⚠️ **경고** - 경미한 문제 N개 +- ❌ **실패** - 심각한 문제 N개 + +### 다음 단계 +- 배치 N+1 진행 / 수정 필요 / 완료 +``` + +--- + +## 📚 2종 요약본 체계 + +### 작성 요약본 (Writer's Summary) +- **파일:** `summary-001-050.md` 등 +- **작성자:** 사용자 (작가) +- **내용:** 작가가 작성하면서 기록한 진행 상황 +- **목적:** 작성 과정 추적 + +### 검증 요약본 (Validation Summary) +- **파일:** `validation-batch-01.md` ~ `06.md` +- **작성자:** Claude (검증 시) +- **내용:** 실제 본문을 읽고 검증한 결과 +- **목적:** 객관적 검증 결과 + +### 2종 요약본 비교 의미 + +``` +작성 요약본 (주관적) ←→ 검증 요약본 (객관적) + ↓ ↓ + 일치해야 함! + ↓ + 불일치 = 문제 발견 +``` + +**비교 항목:** +1. 챕터 범위 (001-050 vs 실제 작성된 범위) +2. 타임라인 (작성 요약본의 날짜 vs 검증 요약본의 날짜) +3. 주요 이벤트 (요약본에 기록된 내용 vs 실제 본문 내용) +4. 진행도 (로맨스 95% vs 실제 확인된 진행도) + +--- + +## 1️⃣ 본문 검증 모드 (상세) + +### 검증 대상 +``` +L:\내 드라이브\Writing\1945-novel\volumes\vol-01\chapters\ch-*.md +``` + +### 필수 체크 항목 + +#### A. 파일 구조 검증 + +| 항목 | 검증 내용 | 방법 | +|------|----------|------| +| 1. 파일 존재성 | 연속된 챕터 파일 존재 확인 | Glob으로 ch-*.md 목록 추출 | +| 2. 번호 연속성 | ch-001 ~ ch-N까지 빠진 번호 없는지 | 파일명 정렬 후 갭 확인 | +| 3. 중복 번호 | 같은 번호의 파일이 2개 이상인지 | 파일명 중복 확인 | + +#### B. 제목 검증 (중요!) + +각 챕터마다 다음을 확인: + +```markdown +# 1권 N화: [제목] +``` + +| 항목 | 검증 내용 | 오류 예시 | +|------|----------|----------| +| 1. 화수 일치 | 파일명 번호 = 제목 화수 | ch-006.md인데 "# 1권 7화" ❌ | +| 2. 제목 중복 | 다른 챕터와 동일 제목 사용 여부 | ch-006, ch-007 둘 다 "금괴 탈취 작전" ❌ | +| 3. 제목 형식 | "# 1권 N화: [제목]" 형식 준수 | "# 1권 6화 금괴" (콜론 없음) ❌ | + +**중복 제목 금지 예외:** +- Part 1, Part 2로 나뉜 동일 이벤트 (예: 상편/하편) +- 이 경우 제목에 명시: "금괴 탈취 작전 (상)", "금괴 탈취 작전 (하)" + +#### C. 내용 검증 + +각 챕터의 **첫 100줄**을 읽고 확인: + +| 항목 | 검증 내용 | 확인 방법 | +|------|----------|----------| +| 1. 타임라인 명시 | 날짜가 명확히 표시되어 있는지 | "1945년 9월 6일" 같은 표현 찾기 | +| 2. 주요 이벤트 | 무슨 일이 벌어지는지 파악 | Part 1의 첫 장면 읽기 | +| 3. 제목-내용 일치 | 제목과 실제 내용이 맞는지 | "금괴 탈취"인데 내용이 인민공화국 ❌ | + +#### D. 타임라인 검증 + +전체 챕터의 시간 순서: + +| 항목 | 검증 내용 | 오류 예시 | +|------|----------|----------| +| 1. 시간 순서 | 챕터 진행에 따라 시간이 앞으로 가는지 | ch-011 (11.25) → ch-012 (11.1) ❌ | +| 2. 날짜 점프 | 갑작스러운 시간 도약 확인 | 11월 → 12월 중순 (설명 없음) ⚠️ | +| 3. 기간 표시 | 각 챕터가 다루는 기간 명시 | "1946.5.1-5.10" 같은 표현 | + +**비선형 구성 예외:** +- 회상, 플래시백은 명확히 표시되어 있어야 함 +- 병렬 서사(만주/서울)는 Part로 구분되어야 함 + +#### E. 캐릭터 일관성 검증 + +| 항목 | 검증 내용 | 오류 예시 | +|------|----------|----------| +| 1. 호칭 일관성 | 동일 관계에서 호칭 변화 없는지 | 최태준이 "형님" → "민준씨" ❌ | +| 2. 말투 일관성 | 존댓말/반말 패턴 유지 | 강민준이 서윤희에게 갑자기 반말 ❌ | +| 3. 캐릭터 등장 | 처음 등장 시 소개 있는지 | 설명 없이 갑자기 "김미란이" ❌ | + +#### F. 중복 내용 검증 (매우 중요!) + +**방법:** +1. 모든 챕터의 타임라인 추출 +2. 동일 날짜를 다루는 챕터 찾기 +3. 동일 이벤트를 다루는 챕터 찾기 + +**허용되는 중복:** +- 같은 날짜를 **다른 시점**에서 서술 (예: 오전/오후) +- 같은 이벤트를 **다른 캐릭터 시점**에서 서술 + +**금지되는 중복:** +- 완전히 동일한 내용 반복 +- 같은 제목으로 같은 내용 + +--- + +## 본문 검증 절차 (배치별) + +### Step 0: 준비 +```bash +1. validation-standards.md 읽기 (이 문서) +2. 검증 범위 확인 (배치 번호) +3. (배치 N > 1) 이전 배치 결과 읽기 +``` + +### Step 1: 배치 시작 선언 +```markdown +**배치 N 검증을 시작합니다** +- 범위: ch-XXX ~ ch-YYY +- 예상 챕터 수: 10개 +``` + +### Step 2: 파일 구조 확인 +```bash +1. Glob으로 ch-XXX ~ ch-YYY 목록 추출 +2. 연속성 확인 +3. 총 개수 확인 +``` + +### Step 3: 제목 일괄 추출 +```bash +1. 배치 내 모든 챕터의 첫 줄 읽기 (Grep "^# 1권") +2. 제목 테이블 작성 +3. 중복 제목 즉시 확인 +``` + +### Step 4: 챕터별 상세 검증 +```bash +각 챕터마다: +1. 첫 100줄 읽기 +2. 타임라인, 이벤트, 캐릭터 파악 +3. 제목-내용 일치 확인 +4. 검증 요약본에 기록 +``` + +### Step 5: 배치 전체 분석 +```bash +1. 타임라인 순서 확인 +2. 중복 검사 +3. 캐릭터 일관성 확인 +4. 문제점 종합 +``` + +### Step 6: 검증 요약본 파일 생성 +```bash +1. validation-batch-XX.md 파일 작성 +2. 위의 "검증 요약본 형식" 준수 +3. 파일 저장 완료 확인 +``` + +### Step 7: 배치 완료 선언 +```markdown +**배치 N 검증 완료** +- 검증 챕터: N개 +- 문제 발견: N개 +- 결과 파일: validation-batch-XX.md +- 다음: 배치 N+1 진행 / 수정 필요 / 검증 완료 +``` + +--- + +## 본문 검증 완료 기준 + +**단일 배치:** +- [ ] 10개 챕터 모두 검증 +- [ ] 검증 요약본 파일 생성 +- [ ] 문제점 기록 완료 + +**전체 검증:** +- [ ] 모든 배치 완료 (배치 1 ~ 6) +- [ ] 파일 연속성 확인 (빠진 번호 없음) +- [ ] 제목 화수 = 파일명 번호 (전체 일치) +- [ ] 제목 중복 없음 (예외 제외) +- [ ] 제목-내용 일치 (전체) +- [ ] 타임라인 순서 정상 (역행 없음) +- [ ] 내용 중복 없음 (예외 제외) +- [ ] 캐릭터 호칭/말투 일관성 (A+ 등급) + +**본문 검증이 완료되어야만 플롯/요약본 검증 가능!** + +--- + +## 2️⃣ 플롯 검증 모드 + +### 전제 조건 +✅ **본문 검증 완료 필수** (6개 배치 모두) + +### 검증 대상 +``` +검증 요약본: validation-batch-01.md ~ 06.md +플롯: plot-master.md +``` + +### 검증 방법 + +**플롯 읽지 않고 검증 요약본만 사용:** +``` +1. validation-batch-XX.md 읽기 +2. 각 챕터의 타임라인, 주요 이벤트 확인 +3. plot-master.md의 해당 화와 비교 +4. 일치/불일치 기록 +``` + +**장점:** +- 본문을 다시 읽지 않아도 됨 +- 검증 요약본이 이미 정리되어 있음 +- 빠르고 정확한 비교 가능 + +### 필수 체크 항목 + +#### A. 화수 매칭 + +| 플롯 화 | 예정 제목 | 예정 내용 | 검증 요약본 | 실제 제목 | 실제 내용 | 일치? | +|---------|----------|----------|------------|----------|----------|-------| +| 1화 | 빛 속으로 | 2024→1945 회귀 | ch-001 | 빛 속으로 | 회귀 | ✅ | +| 6화 | 금괴 탈취 | 9.11-20 금괴 | ch-006 | 금괴 탈취 | 인민공화국 | ❌ | + +#### B. 내용 일치성 + +| 항목 | 검증 내용 | +|------|----------| +| 1. 타임라인 일치 | 플롯 예정 날짜 = 검증 요약본 날짜 | +| 2. 주요 이벤트 포함 | 플롯에 명시된 이벤트가 검증 요약본에 있는지 | +| 3. 캐릭터 등장 | 플롯에 명시된 캐릭터가 등장하는지 | + +#### C. 누락/추가 확인 + +| 유형 | 확인 내용 | +|------|----------| +| 누락 | 플롯에는 있는데 검증 요약본에 없는 화 | +| 추가 | 플롯에는 없는데 검증 요약본에 있는 화 | +| 순서 변경 | 플롯 순서와 다르게 작성된 화 | + +--- + +## 플롯 검증 절차 + +### Step 1: 준비 +```bash +1. 본문 검증 완료 확인 +2. 모든 검증 요약본 파일 존재 확인 +3. plot-master.md 읽기 +``` + +### Step 2: 플롯 목록 추출 +```bash +1. plot-master.md에서 1화~51화 추출 +2. 각 화의 제목, 타임라인, 주요 내용 정리 +``` + +### Step 3: 검증 요약본 통합 +```bash +1. validation-batch-01.md ~ 06.md 읽기 +2. 전체 챕터 목록 통합 +3. ch-001 ~ ch-052 정리 +``` + +### Step 4: 1:1 매칭 +```bash +플롯 1화 vs ch-001 (검증 요약본 참조) +플롯 2화 vs ch-002 (검증 요약본 참조) +... +플롯 51화 vs ch-051 (검증 요약본 참조) +``` + +### Step 5: 불일치 분석 +```bash +1. 누락된 화 목록 작성 +2. 추가된 화 목록 작성 +3. 내용 변경 사항 분석 +``` + +### Step 6: 보고서 작성 +```bash +플롯 검증 보고서 (아래 형식 참조) +``` + +--- + +## 3️⃣ 요약본 검증 모드 + +### 전제 조건 +✅ **본문 검증 완료 필수** + +### 검증 대상 +``` +작성 요약본: summary-001-050.md (등) +검증 요약본: validation-batch-01.md ~ 06.md +``` + +### 검증 목적 + +**2종 요약본 크로스체크:** +``` +작가가 기록한 내용 vs 실제 검증 결과 + ↓ + 일치 여부 확인 + ↓ + 불일치 = 잠재적 문제 +``` + +### 필수 체크 항목 + +#### A. 범위 일치 + +| 항목 | 작성 요약본 | 검증 요약본 | 일치? | +|------|------------|------------|-------| +| 챕터 범위 | 001-050 | 001-052 | ❌ (2개 차이) | +| 총 챕터 수 | 50개 | 52개 | ❌ | + +#### B. 타임라인 일치 + +각 챕터마다: +``` +작성 요약본의 날짜 = 검증 요약본의 날짜? +``` + +#### C. 주요 이벤트 일치 + +``` +작성 요약본의 이벤트 목록 ⊆ 검증 요약본의 이벤트 목록 +``` + +**불일치 예시:** +- 작성 요약본: "트랜지스터 개발 (6월)" +- 검증 요약본: "트랜지스터 개발 (3월)" +- → 날짜 불일치 발견! + +#### D. 진행도 일치 + +``` +작성 요약본: "로맨스 진행도 95%" +검증 요약본: "로맨스 진행도 35%" (실제 작성 기준) +→ 과대 기록 발견! +``` + +--- + +## 요약본 검증 절차 + +### Step 1: 준비 +```bash +1. 작성 요약본 파일 확인 (summary-*.md) +2. 검증 요약본 파일 확인 (validation-batch-*.md) +``` + +### Step 2: 범위 비교 +```bash +1. 작성 요약본: 001-050 (50개) +2. 검증 요약본: 001-052 (52개) +3. 차이: +2개 +4. 이유 분석 +``` + +### Step 3: 챕터별 비교 +```bash +공통 범위 (001-050) 각 챕터마다: +1. 타임라인 비교 +2. 주요 이벤트 비교 +3. 캐릭터 등장 비교 +4. 불일치 사항 기록 +``` + +### Step 4: 통계 비교 +```bash +1. 진행도 비교 (로맨스, 만주, 정치 등) +2. 주요 이벤트 달성도 +3. 타임라인 범위 +``` + +### Step 5: 불일치 분석 +```bash +1. 경미한 차이 (서술 방식) +2. 중간 차이 (날짜 1-2일) +3. 심각한 차이 (월 단위 차이, 이벤트 누락) +``` + +### Step 6: 보고서 작성 +```bash +요약본 검증 보고서 (아래 형식 참조) +``` + +--- + +## 📊 검증 보고서 형식 + +### 본문 검증 보고서 (배치별) + +```markdown +# 본문 검증 보고서 - 배치 N + +**검증 일시:** YYYY-MM-DD HH:MM +**검증 범위:** ch-XXX ~ ch-YYY +**검증자:** Claude Sonnet 4.5 + +## 1. 파일 구조 +- 예상 챕터 수: 10개 +- 실제 발견: N개 +- 연속성: ✅ 정상 / ❌ 빠진 번호: [...] + +## 2. 제목 검증 + +### 화수 일치 +| 챕터 | 파일 번호 | 제목 화수 | 일치 | +|------|----------|----------|------| +| ch-001 | 001 | 1화 | ✅ | +| ch-006 | 006 | 7화 | ❌ | + +### 제목 중복 +| 챕터 1 | 챕터 2 | 제목 | +|--------|--------|------| +| ch-006 | ch-007 | 금괴 탈취 작전 | + +## 3. 타임라인 검증 + +### 시간 순서 +| 챕터 | 타임라인 | 이전 대비 | 상태 | +|------|---------|----------|------| +| ch-011 | 1945.11.25 | +1일 | ✅ | +| ch-012 | 1945.11.1 | -24일 | ❌ 역행 | + +### 타임라인 범위 +- 시작: YYYY.MM.DD +- 종료: YYYY.MM.DD +- 기간: N일 / N개월 + +## 4. 제목-내용 일치 + +| 챕터 | 제목 | 실제 내용 | 일치 | +|------|------|----------|------| +| ch-006 | 금괴 탈취 작전 | 인민공화국 선포 | ❌ | + +## 5. 중복 내용 +- 발견: N개 +- 목록: + | 챕터 1 | 챕터 2 | 중복 유형 | 상세 | + +## 6. 캐릭터 일관성 +- 등급: A+ / A / B / C / F +- 호칭 일관성: ✅ / ❌ +- 말투 일관성: ✅ / ❌ +- 문제점: [...] + +## 최종 판정 +- ✅ **통과** - 문제 없음 +- ⚠️ **경고** - 경미한 문제 N개 +- ❌ **실패** - 심각한 문제 N개 + +## 다음 단계 +- [ ] 배치 N+1 진행 +- [ ] 문제 수정 필요 +- [ ] 전체 검증 완료 +``` + +### 플롯 검증 보고서 + +```markdown +# 플롯 검증 보고서 + +**검증 일시:** YYYY-MM-DD +**대상:** plot-master.md vs validation-batch-01~06.md +**검증자:** Claude Sonnet 4.5 + +## 1. 화수 매칭 + +### 일치율 +- 총 플롯 화수: 51화 +- 일치: N개 (N%) +- 불일치: N개 (N%) + +### 상세 매칭표 +| 플롯 화 | 예정 제목 | 실제 챕터 | 실제 제목 | 일치 | +|---------|----------|-----------|----------|------| +| 1화 | 빛 속으로 | ch-001 | 빛 속으로 | ✅ | +| 6화 | 금괴 탈취 | ch-006 | 금괴 탈취 | ⚠️ 내용 다름 | + +## 2. 누락된 화 +| 플롯 화 | 예정 제목 | 예정 타임라인 | 예정 내용 | 상태 | +|---------|----------|--------------|----------|------| +| 12화 | 신탁통치 반대 | 1945.12.27 | [...] | ❌ 누락 | + +## 3. 추가된 화 +| 챕터 | 제목 | 타임라인 | 내용 | 이유 | +|------|------|---------|------|------| +| ch-052 | 폐허의 도쿄 | 1946.12.31 | 일본 시점 | 플롯 51화 예정 | + +## 4. 순서 변경 +| 플롯 화 | 예정 순서 | 실제 챕터 | 실제 순서 | 이유 | +|---------|----------|-----------|----------|------| +| - | - | - | - | 없음 | + +## 5. 내용 변경 +| 화 | 플롯 예정 | 실제 작성 | 차이점 | +|----|----------|----------|--------| +| 6화 | 금괴 탈취 (9.11-20) | 인민공화국 (9.6) | 완전히 다른 내용 | + +## 최종 판정 +- ✅ **플롯 일치** - 차이 없음 +- ⚠️ **일부 차이** - N개 화 차이, 의도적 변경 가능 +- ❌ **불일치** - 심각한 차이, 수정 필요 +``` + +### 요약본 검증 보고서 + +```markdown +# 요약본 검증 보고서 (2종 크로스체크) + +**검증 일시:** YYYY-MM-DD +**대상:** 작성 요약본 vs 검증 요약본 +**검증자:** Claude Sonnet 4.5 + +## 1. 범위 비교 + +### 전체 범위 +| 항목 | 작성 요약본 | 검증 요약본 | 차이 | +|------|------------|------------|------| +| 챕터 범위 | 001-050 | 001-052 | +2개 | +| 총 챕터 수 | 50개 | 52개 | +2개 | + +### 차이 분석 +- ch-051: 약혼 (작성 요약본 누락) +- ch-052: 폐허의 도쿄 (작성 요약본 누락) +- 이유: 작성 요약본 업데이트 안됨 + +## 2. 타임라인 비교 + +### 주요 이벤트 타임라인 +| 이벤트 | 작성 요약본 | 검증 요약본 | 일치 | +|--------|------------|------------|------| +| 트랜지스터 개발 | 1946.6 | 1946.3 | ❌ 3개월 차이 | +| 이승만 망명 | 1946.3 | 1946.11 | ❌ 8개월 차이 | +| 고백 | 1946.6 | 1946.5 | ❌ 1개월 차이 | + +## 3. 주요 이벤트 비교 + +### 정치 +| 이벤트 | 작성 요약본 | 검증 요약본 | 일치 | +|--------|------------|------------|------| +| 좌우합작 출범 | 1946.5.15 | 1946.5.15 | ✅ | + +### 경제 +| 이벤트 | 작성 요약본 | 검증 요약본 | 일치 | +|--------|------------|------------|------| +| 페니실린 | 있음 | 있음 | ✅ | +| 트랜지스터 | 1946.6 | 1946.3 | ❌ | + +### 로맨스 +| 이벤트 | 작성 요약본 | 검증 요약본 | 일치 | +|--------|------------|------------|------| +| 고백 | 1946.6 | 1946.5 | ❌ | +| 약혼 | 1946.12.15 | 1946.12.15 | ✅ | +| 진행도 | 95% | 35% | ❌ 과대 기록 | + +## 4. 진행도 비교 + +| 항목 | 작성 요약본 | 검증 요약본 | 차이 | +|------|------------|------------|------| +| 로맨스 진행도 | 95% | 35% | -60% | +| 만주 진행도 | 100% | 100% | 0% | + +## 5. 불일치 분석 + +### 경미한 차이 (1-2일) +- 없음 + +### 중간 차이 (1-2개월) +- 트랜지스터: 6월 → 3월 (3개월) +- 고백: 6월 → 5월 (1개월) + +### 심각한 차이 (3개월 이상) +- 이승만 망명: 3월 → 11월 (8개월) + +## 최종 판정 +- ✅ **일치** - 차이 없음 +- ⚠️ **부분 일치** - 경미한 차이 N개 +- ❌ **불일치** - 작성 요약본 업데이트 필요 + +## 권장 조치 +1. 작성 요약본 전면 재작성 +2. 검증 요약본 기준으로 업데이트 +3. 타임라인 오류 수정 +``` + +--- + +## 🚨 검증 실패 시 조치 + +### 본문 검증 실패 +1. **즉시 중단** - 다음 배치로 넘어가지 않음 +2. 문제점 상세 보고 +3. 사용자에게 수정 방향 문의 +4. 수정 후 해당 배치 재검증 + +### 플롯 검증 실패 +1. 차이점 상세 보고 +2. 의도적 변경인지 확인 +3. 수정 필요 여부 문의 +4. 사용자 지시에 따라 조치 + +### 요약본 검증 실패 +1. 불일치 항목 상세 보고 +2. 작성 요약본 업데이트 필요성 확인 +3. 사용자 지시에 따라 조치 + +--- + +## 📌 검증 시 주의사항 + +### 1. 모드 명확히 구분 +- **본문 검증:** 본문만 검증, 플롯 안 봄 +- **플롯 검증:** 검증 요약본 vs 플롯 +- **요약본 검증:** 작성 요약본 vs 검증 요약본 + +### 2. 배치 크기 준수 +- **10개씩 고정** (마지막 배치 제외) +- 한 번에 많이 하지 말 것 + +### 3. 파일 저장 필수 +- 각 배치마다 validation-batch-XX.md 생성 +- 저장 완료 확인 후 다음 배치 + +### 4. 컴팩팅 대비 +- 배치 시작 시 이전 결과 읽기 +- 사용자가 "파일 읽어봐" 지시 가능 +- 파일 읽고 정신 차리기 + +### 5. 검증 기준 문서 참조 +- 검증 시작 전 이 문서 읽기 +- 형식 준수 + +### 6. 보고서 형식 준수 +- 위의 형식 정확히 따르기 +- 사용자가 이해하기 쉽게 + +### 7. 문제 발견 시 즉시 보고 +- 배치 끝날 때까지 기다리지 말 것 +- 심각한 문제는 즉시 보고 + +--- + +## 🎯 검증 완료 체크리스트 + +### 본문 검증 완료 +- [ ] 배치 1 완료 (ch-001~010) +- [ ] 배치 2 완료 (ch-011~020) +- [ ] 배치 3 완료 (ch-021~030) +- [ ] 배치 4 완료 (ch-031~040) +- [ ] 배치 5 완료 (ch-041~050) +- [ ] 배치 6 완료 (ch-051~052) +- [ ] 모든 검증 요약본 파일 생성 +- [ ] 전체 문제점 종합 + +### 플롯 검증 완료 +- [ ] 본문 검증 완료 확인 +- [ ] 검증 요약본 6개 파일 읽기 +- [ ] plot-master.md 읽기 +- [ ] 1:1 매칭 완료 +- [ ] 누락/추가/변경 분석 +- [ ] 플롯 검증 보고서 작성 + +### 요약본 검증 완료 +- [ ] 본문 검증 완료 확인 +- [ ] 작성 요약본 읽기 +- [ ] 검증 요약본 6개 파일 읽기 +- [ ] 2종 요약본 비교 +- [ ] 불일치 분석 +- [ ] 요약본 검증 보고서 작성 + +--- + +**이 문서는 검증 시 필수 참조 문서입니다.** +**검증 모드 진입 시 반드시 이 문서를 먼저 확인하세요.** +**배치 검증 + 검증 요약본 + 2종 크로스체크가 핵심입니다.**