Initial commit: 천공의 심장 프로젝트 초기화
**프로젝트:** - 제목: 천공의 심장 (Celestial Heart) - 장르: 회귀 + 산업 경영 + 하드SF - 권수: 10권 (각 50화) - 작성 시스템: v3.0 모드 기반 **주인공:** - 한세진 (1968년생) - 회귀: 2026년 58세 → 1988년 20세 - 직업: 항공엔진 엔지니어 **생성 파일:** - CLAUDE.md (프로젝트 특화 프로토콜) - README.md (작품 소개) - settings/ (v3.0 모드 시스템) - chapter-format-standard.md - writing-mode.md - modification-mode.md - verification-mode.md - renaming-protocol.md **다음 단계:** - Phase 1: 마스터 파일 설계 - Phase 2: 1권 플롯 작성 - Phase 3: 실행 준비 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
306
settings/chapter-format-standard.md
Normal file
306
settings/chapter-format-standard.md
Normal file
@@ -0,0 +1,306 @@
|
||||
# 챕터 작성 표준 형식
|
||||
|
||||
> **작성일:** 2026-01-17
|
||||
> **버전:** 1.0
|
||||
> **용도:** 챕터 파일 헤더 및 구조 표준
|
||||
|
||||
---
|
||||
|
||||
## 📐 필수 헤더 형식
|
||||
|
||||
### 기본 형식
|
||||
|
||||
```markdown
|
||||
# [권수]권 [화수]화: [제목]
|
||||
|
||||
> **타임라인:** YYYY.M.D-M.D
|
||||
> **장소:** 장소1, 장소2
|
||||
> **등장인물:** A, B, C (선택)
|
||||
|
||||
---
|
||||
|
||||
## Part 1: [소제목]
|
||||
...
|
||||
```
|
||||
|
||||
### 예시 (올바른 형식)
|
||||
|
||||
```markdown
|
||||
# 2권 29화: 만주 특별구 출범
|
||||
|
||||
> **타임라인:** 1950.3.11-4.1
|
||||
> **장소:** 만주 연길
|
||||
> **등장인물:** 최태준, 강민준, 조선족 주민들
|
||||
|
||||
---
|
||||
|
||||
## Part 1: 출범 준비
|
||||
...
|
||||
|
||||
## Part 2: 4월 1일 출범식
|
||||
...
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ 검증 규칙
|
||||
|
||||
### 1. 제목 라인
|
||||
|
||||
**형식:** `# [권수]권 [화수]화: [제목]`
|
||||
|
||||
**규칙:**
|
||||
- ✅ 권 번호 필수 (예: "2권")
|
||||
- ✅ 화수 숫자만 (예: "29화", not "이십구화")
|
||||
- ✅ 콜론(`:`) 뒤 공백 1칸
|
||||
- ✅ 제목은 간결하고 명확하게
|
||||
|
||||
**올바른 예:**
|
||||
```
|
||||
✅ # 2권 29화: 만주 특별구 출범
|
||||
✅ # 1권 1화: 빛 속으로
|
||||
✅ # 3권 45화: 반도체 혁명
|
||||
```
|
||||
|
||||
**잘못된 예:**
|
||||
```
|
||||
❌ # ch-029: 만주 개발 시작
|
||||
→ "ch-" 형식 금지, 권 번호 누락
|
||||
|
||||
❌ # 29화: 만주 개발 시작
|
||||
→ 권 번호 누락
|
||||
|
||||
❌ # 2권 29화 : 제목
|
||||
→ 콜론 앞 공백 금지
|
||||
|
||||
❌ # 2권 이십구화: 제목
|
||||
→ 화수는 숫자만
|
||||
```
|
||||
|
||||
### 2. 타임라인
|
||||
|
||||
**형식:** `> **타임라인:** YYYY.M.D-M.D`
|
||||
|
||||
**규칙:**
|
||||
- ✅ 연도 4자리, 월/일 1-2자리
|
||||
- ✅ 구분자: 점(`.`)
|
||||
- ✅ 기간: 하이픈(`-`)
|
||||
- ✅ 단일 날짜: `YYYY.M.D`만
|
||||
|
||||
**올바른 예:**
|
||||
```
|
||||
✅ > **타임라인:** 1950.3.11-4.1
|
||||
✅ > **타임라인:** 1947.1.1
|
||||
✅ > **타임라인:** 1950.5.1-12.31
|
||||
```
|
||||
|
||||
**잘못된 예:**
|
||||
```
|
||||
❌ > **타임라인:** 1950-3-11~4-1
|
||||
→ 구분자 잘못됨
|
||||
|
||||
❌ > **타임라인:** 1950/3/11-4/1
|
||||
→ 슬래시 금지
|
||||
|
||||
❌ > **타임라인:** 1950.03.11-04.01
|
||||
→ 0 패딩 불필요
|
||||
```
|
||||
|
||||
### 3. 타임라인 연속성 (매우 중요!)
|
||||
|
||||
**규칙:**
|
||||
- ✅ 이전 화 종료일 ≤ 현재 화 시작일
|
||||
- ✅ 시간 역행 금지
|
||||
- ✅ 날짜 겹침 최소화
|
||||
|
||||
**체크 절차:**
|
||||
```
|
||||
ch-028: 1950.3.11-4.1 (종료: 4.1)
|
||||
ch-029: 1950.4.2-4.30 (시작: 4.2) ← 4.1 이후 ✅
|
||||
|
||||
ch-028: 1950.3.11-4.1 (종료: 4.1)
|
||||
ch-029: 1950.5.1-12.31 (시작: 5.1) ← 4.1 이후 ✅
|
||||
|
||||
ch-029: 1950.5.1-12.31 (종료: 12.31)
|
||||
ch-030: 1950.4.1-4.30 (시작: 4.1) ← 과거로! ❌❌❌
|
||||
```
|
||||
|
||||
**예외: 플래시백/회상**
|
||||
```
|
||||
✅ > **타임라인:** 1950.5.1 (회상: 1947.6.1)
|
||||
✅ > **타임라인:** 1955.1.1 (회고: 1945-1950)
|
||||
```
|
||||
|
||||
### 4. 제목 유니크성
|
||||
|
||||
**규칙:**
|
||||
- ✅ 동일 권 내 제목 중복 금지
|
||||
- ✅ 유사 제목 주의
|
||||
|
||||
**잘못된 예:**
|
||||
```
|
||||
ch-029: "만주 개발 시작"
|
||||
ch-030: "만주 개발 시작" ← 완전 중복! ❌
|
||||
|
||||
해결:
|
||||
ch-029: "만주 개발 준비"
|
||||
ch-030: "만주 개발 시작" ✅
|
||||
```
|
||||
|
||||
### 5. 장소
|
||||
|
||||
**형식:** `> **장소:** 장소1, 장소2`
|
||||
|
||||
**규칙:**
|
||||
- ✅ 주요 장소만 (1-3개)
|
||||
- ✅ 쉼표(`,`) 구분
|
||||
- ✅ 구체적으로
|
||||
|
||||
**올바른 예:**
|
||||
```
|
||||
✅ > **장소:** 만주 연길
|
||||
✅ > **장소:** 서울, 청와대
|
||||
✅ > **장소:** 도쿄 긴자 거리
|
||||
```
|
||||
|
||||
### 6. 등장인물 (선택)
|
||||
|
||||
**형식:** `> **등장인물:** A, B, C`
|
||||
|
||||
**규칙:**
|
||||
- ✅ 주요 인물만 (1-5명)
|
||||
- ✅ 쉼표 구분
|
||||
- ✅ 생략 가능
|
||||
|
||||
---
|
||||
|
||||
## 📝 본문 구조
|
||||
|
||||
### Part 구성
|
||||
|
||||
```markdown
|
||||
## Part 1: 새해 아침
|
||||
|
||||
(2-4문단)
|
||||
|
||||
---
|
||||
|
||||
## Part 2: 가족 대화
|
||||
|
||||
(3-5문단)
|
||||
|
||||
---
|
||||
|
||||
## Part 3: 회상
|
||||
|
||||
(2-3문단)
|
||||
|
||||
---
|
||||
```
|
||||
|
||||
**권장:**
|
||||
- Part 4-6개 (1화당)
|
||||
- Part당 2-5문단
|
||||
- Part 사이 `---` 구분선
|
||||
|
||||
---
|
||||
|
||||
## 🔍 작성 전 체크리스트
|
||||
|
||||
### 새 챕터 작성 시
|
||||
|
||||
- [ ] 이전 화 종료 날짜 확인
|
||||
- [ ] 타임라인 연속성 확인
|
||||
- [ ] 제목 중복 없는지 확인
|
||||
- [ ] 헤더 형식 올바른지 확인
|
||||
- [ ] plot-XXX-YYY.md와 일치하는지 확인
|
||||
|
||||
### 기존 챕터 수정 시
|
||||
|
||||
- [ ] 타임라인 변경했다면 전후 챕터 확인
|
||||
- [ ] 제목 변경했다면 중복 없는지 확인
|
||||
- [ ] summary 재생성 필요한지 확인
|
||||
|
||||
---
|
||||
|
||||
## 🚨 자주 발생하는 오류
|
||||
|
||||
### 1. 형식 오류 (헤더)
|
||||
|
||||
```
|
||||
❌ # ch-029: 제목
|
||||
❌ # 29화: 제목
|
||||
❌ # 2권 29화 :제목
|
||||
❌ # 2권 이십구화: 제목
|
||||
|
||||
✅ # 2권 29화: 제목
|
||||
```
|
||||
|
||||
### 2. 타임라인 역순
|
||||
|
||||
```
|
||||
ch-029: 1950.5.1-12.31
|
||||
ch-030: 1950.4.1-4.30 ← 과거로! ❌
|
||||
|
||||
해결: 순서 바꾸기 또는 날짜 조정
|
||||
```
|
||||
|
||||
### 3. 제목 중복
|
||||
|
||||
```
|
||||
ch-029: "만주 개발 시작"
|
||||
ch-030: "만주 개발 시작" ← 중복! ❌
|
||||
|
||||
해결: 제목 차별화
|
||||
ch-029: "만주 개발 준비"
|
||||
ch-030: "만주 개발 시작"
|
||||
```
|
||||
|
||||
### 4. 타임라인 형식 오류
|
||||
|
||||
```
|
||||
❌ 1950-3-11
|
||||
❌ 1950/3/11
|
||||
❌ 1950.03.11 (0 패딩 불필요)
|
||||
|
||||
✅ 1950.3.11
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📊 검증 명령어
|
||||
|
||||
### 자동 검증 (AI)
|
||||
|
||||
```
|
||||
"헤더 형식 검증해"
|
||||
"타임라인 연속성 검증해"
|
||||
"제목 중복 검증해"
|
||||
```
|
||||
|
||||
### 수동 검증 (Bash)
|
||||
|
||||
```bash
|
||||
# 헤더 형식 확인
|
||||
grep "^# " chapters/*.md
|
||||
|
||||
# 타임라인 추출
|
||||
grep "타임라인:" chapters/*.md | sort
|
||||
|
||||
# 제목 중복 확인
|
||||
grep "^# " chapters/*.md | cut -d: -f2 | sort | uniq -d
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📌 참고 파일
|
||||
|
||||
- **작성 규칙:** `settings/writing-guide.md`
|
||||
- **수정 절차:** `settings/modification-mode.md`
|
||||
- **타임라인 검증:** `volumes/vol-XX/timeline.md`
|
||||
|
||||
---
|
||||
|
||||
**버전:** 1.0
|
||||
**최종 수정:** 2026-01-17
|
||||
**작성자:** Alex + Claude Sonnet 4.5
|
||||
455
settings/modification-mode.md
Normal file
455
settings/modification-mode.md
Normal file
@@ -0,0 +1,455 @@
|
||||
# 수정 모드 프로토콜
|
||||
|
||||
> **작성일:** 2026-01-17
|
||||
> **버전:** 1.0
|
||||
> **용도:** 기존 챕터 수정 및 재구성 시 절차 (MODE: MODIFICATION)
|
||||
|
||||
---
|
||||
|
||||
## 📋 수정 모드 개요
|
||||
|
||||
**수정 모드는:**
|
||||
- 기존 챕터를 수정/재구성
|
||||
- 플롯, 캐릭터, 타임라인 동기화
|
||||
- summary 재생성 (필수!)
|
||||
- 타임라인 검증
|
||||
- CHANGELOG 업데이트
|
||||
|
||||
**언제 사용:**
|
||||
- 챕터 내용 수정
|
||||
- 리넘버링 (ch-030~060 → ch-031~061)
|
||||
- 캐릭터 이름 변경
|
||||
- 타임라인 조정
|
||||
- 복선 추가/삭제
|
||||
|
||||
---
|
||||
|
||||
## 🔴 수정 작업 철칙 (반드시 준수!)
|
||||
|
||||
### 1. **Summary는 신성불가침!**
|
||||
```
|
||||
챕터 수정 = summary 반드시 재생성
|
||||
→ 누적 서머리니까 영향 범위 전체 재생성!
|
||||
|
||||
예:
|
||||
ch-029 수정
|
||||
→ summary-001-030.md 재생성
|
||||
→ summary-001-035.md 재생성
|
||||
→ summary-001-040.md 재생성
|
||||
→ ...
|
||||
→ summary-001-060.md 재생성
|
||||
```
|
||||
|
||||
### 2. **타임라인은 법!**
|
||||
```
|
||||
수정 후 반드시 타임라인 검증
|
||||
→ 시간 역행 금지
|
||||
→ 날짜 겹침 금지
|
||||
→ 이전 화 종료일 ≤ 현재 화 시작일
|
||||
```
|
||||
|
||||
### 3. **플롯이 정답!**
|
||||
```
|
||||
챕터 vs 플롯 불일치 → 챕터 수정
|
||||
플롯 변경은 사용자 명시 승인만
|
||||
```
|
||||
|
||||
### 4. **CHANGELOG 필수!**
|
||||
```
|
||||
모든 수정은 CHANGELOG.md에 기록
|
||||
→ 무엇을 왜 수정했는지
|
||||
→ 어떤 파일이 영향받았는지
|
||||
→ 문제는 무엇이었는지
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎯 수정 프로세스
|
||||
|
||||
### Phase 1: 수정 준비 (사용자: "수정 준비해")
|
||||
|
||||
**사용자 명령:**
|
||||
```
|
||||
"수정 준비해: ch-029/030 타임라인 역전"
|
||||
"수정 준비해: 30-60화 리넘버링"
|
||||
"수정 준비해: 한지근→한기철 이름 변경"
|
||||
```
|
||||
|
||||
**AI 실행 절차:**
|
||||
|
||||
**1-1. 문제 레포트 읽기**
|
||||
```
|
||||
사용자가 제공한 레포트 읽기:
|
||||
- 2권_완전_재검증_보고서.md
|
||||
- ch-029_문제_보고서.md
|
||||
등
|
||||
```
|
||||
|
||||
**1-2. 수정 범위 파악**
|
||||
```
|
||||
레포트 분석:
|
||||
- 어떤 챕터가 문제인가?
|
||||
- 어떤 파일이 영향받는가?
|
||||
- 수정 우선순위는?
|
||||
```
|
||||
|
||||
**1-3. 영향받는 파일 식별**
|
||||
```
|
||||
자동 식별:
|
||||
- 챕터: ch-XXX~YYY
|
||||
- summary: summary-001-XXX 이후 전부!
|
||||
- plot: plot-XXX-YYY (필요시)
|
||||
- characters.md, timeline.md (필요시)
|
||||
```
|
||||
|
||||
**1-4. 수정 계획서 작성**
|
||||
```
|
||||
volumes/vol-XX/modification-plan-20260117.md 생성:
|
||||
|
||||
# 수정 계획서
|
||||
|
||||
**작업명:** ch-029/030 타임라인 역전 수정
|
||||
**작성일:** 2026-01-17
|
||||
**레포트:** 2권_완전_재검증_보고서.md
|
||||
|
||||
## 문제
|
||||
- ch-029: 1950.5.1-12.31 (5월~12월)
|
||||
- ch-030: 1950.4.1-4.30 (4월)
|
||||
→ 타임라인 역순!
|
||||
|
||||
## 수정 방안
|
||||
옵션 A: 내용 교환
|
||||
- ch-029 ↔ ch-030 내용 맞바꾸기
|
||||
- 제목 조정
|
||||
|
||||
## 영향받는 파일
|
||||
- ch-029.md
|
||||
- ch-030.md
|
||||
- summary-001-030.md ~ summary-001-060.md
|
||||
|
||||
## 작업 순서
|
||||
1. ch-029.md 백업
|
||||
2. ch-030.md 백업
|
||||
3. 내용 교환
|
||||
4. summary 재생성 (30~60)
|
||||
5. 타임라인 검증
|
||||
6. CHANGELOG 업데이트
|
||||
7. Git 커밋
|
||||
```
|
||||
|
||||
**1-5. WORK-MODE.txt 생성**
|
||||
```
|
||||
volumes/vol-02/WORK-MODE.txt:
|
||||
|
||||
MODE: MODIFICATION
|
||||
TASK: ch-029/030 타임라인 역전 수정
|
||||
REPORT: 2권_완전_재검증_보고서.md
|
||||
PLAN: volumes/vol-02/modification-plan-20260117.md
|
||||
SCOPE: ch-029, ch-030, summary-001-030~060
|
||||
VOL: vol-02
|
||||
CREATED: 2026-01-17 16:00
|
||||
```
|
||||
|
||||
**1-6. Git 커밋**
|
||||
```bash
|
||||
git add volumes/vol-02/WORK-MODE.txt
|
||||
git add volumes/vol-02/modification-plan-20260117.md
|
||||
git commit -m "수정 준비: ch-029/030 타임라인 역전
|
||||
|
||||
- 수정 계획서 작성
|
||||
- WORK-MODE.txt 생성 (MODE: MODIFICATION)
|
||||
- 영향 범위: ch-029, 030, summary-001-030~060
|
||||
|
||||
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
|
||||
git push origin main
|
||||
```
|
||||
|
||||
**1-7. 사용자에게 보고**
|
||||
```
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
✅ 수정 준비 완료!
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
수정 작업: ch-029/030 타임라인 역전
|
||||
계획서: modification-plan-20260117.md
|
||||
영향 범위:
|
||||
- 챕터: ch-029, ch-030
|
||||
- 서머리: summary-001-030~060 (31개 재생성 필요!)
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
📌 다음 단계:
|
||||
1. 세션 정리 (컴팩팅)
|
||||
2. 새 세션에서 "수정 실행" 명령
|
||||
|
||||
⚠️ 중요:
|
||||
- 새 세션에서 자동으로 수정 모드로 진입합니다
|
||||
- WORK-MODE.txt가 MODE: MODIFICATION으로 설정됨
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 2: 수정 실행 (사용자: "수정 실행")
|
||||
|
||||
**새 세션 시작 후:**
|
||||
|
||||
**2-1. 자동 모드 감지**
|
||||
```
|
||||
[세션 시작]
|
||||
→ CLAUDE.md 자동 읽기
|
||||
→ WORK-MODE.txt 확인
|
||||
→ MODE: MODIFICATION 감지
|
||||
→ 수정 모드로 분기 ✅
|
||||
```
|
||||
|
||||
**2-2. 필수 파일 읽기**
|
||||
```
|
||||
자동으로 읽을 파일:
|
||||
1. settings/modification-mode.md (이 파일!)
|
||||
2. volumes/vol-XX/WORK-MODE.txt
|
||||
3. volumes/vol-XX/modification-plan-*.md
|
||||
4. 레포트 파일 (WORK-MODE.txt에 경로)
|
||||
5. settings/chapter-format-standard.md
|
||||
6. settings/renaming-protocol.md (필요시)
|
||||
```
|
||||
|
||||
**2-3. TodoWrite 초기화**
|
||||
```json
|
||||
{
|
||||
"todos": [
|
||||
{"content": "ch-029 읽기 및 분석", "status": "pending", "activeForm": "ch-029 분석 중"},
|
||||
{"content": "ch-030 읽기 및 분석", "status": "pending", "activeForm": "ch-030 분석 중"},
|
||||
{"content": "타임라인 확인", "status": "pending", "activeForm": "타임라인 확인 중"},
|
||||
{"content": "ch-029/030 내용 교환", "status": "pending", "activeForm": "내용 교환 중"},
|
||||
{"content": "summary-001-030 재생성", "status": "pending", "activeForm": "서머리 재생성 중"},
|
||||
{"content": "summary-001-035 재생성", "status": "pending", "activeForm": "서머리 재생성 중"},
|
||||
{"content": "... (summary 전체)", "status": "pending", "activeForm": "서머리 재생성 중"},
|
||||
{"content": "타임라인 전수 검증", "status": "pending", "activeForm": "타임라인 검증 중"},
|
||||
{"content": "제목 중복 검증", "status": "pending", "activeForm": "제목 검증 중"},
|
||||
{"content": "헤더 형식 검증", "status": "pending", "activeForm": "헤더 검증 중"},
|
||||
{"content": "CHANGELOG 업데이트", "status": "pending", "activeForm": "CHANGELOG 작성 중"},
|
||||
{"content": "Git 커밋 및 푸시", "status": "pending", "activeForm": "Git 처리 중"},
|
||||
{"content": "WORK-MODE.txt 삭제", "status": "pending", "activeForm": "정리 중"}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
**2-4. 챕터 수정**
|
||||
```
|
||||
수정 계획서에 따라:
|
||||
- ch-029.md 수정
|
||||
- ch-030.md 수정
|
||||
- 또는 내용 교환
|
||||
- 또는 리네임
|
||||
```
|
||||
|
||||
**2-5. summary 재생성 (필수!)** ⭐⭐⭐
|
||||
```
|
||||
영향받는 범위 전체 재생성:
|
||||
|
||||
summary-001-030.md 재생성:
|
||||
→ ch-001~030 전체 읽기
|
||||
→ 누적 서머리 작성
|
||||
|
||||
summary-001-035.md 재생성:
|
||||
→ ch-001~035 전체 읽기
|
||||
→ 누적 서머리 작성
|
||||
|
||||
...
|
||||
|
||||
summary-001-060.md 재생성:
|
||||
→ ch-001~060 전체 읽기
|
||||
→ 누적 서머리 작성
|
||||
```
|
||||
|
||||
**2-6. 검증 (필수!)**
|
||||
```
|
||||
1. 타임라인 전수 검증:
|
||||
- ch-001~060 타임라인 추출
|
||||
- 시간 순서 확인
|
||||
- 역행, 겹침 체크
|
||||
|
||||
2. 제목 중복 검증:
|
||||
- 동일 권 내 제목 유니크 확인
|
||||
|
||||
3. 헤더 형식 검증:
|
||||
- "X권 Y화: 제목" 형식
|
||||
- 타임라인 형식 확인
|
||||
```
|
||||
|
||||
**2-7. CHANGELOG 업데이트**
|
||||
```markdown
|
||||
volumes/vol-02/CHANGELOG.md에 추가:
|
||||
|
||||
## [2026-01-17] ch-029/030 타임라인 역전 수정
|
||||
**타입:** 🐛 버그 수정
|
||||
**커밋:** abc1234
|
||||
**작업자:** Alex + Claude Sonnet 4.5
|
||||
|
||||
### 문제
|
||||
- ch-029: 1950.5.1-12.31 (이후)
|
||||
- ch-030: 1950.4.1-4.30 (이전)
|
||||
→ 타임라인 역순!
|
||||
|
||||
### 수정 내용
|
||||
**방법:** 내용 교환
|
||||
- ch-029 ↔ ch-030 내용 맞바꿈
|
||||
- ch-029 제목: "만주 개발 준비"
|
||||
- ch-030 제목: "만주 개발 시작"
|
||||
|
||||
### 영향받은 파일
|
||||
**챕터:**
|
||||
- ch-029.md (내용 변경)
|
||||
- ch-030.md (내용 변경)
|
||||
|
||||
**서머리:**
|
||||
- summary-001-030.md ~ summary-001-060.md (31개 재생성)
|
||||
|
||||
### 검증
|
||||
- ✅ 타임라인 순서 정상
|
||||
- ✅ 제목 중복 없음
|
||||
- ✅ 헤더 형식 정상
|
||||
|
||||
### 커밋
|
||||
- abc1234: "ch-029/030 타임라인 수정 완료"
|
||||
```
|
||||
|
||||
**2-8. Git 커밋**
|
||||
```bash
|
||||
git add volumes/vol-02/chapters/ch-029.md
|
||||
git add volumes/vol-02/chapters/ch-030.md
|
||||
git add volumes/vol-02/summaries/summary-001-*.md
|
||||
git add volumes/vol-02/CHANGELOG.md
|
||||
|
||||
git commit -m "ch-029/030 타임라인 역전 수정 완료
|
||||
|
||||
**문제:**
|
||||
- ch-029: 1950.5.1-12.31 (이후)
|
||||
- ch-030: 1950.4.1-4.30 (이전)
|
||||
→ 타임라인 역순 문제
|
||||
|
||||
**수정:**
|
||||
- ch-029 ↔ ch-030 내용 교환
|
||||
- ch-029: \"만주 개발 준비\" (4월)
|
||||
- ch-030: \"만주 개발 시작\" (5-12월)
|
||||
|
||||
**재생성:**
|
||||
- summary-001-030~060 (31개)
|
||||
|
||||
**검증:**
|
||||
- 타임라인 순서 ✅
|
||||
- 제목 중복 없음 ✅
|
||||
- 헤더 형식 정상 ✅
|
||||
|
||||
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
|
||||
|
||||
git push origin main
|
||||
```
|
||||
|
||||
**2-9. WORK-MODE.txt 삭제**
|
||||
```bash
|
||||
rm volumes/vol-02/WORK-MODE.txt
|
||||
git add volumes/vol-02/WORK-MODE.txt
|
||||
git commit -m "수정 모드 종료: WORK-MODE.txt 삭제"
|
||||
git push origin main
|
||||
```
|
||||
|
||||
**2-10. 완료 보고**
|
||||
```
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
✅ 수정 완료!
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
작업: ch-029/030 타임라인 역전 수정
|
||||
|
||||
수정 파일:
|
||||
- ch-029.md ✅
|
||||
- ch-030.md ✅
|
||||
|
||||
재생성 파일:
|
||||
- summary-001-030~060 (31개) ✅
|
||||
|
||||
검증:
|
||||
- 타임라인 순서: ✅
|
||||
- 제목 중복: 없음 ✅
|
||||
- 헤더 형식: 정상 ✅
|
||||
|
||||
CHANGELOG:
|
||||
- volumes/vol-02/CHANGELOG.md 업데이트 ✅
|
||||
|
||||
Git:
|
||||
- 커밋: 완료 ✅
|
||||
- 푸시: 완료 ✅
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
📌 수정 모드 종료
|
||||
→ 작성 모드로 복귀 가능
|
||||
|
||||
💡 다음 단계:
|
||||
- "점검해" → 전체 검증
|
||||
- "작성 모드" → 작성 계속
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📋 수정 체크리스트
|
||||
|
||||
### 수정 전 (준비)
|
||||
|
||||
- [ ] 문제 레포트 읽기
|
||||
- [ ] 수정 범위 명확화
|
||||
- [ ] 영향받는 파일 식별
|
||||
- [ ] 수정 계획서 작성
|
||||
- [ ] WORK-MODE.txt 생성
|
||||
- [ ] Git 커밋 (준비 완료)
|
||||
- [ ] 사용자에게 세션 정리 요청
|
||||
|
||||
### 수정 중 (실행)
|
||||
|
||||
- [ ] 챕터 수정
|
||||
- [ ] plot 수정 (필요시)
|
||||
- [ ] characters/timeline 수정 (필요시)
|
||||
- [ ] **summary 재생성 (영향 범위 전체!)** ⭐
|
||||
- [ ] 타임라인 전수 검증
|
||||
- [ ] 제목 중복 검증
|
||||
- [ ] 헤더 형식 검증
|
||||
- [ ] CHANGELOG 업데이트
|
||||
|
||||
### 수정 후 (완료)
|
||||
|
||||
- [ ] Git 커밋 (수정 완료)
|
||||
- [ ] Git 푸시
|
||||
- [ ] WORK-MODE.txt 삭제
|
||||
- [ ] 완료 보고
|
||||
- [ ] (선택) 전체 점검 실행
|
||||
|
||||
---
|
||||
|
||||
## 🚫 수정 모드 금지사항
|
||||
|
||||
❌ summary 재생성 누락 (최악!)
|
||||
❌ 타임라인 검증 생략
|
||||
❌ CHANGELOG 업데이트 누락
|
||||
❌ plot과 다르게 수정 (승인 없이)
|
||||
❌ Git 커밋 누락
|
||||
❌ 작성 모드 절차 따르기 (수정은 다름!)
|
||||
|
||||
---
|
||||
|
||||
## 📌 참고 파일
|
||||
|
||||
- **챕터 형식:** `settings/chapter-format-standard.md`
|
||||
- **리네임 절차:** `settings/renaming-protocol.md`
|
||||
- **점검 절차:** `settings/verification-mode.md`
|
||||
- **CHANGELOG:** `volumes/vol-XX/CHANGELOG.md`
|
||||
|
||||
---
|
||||
|
||||
**버전:** 1.0
|
||||
**최종 수정:** 2026-01-17
|
||||
**작성자:** Alex + Claude Sonnet 4.5
|
||||
451
settings/renaming-protocol.md
Normal file
451
settings/renaming-protocol.md
Normal file
@@ -0,0 +1,451 @@
|
||||
# 파일 리네임 안전 절차
|
||||
|
||||
> **작성일:** 2026-01-17
|
||||
> **버전:** 1.0
|
||||
> **용도:** 챕터 파일 리네임 시 데이터 손실 방지
|
||||
|
||||
---
|
||||
|
||||
## 🚨 위험한 방법 (절대 금지!)
|
||||
|
||||
### ❌ 순차 리네임 (덮어쓰기 위험!)
|
||||
|
||||
```bash
|
||||
# 30-60화를 31-61화로 변경 (1씩 증가)
|
||||
|
||||
mv ch-030.md ch-031.md # OK
|
||||
mv ch-031.md ch-032.md # ❌ 충돌! ch-031.md를 덮어씀!
|
||||
mv ch-032.md ch-033.md # ❌ 기존 ch-032 손실!
|
||||
...
|
||||
```
|
||||
|
||||
**문제:**
|
||||
- ch-031.md → ch-032.md로 변경 시
|
||||
- 기존 ch-032.md가 덮어쓰기됨
|
||||
- **원본 ch-031, ch-032 내용 모두 손실!**
|
||||
|
||||
**실제 사례:**
|
||||
```
|
||||
30-60화 리넘버링 시:
|
||||
→ ch-031~045 손실 (덮어쓰기)
|
||||
→ 복구 불가능 (Git 커밋 전이었다면)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ 안전한 방법 (필수!)
|
||||
|
||||
### 방법 1: 2단계 리네임 (권장)
|
||||
|
||||
**원리:**
|
||||
1. 모든 파일을 임시 이름으로 변경 (충돌 없음)
|
||||
2. 임시 이름에서 최종 이름으로 변경 (충돌 없음)
|
||||
|
||||
**Step 1: 임시 이름으로 변경 (뒤에서부터 역순!)**
|
||||
|
||||
```bash
|
||||
# 뒤에서부터 역순으로 (중요!)
|
||||
mv ch-060.md ch-060.tmp
|
||||
mv ch-059.md ch-059.tmp
|
||||
mv ch-058.md ch-058.tmp
|
||||
...
|
||||
mv ch-031.md ch-031.tmp
|
||||
mv ch-030.md ch-030.tmp
|
||||
```
|
||||
|
||||
**왜 역순인가?**
|
||||
- 앞에서부터 하면 여전히 충돌 가능
|
||||
- 뒤에서부터 하면 충돌 없음
|
||||
|
||||
**Step 2: 최종 이름으로 변경 (앞에서부터 순서대로)**
|
||||
|
||||
```bash
|
||||
# 앞에서부터 순서대로
|
||||
mv ch-030.tmp ch-031.md
|
||||
mv ch-031.tmp ch-032.md
|
||||
mv ch-032.tmp ch-033.md
|
||||
...
|
||||
mv ch-059.tmp ch-060.md
|
||||
mv ch-060.tmp ch-061.md
|
||||
```
|
||||
|
||||
**결과:**
|
||||
- 모든 파일 안전하게 변경
|
||||
- 데이터 손실 없음
|
||||
|
||||
---
|
||||
|
||||
### 방법 2: 자동화 스크립트 (강력 권장!)
|
||||
|
||||
**rename-chapters.sh:**
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
# 안전한 챕터 파일 리네임 스크립트
|
||||
#
|
||||
# 사용법:
|
||||
# ./rename-chapters.sh START END INCREMENT
|
||||
#
|
||||
# 예시:
|
||||
# ./rename-chapters.sh 30 60 1
|
||||
# → ch-030~060을 ch-031~061로 변경 (1씩 증가)
|
||||
#
|
||||
# ./rename-chapters.sh 35 50 -5
|
||||
# → ch-035~050을 ch-030~045로 변경 (5씩 감소)
|
||||
|
||||
set -e # 에러 시 중단
|
||||
|
||||
# 인자 확인
|
||||
if [ $# -ne 3 ]; then
|
||||
echo "사용법: $0 START END INCREMENT"
|
||||
echo "예시: $0 30 60 1"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
START=$1
|
||||
END=$2
|
||||
INCREMENT=$3
|
||||
|
||||
# 폴더 확인
|
||||
CHAPTERS_DIR="volumes/vol-02/chapters"
|
||||
if [ ! -d "$CHAPTERS_DIR" ]; then
|
||||
echo "❌ 오류: $CHAPTERS_DIR 폴더가 없습니다."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd "$CHAPTERS_DIR"
|
||||
|
||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||
echo "챕터 리네임 시작"
|
||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||
echo "범위: ch-$START ~ ch-$END"
|
||||
echo "변경: ${INCREMENT:0:1}$INCREMENT"
|
||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||
echo ""
|
||||
|
||||
# 백업 (선택)
|
||||
read -p "Git 커밋되어 있습니까? (y/n): " COMMITTED
|
||||
if [ "$COMMITTED" != "y" ]; then
|
||||
echo "⚠️ 먼저 Git 커밋하세요!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Step 1: 임시 이름으로 변경
|
||||
echo "Step 1: 임시 이름으로 변경 중..."
|
||||
echo ""
|
||||
|
||||
if [ $INCREMENT -gt 0 ]; then
|
||||
# 증가: 뒤에서부터 역순
|
||||
for i in $(seq $END -1 $START); do
|
||||
OLD="ch-$(printf '%03d' $i).md"
|
||||
TMP="ch-$(printf '%03d' $i).tmp"
|
||||
|
||||
if [ -f "$OLD" ]; then
|
||||
mv "$OLD" "$TMP"
|
||||
echo " $OLD → $TMP"
|
||||
fi
|
||||
done
|
||||
else
|
||||
# 감소: 앞에서부터 순서대로
|
||||
for i in $(seq $START $END); do
|
||||
OLD="ch-$(printf '%03d' $i).md"
|
||||
TMP="ch-$(printf '%03d' $i).tmp"
|
||||
|
||||
if [ -f "$OLD" ]; then
|
||||
mv "$OLD" "$TMP"
|
||||
echo " $OLD → $TMP"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "Step 2: 최종 이름으로 변경 중..."
|
||||
echo ""
|
||||
|
||||
# Step 2: 최종 이름으로 변경
|
||||
if [ $INCREMENT -gt 0 ]; then
|
||||
# 증가: 앞에서부터 순서대로
|
||||
for i in $(seq $START $END); do
|
||||
TMP="ch-$(printf '%03d' $i).tmp"
|
||||
NEW="ch-$(printf '%03d' $((i + INCREMENT))).md"
|
||||
|
||||
if [ -f "$TMP" ]; then
|
||||
mv "$TMP" "$NEW"
|
||||
echo " $TMP → $NEW"
|
||||
fi
|
||||
done
|
||||
else
|
||||
# 감소: 뒤에서부터 역순
|
||||
for i in $(seq $END -1 $START); do
|
||||
TMP="ch-$(printf '%03d' $i).tmp"
|
||||
NEW="ch-$(printf '%03d' $((i + INCREMENT))).md"
|
||||
|
||||
if [ -f "$TMP" ]; then
|
||||
mv "$TMP" "$NEW"
|
||||
echo " $TMP → $NEW"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||
echo "✅ 리네임 완료!"
|
||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||
|
||||
# 검증
|
||||
echo ""
|
||||
echo "검증 중..."
|
||||
./verify-chapters.sh
|
||||
```
|
||||
|
||||
**verify-chapters.sh:**
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
# 챕터 파일 검증 스크립트
|
||||
|
||||
CHAPTERS_DIR="volumes/vol-02/chapters"
|
||||
cd "$CHAPTERS_DIR"
|
||||
|
||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||
echo "챕터 파일 검증"
|
||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||
echo ""
|
||||
|
||||
# 1. .tmp 파일 확인
|
||||
TMP_COUNT=$(ls *.tmp 2>/dev/null | wc -l)
|
||||
if [ $TMP_COUNT -gt 0 ]; then
|
||||
echo "❌ 임시 파일 발견: $TMP_COUNT개"
|
||||
ls *.tmp
|
||||
exit 1
|
||||
else
|
||||
echo "✅ 임시 파일 없음"
|
||||
fi
|
||||
|
||||
# 2. 파일 개수
|
||||
MD_COUNT=$(ls ch-*.md 2>/dev/null | wc -l)
|
||||
echo "✅ 총 파일: $MD_COUNT개"
|
||||
|
||||
# 3. 번호 연속성
|
||||
echo ""
|
||||
echo "파일 목록:"
|
||||
ls ch-*.md | sort -V
|
||||
|
||||
echo ""
|
||||
echo "번호 연속성 확인..."
|
||||
PREV=-1
|
||||
ERROR=0
|
||||
|
||||
for FILE in $(ls ch-*.md | sort -V); do
|
||||
NUM=$(echo $FILE | grep -oP '\d+')
|
||||
NUM=$((10#$NUM)) # 10진수 변환
|
||||
|
||||
if [ $PREV -ne -1 ]; then
|
||||
if [ $NUM -ne $((PREV + 1)) ]; then
|
||||
echo "❌ 번호 누락: ch-$(printf '%03d' $((PREV + 1))).md"
|
||||
ERROR=1
|
||||
fi
|
||||
fi
|
||||
|
||||
PREV=$NUM
|
||||
done
|
||||
|
||||
if [ $ERROR -eq 0 ]; then
|
||||
echo "✅ 번호 연속성 정상"
|
||||
fi
|
||||
|
||||
# 4. 헤더 형식 확인
|
||||
echo ""
|
||||
echo "헤더 형식 확인..."
|
||||
grep "^# " ch-*.md | while read LINE; do
|
||||
FILE=$(echo $LINE | cut -d: -f1)
|
||||
HEADER=$(echo $LINE | cut -d: -f2-)
|
||||
|
||||
# "X권 Y화:" 형식 체크
|
||||
if ! echo "$HEADER" | grep -qP '^\s*\d+권 \d+화:'; then
|
||||
echo "⚠️ $FILE: 헤더 형식 오류"
|
||||
echo " $HEADER"
|
||||
fi
|
||||
done
|
||||
|
||||
echo ""
|
||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||
echo "검증 완료"
|
||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📋 리네임 체크리스트
|
||||
|
||||
### 리네임 전
|
||||
|
||||
- [ ] **Git 커밋 완료** (가장 중요!)
|
||||
- [ ] 리네임 범위 확인 (START, END)
|
||||
- [ ] 증감 확인 (INCREMENT)
|
||||
- [ ] 다른 파일 수정 중 아님 확인
|
||||
|
||||
### 리네임 실행
|
||||
|
||||
- [ ] 스크립트 실행 또는 2단계 수동 리네임
|
||||
- [ ] Step 1 완료 확인 (.tmp 파일들)
|
||||
- [ ] Step 2 완료 확인 (.md 파일들)
|
||||
|
||||
### 리네임 후 검증
|
||||
|
||||
- [ ] `.tmp` 파일 없는지 확인
|
||||
```bash
|
||||
ls volumes/vol-XX/chapters/*.tmp
|
||||
# 결과 없어야 정상
|
||||
```
|
||||
|
||||
- [ ] 파일 개수 일치 확인
|
||||
```bash
|
||||
# 이전: 60개
|
||||
ls chapters/ch-*.md | wc -l
|
||||
# 이후: 60개 (또는 +1/-1)
|
||||
```
|
||||
|
||||
- [ ] 번호 연속성 확인
|
||||
```bash
|
||||
ls chapters/ch-*.md | sort -V
|
||||
# 빠진 번호 없는지 확인
|
||||
```
|
||||
|
||||
- [ ] 헤더 내부 화수 일치 확인
|
||||
```bash
|
||||
# ch-031.md 파일의 헤더가 "31화"인지 확인
|
||||
grep "^# " chapters/ch-031.md
|
||||
# 예상: # 2권 31화: 제목
|
||||
```
|
||||
|
||||
- [ ] Git diff 확인
|
||||
```bash
|
||||
git diff --name-status
|
||||
# R로 시작 (Rename) 확인
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔧 내부 화수 업데이트
|
||||
|
||||
**문제:**
|
||||
- 파일명은 ch-031.md
|
||||
- 내부 헤더는 "# 2권 30화: 제목" ← 불일치!
|
||||
|
||||
**해결:**
|
||||
|
||||
### 자동 업데이트 스크립트
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
# update-chapter-numbers.sh
|
||||
# 챕터 파일 내부 화수를 파일명과 일치시킴
|
||||
|
||||
CHAPTERS_DIR="volumes/vol-02/chapters"
|
||||
cd "$CHAPTERS_DIR"
|
||||
|
||||
for FILE in ch-*.md; do
|
||||
# 파일명에서 번호 추출
|
||||
NUM=$(echo $FILE | grep -oP '\d+')
|
||||
NUM=$((10#$NUM)) # 10진수 변환
|
||||
|
||||
# 현재 헤더 확인
|
||||
CURRENT_HEADER=$(head -1 "$FILE")
|
||||
|
||||
# 새 헤더 생성 (제목 유지)
|
||||
TITLE=$(echo "$CURRENT_HEADER" | sed -E 's/^#\s*\d+권\s*\d+화:\s*//')
|
||||
NEW_HEADER="# 2권 ${NUM}화: $TITLE"
|
||||
|
||||
# 헤더 교체
|
||||
sed -i "1s/.*/$NEW_HEADER/" "$FILE"
|
||||
|
||||
echo "$FILE: $CURRENT_HEADER → $NEW_HEADER"
|
||||
done
|
||||
|
||||
echo ""
|
||||
echo "✅ 내부 화수 업데이트 완료"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 💡 사용 예시
|
||||
|
||||
### 예시 1: 30-60화를 31-61화로 (1씩 증가)
|
||||
|
||||
```bash
|
||||
# Git 커밋 확인
|
||||
git status
|
||||
|
||||
# 스크립트 실행
|
||||
./rename-chapters.sh 30 60 1
|
||||
|
||||
# 검증
|
||||
./verify-chapters.sh
|
||||
|
||||
# 내부 화수 업데이트
|
||||
./update-chapter-numbers.sh
|
||||
|
||||
# Git 커밋
|
||||
git add .
|
||||
git commit -m "챕터 리네임: 30-60 → 31-61"
|
||||
```
|
||||
|
||||
### 예시 2: 35-50화를 30-45화로 (5씩 감소)
|
||||
|
||||
```bash
|
||||
./rename-chapters.sh 35 50 -5
|
||||
./verify-chapters.sh
|
||||
./update-chapter-numbers.sh
|
||||
git add .
|
||||
git commit -m "챕터 리네임: 35-50 → 30-45"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🚨 긴급 복구
|
||||
|
||||
### .tmp 파일이 남아있다면?
|
||||
|
||||
```bash
|
||||
# .tmp 파일을 원래 이름으로 복구
|
||||
for FILE in ch-*.tmp; do
|
||||
ORIGINAL="${FILE%.tmp}.md"
|
||||
mv "$FILE" "$ORIGINAL"
|
||||
echo "복구: $FILE → $ORIGINAL"
|
||||
done
|
||||
```
|
||||
|
||||
### Git으로 복구
|
||||
|
||||
```bash
|
||||
# 리네임 전 상태로 되돌리기
|
||||
git reset --hard HEAD
|
||||
|
||||
# 또는 특정 커밋으로
|
||||
git reset --hard <commit-hash>
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📌 주의사항
|
||||
|
||||
1. **반드시 Git 커밋 후 리네임**
|
||||
- 문제 발생 시 복구 가능
|
||||
|
||||
2. **스크립트 사용 권장**
|
||||
- 수동 리네임은 실수 위험 높음
|
||||
|
||||
3. **검증 필수**
|
||||
- .tmp 파일 확인
|
||||
- 번호 연속성 확인
|
||||
- 헤더 일치 확인
|
||||
|
||||
4. **내부 화수도 업데이트**
|
||||
- 파일명과 헤더 일치시키기
|
||||
|
||||
---
|
||||
|
||||
**버전:** 1.0
|
||||
**최종 수정:** 2026-01-17
|
||||
**작성자:** Alex + Claude Sonnet 4.5
|
||||
486
settings/verification-mode.md
Normal file
486
settings/verification-mode.md
Normal file
@@ -0,0 +1,486 @@
|
||||
# 점검 모드 프로토콜
|
||||
|
||||
> **작성일:** 2026-01-17
|
||||
> **버전:** 1.0
|
||||
> **용도:** 전체 검증 및 문제 확인 (MODE: VERIFICATION)
|
||||
|
||||
---
|
||||
|
||||
## 📋 점검 모드 개요
|
||||
|
||||
**점검 모드는:**
|
||||
- 전체 파일 전수 검사
|
||||
- 플롯/타임라인/캐릭터 일치성 검증
|
||||
- 흐름/일관성 검증
|
||||
- 상세 보고서 작성
|
||||
|
||||
**언제 사용:**
|
||||
- "점검해"
|
||||
- "전체 검증해"
|
||||
- "문제 찾아줘"
|
||||
- 대규모 수정 후
|
||||
- 권 완료 시
|
||||
|
||||
---
|
||||
|
||||
## 🎯 점검 프로세스
|
||||
|
||||
### Phase 1: 점검 준비 (사용자: "점검해")
|
||||
|
||||
**사용자 명령:**
|
||||
```
|
||||
"점검해"
|
||||
"2권 점검해"
|
||||
"전체 검증해"
|
||||
"타임라인 검증해" (부분 점검)
|
||||
```
|
||||
|
||||
**AI 실행 절차:**
|
||||
|
||||
**1-1. 점검 범위 파악**
|
||||
```
|
||||
전체 점검: 전체 권
|
||||
부분 점검: 특정 항목만
|
||||
```
|
||||
|
||||
**1-2. WORK-MODE.txt 생성**
|
||||
```
|
||||
volumes/vol-XX/WORK-MODE.txt:
|
||||
|
||||
MODE: VERIFICATION
|
||||
TASK: 2권 전체 점검
|
||||
CREATED: 2026-01-17 16:30
|
||||
```
|
||||
|
||||
**1-3. 점검 시작 메시지**
|
||||
```
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
📊 2권 전체 점검 시작
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
점검 범위:
|
||||
- 파일 구조
|
||||
- 헤더 형식
|
||||
- 타임라인 연속성
|
||||
- 플롯 일치도
|
||||
- 캐릭터 일관성
|
||||
- 내용 흐름
|
||||
|
||||
예상 소요 시간: 약 10-15분
|
||||
|
||||
진행 중...
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 2: 점검 실행
|
||||
|
||||
#### 2-1. 파일 구조 검증
|
||||
|
||||
**확인 사항:**
|
||||
```
|
||||
1. 파일 존재 여부
|
||||
- ch-001~060 (또는 058)
|
||||
- summary-001-005, 010, 015, ...
|
||||
- plot-001-005.md ~ plot-056-060.md
|
||||
- characters.md, timeline.md
|
||||
- CHANGELOG.md
|
||||
|
||||
2. 파일명 규칙
|
||||
- ch-XXX.md (3자리)
|
||||
- summary-001-XXX.md
|
||||
- plot-XXX-YYY.md
|
||||
|
||||
3. 번호 연속성
|
||||
- 빠진 번호 없는지
|
||||
- 중복 없는지
|
||||
```
|
||||
|
||||
**보고 형식:**
|
||||
```markdown
|
||||
### ✅ 파일 구조 검증 결과
|
||||
|
||||
**정규 챕터:** 60개 (ch-001~060) ✅
|
||||
**분할 챕터:** 6개 (ch-022A~F) ✅
|
||||
**총 챕터:** 66개 ✅
|
||||
|
||||
**서머리:** 12개 ✅
|
||||
**플롯:** 12개 ✅
|
||||
**기타:** characters.md, timeline.md, CHANGELOG.md ✅
|
||||
|
||||
**번호 연속성:** 정상 ✅
|
||||
**파일명 규칙:** 정상 ✅
|
||||
```
|
||||
|
||||
#### 2-2. 헤더 형식 검증
|
||||
|
||||
**확인 사항:**
|
||||
```
|
||||
각 챕터 파일:
|
||||
1. 제목 라인: "# X권 Y화: 제목"
|
||||
2. 타임라인: "> **타임라인:** YYYY.M.D-M.D"
|
||||
3. 장소: "> **장소:**" (있어야 함)
|
||||
4. 등장인물: (선택)
|
||||
```
|
||||
|
||||
**검증 코드:**
|
||||
```bash
|
||||
for FILE in chapters/ch-*.md; do
|
||||
# 제목 라인 확인
|
||||
HEADER=$(head -1 "$FILE")
|
||||
if ! echo "$HEADER" | grep -qP '^\s*#\s*\d+권\s*\d+화:'; then
|
||||
echo "❌ $FILE: 헤더 형식 오류"
|
||||
fi
|
||||
|
||||
# 타임라인 확인
|
||||
if ! grep -q "^> \*\*타임라인:\*\*" "$FILE"; then
|
||||
echo "❌ $FILE: 타임라인 누락"
|
||||
fi
|
||||
done
|
||||
```
|
||||
|
||||
**보고 형식:**
|
||||
```markdown
|
||||
### ✅ 헤더 형식 검증 결과
|
||||
|
||||
**올바른 형식:** 52개 (78.8%) ⚠️
|
||||
**오류:** 14개 (21.2%)
|
||||
|
||||
**오류 목록:**
|
||||
- ch-006~015: "# ch-XXX:" 형식 (권 번호 누락)
|
||||
|
||||
**권장:** 일괄 수정 필요
|
||||
```
|
||||
|
||||
#### 2-3. 타임라인 연속성 검증 ⭐
|
||||
|
||||
**확인 사항:**
|
||||
```
|
||||
1. 모든 챕터 타임라인 추출
|
||||
2. 시간 순서 확인
|
||||
3. 시간 역행 체크
|
||||
4. 날짜 겹침 체크
|
||||
```
|
||||
|
||||
**검증 절차:**
|
||||
```
|
||||
ch-001: 1947.1.1-1.31 (종료: 1.31)
|
||||
ch-002: 1947.2.1-2.28 (시작: 2.1) ← 1.31 이후 ✅
|
||||
ch-003: 1947.3.1-3.31 (시작: 3.1) ← 2.28 이후 ✅
|
||||
...
|
||||
ch-029: 1950.5.1-12.31 (시작: 5.1) ← 이전 화 이후? 확인
|
||||
ch-030: 1950.4.1-4.30 (시작: 4.1) ← 5.1 이전! ❌ 역순!
|
||||
```
|
||||
|
||||
**보고 형식:**
|
||||
```markdown
|
||||
### ⚠️ 타임라인 연속성 검증 결과
|
||||
|
||||
**전체 챕터:** 60개
|
||||
**정상:** 58개 (96.7%)
|
||||
**오류:** 2개 (3.3%)
|
||||
|
||||
**오류 목록:**
|
||||
|
||||
❌ ch-029 vs ch-030 시간 역행
|
||||
- ch-029: 1950.5.1-12.31 (5월~12월)
|
||||
- ch-030: 1950.4.1-4.30 (4월)
|
||||
→ ch-030이 ch-029보다 과거!
|
||||
|
||||
**권장:** 즉시 수정 필요
|
||||
```
|
||||
|
||||
#### 2-4. 플롯 일치도 검증
|
||||
|
||||
**확인 사항:**
|
||||
```
|
||||
1. plot-master.md 읽기
|
||||
2. 각 챕터의 제목, 타임라인, 주요 내용 확인
|
||||
3. plot과 비교
|
||||
```
|
||||
|
||||
**보고 형식:**
|
||||
```markdown
|
||||
### ✅ 플롯 일치도 검증 결과
|
||||
|
||||
**일치:** 55화 (91.7%) ✅
|
||||
**불일치:** 5화 (8.3%) ⚠️
|
||||
|
||||
**불일치 목록:**
|
||||
|
||||
⚠️ ch-023~025: 제목 차이
|
||||
- 플롯: "제목A"
|
||||
- 실제: "제목B"
|
||||
→ 내용은 일치, 제목만 다름
|
||||
|
||||
⚠️ ch-029: 플롯 불일치
|
||||
- 플롯: "만주 특별구 출범" (3.11-4.1)
|
||||
- 실제: "만주 개발 시작" (5.1-12.31)
|
||||
→ 완전히 다른 내용!
|
||||
|
||||
**권장:** ch-029 재작성 필요
|
||||
```
|
||||
|
||||
#### 2-5. 캐릭터 일관성 검증
|
||||
|
||||
**확인 사항:**
|
||||
```
|
||||
1. characters.md 읽기
|
||||
2. 각 챕터에서 캐릭터 등장 확인
|
||||
3. 성격, 말투, 나이 일관성 확인
|
||||
```
|
||||
|
||||
**보고 형식:**
|
||||
```markdown
|
||||
### ✅ 캐릭터 일관성 검증 결과
|
||||
|
||||
**주요 캐릭터:** 23명
|
||||
**일관성:** 100% ✅
|
||||
|
||||
**특이사항:**
|
||||
|
||||
✅ 한기철 vs 한지근 구분 명확
|
||||
- ch-005: 한기철 (19세 암살자, 16곳)
|
||||
- ch-032: 한지근 (38세 요원, 순직)
|
||||
→ 혼동 없음
|
||||
|
||||
✅ 강민준 말투 일관성 유지
|
||||
✅ 서윤희 성격 변화 자연스러움
|
||||
```
|
||||
|
||||
#### 2-6. 내용 흐름 검증 (선택)
|
||||
|
||||
**확인 사항:**
|
||||
```
|
||||
1. 전체 챕터 읽기 (요약)
|
||||
2. 스토리 흐름 자연스러운지
|
||||
3. 갑작스러운 전개 없는지
|
||||
4. 복선 회수 확인
|
||||
```
|
||||
|
||||
**보고 형식:**
|
||||
```markdown
|
||||
### ✅ 내용 흐름 검증 결과
|
||||
|
||||
**전체 흐름:** 자연스러움 ✅
|
||||
**복선 설치:** 12개 ✅
|
||||
**복선 회수:** 9개 ✅
|
||||
**미회수 복선:** 3개 (2권에서 회수 예정) ✅
|
||||
|
||||
**특이사항:**
|
||||
|
||||
✅ 1-33화: 흐름 자연스러움
|
||||
⚠️ 34화 이후: summary 누락으로 추적 어려움
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 3: 보고서 작성
|
||||
|
||||
**보고서 파일 생성:**
|
||||
```
|
||||
2권_점검_보고서_20260117.md
|
||||
|
||||
내용:
|
||||
- 검증 개요
|
||||
- 파일 구조 결과
|
||||
- 헤더 형식 결과
|
||||
- 타임라인 결과
|
||||
- 플롯 일치도 결과
|
||||
- 캐릭터 일관성 결과
|
||||
- 내용 흐름 결과
|
||||
- 발견된 문제 목록 (심각도별)
|
||||
- 수정 권장사항
|
||||
```
|
||||
|
||||
**예시:**
|
||||
```markdown
|
||||
# 2권 점검 보고서
|
||||
|
||||
**점검일:** 2026-01-17
|
||||
**점검 범위:** 2권 전체 (66개 파일)
|
||||
**점검자:** Claude Sonnet 4.5
|
||||
|
||||
---
|
||||
|
||||
## 📊 점검 개요
|
||||
|
||||
**검증 항목:** 6개
|
||||
**총 파일:** 66개
|
||||
**점검 시간:** 15분
|
||||
|
||||
---
|
||||
|
||||
## ✅ 검증 결과 요약
|
||||
|
||||
| 항목 | 상태 | 점수 |
|
||||
|------|------|------|
|
||||
| 파일 구조 | ✅ 정상 | 100% |
|
||||
| 헤더 형식 | ⚠️ 일부 오류 | 79% |
|
||||
| 타임라인 | ❌ 역순 발견 | 97% |
|
||||
| 플롯 일치도 | ⚠️ 일부 불일치 | 92% |
|
||||
| 캐릭터 일관성 | ✅ 정상 | 100% |
|
||||
| 내용 흐름 | ✅ 정상 | 95% |
|
||||
|
||||
**전체 완성도:** 89/100점
|
||||
|
||||
---
|
||||
|
||||
## 🔴 심각한 문제 (즉시 수정 필요)
|
||||
|
||||
### 1. ch-029/030 타임라인 역순
|
||||
...
|
||||
|
||||
---
|
||||
|
||||
## 🟡 중요한 문제 (수정 권장)
|
||||
|
||||
### 2. 헤더 형식 불일치
|
||||
...
|
||||
|
||||
---
|
||||
|
||||
## 🟢 경미한 문제 (선택적 수정)
|
||||
|
||||
### 3. 일부 챕터 짧음
|
||||
...
|
||||
|
||||
---
|
||||
|
||||
## 💡 수정 권장사항
|
||||
|
||||
**우선순위 1:** ch-029/030 문제 (30분)
|
||||
**우선순위 2:** 헤더 형식 통일 (5분)
|
||||
**우선순위 3:** summary 재생성 (1시간)
|
||||
|
||||
**예상 총 소요 시간:** 2시간
|
||||
**수정 후 예상 점수:** 98/100점
|
||||
|
||||
---
|
||||
|
||||
**[보고서 끝]**
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 4: 완료 처리
|
||||
|
||||
**4-1. WORK-MODE.txt 삭제**
|
||||
```bash
|
||||
rm volumes/vol-02/WORK-MODE.txt
|
||||
```
|
||||
|
||||
**4-2. 보고서 저장**
|
||||
```bash
|
||||
git add 2권_점검_보고서_20260117.md
|
||||
git commit -m "2권 전체 점검 완료
|
||||
|
||||
- 66개 파일 검증
|
||||
- 18개 문제 발견
|
||||
- 상세 보고서 작성
|
||||
|
||||
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
|
||||
git push origin main
|
||||
```
|
||||
|
||||
**4-3. 완료 보고**
|
||||
```
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
✅ 2권 점검 완료!
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
점검 범위: 66개 파일
|
||||
발견된 문제: 18개
|
||||
- 심각: 3개 (즉시 수정)
|
||||
- 중요: 15개 (권장)
|
||||
|
||||
전체 완성도: 89/100점
|
||||
|
||||
보고서:
|
||||
→ 2권_점검_보고서_20260117.md
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
📌 다음 단계:
|
||||
1. 보고서 검토
|
||||
2. 문제 수정 결정
|
||||
3. "수정 준비해: [문제명]" 명령
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📋 점검 체크리스트
|
||||
|
||||
### 점검 실행
|
||||
|
||||
- [ ] 파일 구조 검증
|
||||
- [ ] 파일 존재 여부
|
||||
- [ ] 파일명 규칙
|
||||
- [ ] 번호 연속성
|
||||
|
||||
- [ ] 헤더 형식 검증
|
||||
- [ ] 제목 라인 형식
|
||||
- [ ] 타임라인 존재
|
||||
- [ ] 장소 존재
|
||||
|
||||
- [ ] 타임라인 연속성 검증
|
||||
- [ ] 시간 순서
|
||||
- [ ] 시간 역행 체크
|
||||
- [ ] 날짜 겹침 체크
|
||||
|
||||
- [ ] 플롯 일치도 검증
|
||||
- [ ] 제목 일치
|
||||
- [ ] 타임라인 일치
|
||||
- [ ] 주요 내용 일치
|
||||
|
||||
- [ ] 캐릭터 일관성 검증
|
||||
- [ ] 성격 일관성
|
||||
- [ ] 말투 일관성
|
||||
- [ ] 나이 계산
|
||||
|
||||
- [ ] 내용 흐름 검증
|
||||
- [ ] 스토리 흐름
|
||||
- [ ] 복선 설치/회수
|
||||
- [ ] 논리적 연결
|
||||
|
||||
### 보고서 작성
|
||||
|
||||
- [ ] 검증 결과 요약
|
||||
- [ ] 문제 목록 (심각도별)
|
||||
- [ ] 수정 권장사항
|
||||
- [ ] 예상 소요 시간
|
||||
- [ ] 수정 후 예상 점수
|
||||
|
||||
### 완료
|
||||
|
||||
- [ ] 보고서 저장
|
||||
- [ ] Git 커밋
|
||||
- [ ] WORK-MODE.txt 삭제
|
||||
- [ ] 사용자에게 보고
|
||||
|
||||
---
|
||||
|
||||
## 🚫 점검 모드 금지사항
|
||||
|
||||
❌ 점검 중 수정하지 말것 (점검만!)
|
||||
❌ 추측으로 보고하지 말것 (실제 확인!)
|
||||
❌ 사소한 문제 숨기지 말것 (모두 보고!)
|
||||
❌ 보고서 누락하지 말것 (필수!)
|
||||
|
||||
---
|
||||
|
||||
## 📌 참고 파일
|
||||
|
||||
- **챕터 형식:** `settings/chapter-format-standard.md`
|
||||
- **수정 절차:** `settings/modification-mode.md`
|
||||
- **플롯:** `volumes/vol-XX/plot-master.md`
|
||||
- **타임라인:** `volumes/vol-XX/timeline.md`
|
||||
|
||||
---
|
||||
|
||||
**버전:** 1.0
|
||||
**최종 수정:** 2026-01-17
|
||||
**작성자:** Alex + Claude Sonnet 4.5
|
||||
360
settings/writing-mode.md
Normal file
360
settings/writing-mode.md
Normal file
@@ -0,0 +1,360 @@
|
||||
# 작성 모드 프로토콜
|
||||
|
||||
> **작성일:** 2026-01-17
|
||||
> **버전:** 1.0
|
||||
> **용도:** 신규 챕터 작성 시 절차 (MODE: WRITING)
|
||||
|
||||
---
|
||||
|
||||
## 📋 작성 모드 개요
|
||||
|
||||
**작성 모드는:**
|
||||
- 신규 챕터를 5화 단위로 작성
|
||||
- plot-XXX-YYY.md 기반으로 작성
|
||||
- summary를 누적으로 업데이트
|
||||
- Git 자동 커밋 및 푸시
|
||||
|
||||
**언제 사용:**
|
||||
- "1~5화 작성해"
|
||||
- "6~10화 작성해"
|
||||
- "go" (todo.md 기반 자동 진행)
|
||||
|
||||
---
|
||||
|
||||
## 🎯 작성 프로세스
|
||||
|
||||
### Phase 1: 세션 초기화 (자동)
|
||||
|
||||
**1. 진행 상황 파악**
|
||||
```bash
|
||||
# 최신 권 확인
|
||||
LATEST_VOL=$(ls -d volumes/vol-* | sort -V | tail -1)
|
||||
|
||||
# 마지막 작성 챕터 확인
|
||||
LAST_CH=$(ls $LATEST_VOL/chapters/ch-*.md | sort -V | tail -1)
|
||||
|
||||
# 다음 5화 자동 계산
|
||||
# 예: ch-005 → 다음 006-010
|
||||
# 예: ch-010 → 다음 011-015
|
||||
```
|
||||
|
||||
**2. 필수 파일 읽기**
|
||||
```
|
||||
1. volumes/vol-XX/characters.md
|
||||
2. volumes/vol-XX/timeline.md
|
||||
3. settings/writing-guide.md
|
||||
4. plots/plot-XXX-YYY.md (이번 5화)
|
||||
5. summaries/summary-이전.md (있으면)
|
||||
6. summaries/summary-vol-이전-final.md (다른 권이면)
|
||||
```
|
||||
|
||||
**3. 준비 완료 메시지**
|
||||
```
|
||||
✅ 준비 완료!
|
||||
|
||||
현재 권: 2권
|
||||
다음 작성: ch-006~010
|
||||
플롯: plot-006-010.md
|
||||
이전 서머리: summary-001-005.md
|
||||
|
||||
파일 읽기 완료:
|
||||
- characters.md ✅
|
||||
- timeline.md ✅
|
||||
- writing-guide.md ✅
|
||||
- plot-006-010.md ✅
|
||||
- summary-001-005.md ✅
|
||||
|
||||
자동 시작할까요?
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 2: TodoWrite 초기화
|
||||
|
||||
**5화 작성 Todo 생성:**
|
||||
```json
|
||||
{
|
||||
"todos": [
|
||||
{"content": "ch-006 작성 ([제목])", "status": "pending", "activeForm": "ch-006 작성 중"},
|
||||
{"content": "ch-007 작성 ([제목])", "status": "pending", "activeForm": "ch-007 작성 중"},
|
||||
{"content": "ch-008 작성 ([제목])", "status": "pending", "activeForm": "ch-008 작성 중"},
|
||||
{"content": "ch-009 작성 ([제목])", "status": "pending", "activeForm": "ch-009 작성 중"},
|
||||
{"content": "ch-010 작성 ([제목])", "status": "pending", "activeForm": "ch-010 작성 중"},
|
||||
{"content": "summary-001-010.md 최종 정리", "status": "pending", "activeForm": "서머리 정리 중"},
|
||||
{"content": "Git 커밋 및 푸시", "status": "pending", "activeForm": "Git 처리 중"}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 3: 각 화 작성
|
||||
|
||||
**ch-006 작성 예시:**
|
||||
|
||||
**1. Todo 업데이트**
|
||||
```json
|
||||
{"content": "ch-006 작성", "status": "in_progress"}
|
||||
```
|
||||
|
||||
**2. plot-006-010.md에서 6화 확인**
|
||||
```markdown
|
||||
## 6화: 소련 설득 진행
|
||||
**타임라인:** 1947.2.1-2.28
|
||||
**장소:** 모스크바
|
||||
**등장인물:** 강민준, 스탈린
|
||||
|
||||
**주요 장면:**
|
||||
1. 모스크바 도착 (1,500자)
|
||||
2. 스탈린 면담 (2,500자)
|
||||
3. 만주 협상 시작 (2,000자)
|
||||
4. 귀국 준비 (1,500자)
|
||||
```
|
||||
|
||||
**3. 메모리에서 참조 (파일 재읽기 X!)**
|
||||
- characters.md: 강민준 성격, 말투
|
||||
- timeline.md: 1947.2.1 날짜
|
||||
- writing-guide.md: Show Don't Tell
|
||||
- summary-이전: 이전 내용
|
||||
|
||||
**4. 작성**
|
||||
```
|
||||
장면별로 작성:
|
||||
- 장면 1: 모스크바 도착
|
||||
- 장면 2: 스탈린 면담
|
||||
- 장면 3: 만주 협상 시작
|
||||
- 장면 4: 귀국 준비
|
||||
```
|
||||
|
||||
**5. 저장**
|
||||
```
|
||||
volumes/vol-02/chapters/ch-006.md 저장
|
||||
```
|
||||
|
||||
**6. 서머리 업데이트 (즉시!)**
|
||||
```
|
||||
summaries/summary-001-010.md 생성/업데이트
|
||||
|
||||
내용:
|
||||
━━━━━━━━━━━━━━━━━━━━━
|
||||
# 1-10화 누적 서머리
|
||||
|
||||
> 최종 업데이트: 2026-01-17 15:30
|
||||
> 현재: ch-006 (6화)
|
||||
|
||||
## 📌 전체 줄거리
|
||||
(1-5화 내용 유지)
|
||||
1947년 2월, 강민준이 모스크바로 가서 스탈린과 만주 협상을 시작했다...
|
||||
|
||||
## 📖 챕터별 핵심
|
||||
### ch-001~005: (기존 내용)
|
||||
...
|
||||
|
||||
### ch-006: 소련 설득 진행
|
||||
**날짜:** 1947.2.1-2.28
|
||||
**핵심:** 스탈린 면담, 만주 협상 시작
|
||||
|
||||
## 🎭 캐릭터 상태
|
||||
### 강민준:
|
||||
- ch-001~005: (기존)
|
||||
- ch-006: 모스크바, 스탈린 설득 중
|
||||
|
||||
## 📊 통계
|
||||
- 총 챕터: 6화
|
||||
- 총 분량: 48,000자
|
||||
━━━━━━━━━━━━━━━━━━━━━
|
||||
```
|
||||
|
||||
**7. Todo 업데이트**
|
||||
```json
|
||||
{"content": "ch-006 작성", "status": "completed"}
|
||||
```
|
||||
|
||||
**8. 간단한 완료 보고**
|
||||
```
|
||||
✅ ch-006 완료 (8,000자)
|
||||
다음: ch-007
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 4: ch-007~010 반복
|
||||
|
||||
동일한 프로세스:
|
||||
1. Todo: in_progress
|
||||
2. plot 확인
|
||||
3. 작성
|
||||
4. 저장
|
||||
5. summary 업데이트 (누적!)
|
||||
6. Todo: completed
|
||||
7. 완료 보고
|
||||
|
||||
---
|
||||
|
||||
### Phase 5: 5화 완료 처리
|
||||
|
||||
**생성된 파일 확인:**
|
||||
```
|
||||
✅ chapters/ch-006.md
|
||||
✅ chapters/ch-007.md
|
||||
✅ chapters/ch-008.md
|
||||
✅ chapters/ch-009.md
|
||||
✅ chapters/ch-010.md
|
||||
✅ summaries/summary-001-010.md
|
||||
```
|
||||
|
||||
**Todo: summary 정리**
|
||||
```json
|
||||
{"content": "summary-001-010.md 최종 정리", "status": "in_progress"}
|
||||
```
|
||||
|
||||
**최종 서머리 확인:**
|
||||
- 전체 줄거리 완성도
|
||||
- 챕터별 핵심 10개
|
||||
- 캐릭터 상태 업데이트
|
||||
- 복선 추적
|
||||
- 통계 정확성
|
||||
|
||||
```json
|
||||
{"content": "summary-001-010.md 최종 정리", "status": "completed"}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 6: Git 커밋 & 푸시
|
||||
|
||||
**Todo 업데이트:**
|
||||
```json
|
||||
{"content": "Git 커밋 및 푸시", "status": "in_progress"}
|
||||
```
|
||||
|
||||
**Git 명령:**
|
||||
```bash
|
||||
cd "L:\내 드라이브\Writing\1945-novel"
|
||||
|
||||
git add volumes/vol-02/chapters/ch-006.md
|
||||
git add volumes/vol-02/chapters/ch-007.md
|
||||
git add volumes/vol-02/chapters/ch-008.md
|
||||
git add volumes/vol-02/chapters/ch-009.md
|
||||
git add volumes/vol-02/chapters/ch-010.md
|
||||
git add volumes/vol-02/summaries/summary-001-010.md
|
||||
|
||||
git commit -m "2권 6-10화 작성 완료
|
||||
|
||||
- ch-006: 소련 설득 진행 (8,000자)
|
||||
- ch-007: 스탈린의 결정 (8,000자)
|
||||
- ch-008: 결혼 준비 (8,000자)
|
||||
- ch-009: 결혼식 (8,000자)
|
||||
- ch-010: 신혼 첫날밤 (8,000자)
|
||||
- summary-001-010.md 업데이트
|
||||
|
||||
총 40,000자
|
||||
|
||||
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
|
||||
|
||||
git push origin main
|
||||
```
|
||||
|
||||
**Todo 완료:**
|
||||
```json
|
||||
{"content": "Git 커밋 및 푸시", "status": "completed"}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Phase 7: 완료 보고
|
||||
|
||||
```
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
✅ 2권 6-10화 작성 완료!
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
생성 파일:
|
||||
- chapters/ch-006.md (8,000자) ✅
|
||||
- chapters/ch-007.md (8,000자) ✅
|
||||
- chapters/ch-008.md (8,000자) ✅
|
||||
- chapters/ch-009.md (8,000자) ✅
|
||||
- chapters/ch-010.md (8,000자) ✅
|
||||
|
||||
총 분량: 40,000자
|
||||
|
||||
서머리:
|
||||
- summaries/summary-001-010.md ✅
|
||||
|
||||
Git:
|
||||
- 커밋: 완료 ✅
|
||||
- 푸시: 완료 ✅
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
📌 다음 작업:
|
||||
- 11~15화 작성
|
||||
|
||||
💡 명령어:
|
||||
- "11~15화 작성해" 또는 "go"
|
||||
|
||||
⚠️ 권장:
|
||||
- 지금 강제 컴팩팅 실행
|
||||
- 다음 세션에서 자동으로 11~15화 준비됨
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ 작성 체크리스트
|
||||
|
||||
### 각 화 작성 시
|
||||
|
||||
- [ ] plot-XXX-YYY.md 해당 화 확인
|
||||
- [ ] 이전 화 종료 날짜 확인
|
||||
- [ ] 타임라인 연속성 확인
|
||||
- [ ] 제목 중복 없는지 확인
|
||||
- [ ] 헤더 형식 올바른지 확인
|
||||
```
|
||||
# [권수]권 [화수]화: [제목]
|
||||
> **타임라인:** YYYY.M.D-M.D
|
||||
```
|
||||
- [ ] 분량 8,000자 목표
|
||||
- [ ] Show, Don't Tell 준수
|
||||
- [ ] 5감 묘사 최소 2가지
|
||||
- [ ] 캐릭터 말투 일관성
|
||||
- [ ] 저장 후 즉시 summary 업데이트
|
||||
|
||||
### 5화 완료 시
|
||||
|
||||
- [ ] 5개 챕터 모두 생성 확인
|
||||
- [ ] summary 누적 업데이트 확인
|
||||
- [ ] 캐릭터/타임라인 변경 시 master 동기화
|
||||
- [ ] Git 커밋 메시지 작성
|
||||
- [ ] Git 푸시 완료
|
||||
- [ ] 다음 5화 안내
|
||||
|
||||
---
|
||||
|
||||
## 🚫 작성 모드 금지사항
|
||||
|
||||
❌ 설정 파일 읽지 않고 작성
|
||||
❌ 서머리 업데이트 생략
|
||||
❌ TodoWrite 생략
|
||||
❌ 날짜/나이 오류
|
||||
❌ 캐릭터 OOC (Out Of Character)
|
||||
❌ 플롯과 다르게 작성 (사용자 승인 없이)
|
||||
❌ 복선 누락
|
||||
❌ 시간 점프 (설명 없이)
|
||||
❌ Git 커밋 누락
|
||||
|
||||
---
|
||||
|
||||
## 📌 참고 파일
|
||||
|
||||
- **챕터 형식:** `settings/chapter-format-standard.md`
|
||||
- **작성 규칙:** `settings/writing-guide.md`
|
||||
- **플롯:** `volumes/vol-XX/plots/plot-XXX-YYY.md`
|
||||
- **서머리:** `volumes/vol-XX/summaries/summary-XXX-YYY.md`
|
||||
|
||||
---
|
||||
|
||||
**버전:** 1.0
|
||||
**최종 수정:** 2026-01-17
|
||||
**작성자:** Alex + Claude Sonnet 4.5
|
||||
Reference in New Issue
Block a user