v4.0: Single Source of Truth 시스템 확립
- claude.md.template 추가 (프로젝트별 필수 파일) - README.md v4.0: Single Source of Truth 핵심 컨셉 추가 - project-structure.md v4.0: claude.md 필수화, standards 제거 - standards 파일들은 Guide/templates/standards/에서만 관리 - 프로젝트별/권별 standards 복사 금지 - 버전 불일치 원천 차단 주요 변경사항: 1. 새 프로젝트 시작 시 claude.md 생성 필수 2. 모든 모드 진입 시 Guide/templates/standards/ 참조 3. 프로젝트 내 standards/ 디렉토리 생성 금지 4. volumes/vol-XX/validation-standards.md 생성 금지 이유: 표준 파일이 여러 곳에 복사되면 버전 불일치 발생 해결: Guide를 유일한 소스로 지정, claude.md로 강제 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,6 +1,13 @@
|
||||
# 1945 소설 검증 기준 문서 (v2.0)
|
||||
# 1945 소설 검증 기준 문서 (v3.0)
|
||||
|
||||
**최종 개정일:** 2026-01-21
|
||||
**이전 버전:** v2.0 (2026-01-17)
|
||||
**주요 변경사항:**
|
||||
- **ch-046 검증 실패 사례 반영:** 빈 섹션 헤더 검출 강화 (섹션 J 신규)
|
||||
- **ch-047 검증 실패 사례 반영:** 챕터 내부 장면 중복 검증 강화 (섹션 G 대폭 강화)
|
||||
- **검증 실행 프로토콜 강화:** Step 4에 필수 체크 항목 추가
|
||||
- **실패 사례 문서화:** 재발 방지를 위한 참조 예시 추가
|
||||
|
||||
**최종 개정일:** 2026-01-17
|
||||
**목적:** 소설 검증 시 명확한 기준 제시 및 누락 방지
|
||||
**핵심:** 배치 검증 + 검증 요약본 + 2종 요약본 크로스체크
|
||||
|
||||
@@ -135,6 +142,10 @@ validation-batch-06.md
|
||||
- ✅ 일치 / ❌ 불일치
|
||||
- 불일치 사유: [...]
|
||||
|
||||
#### 🔴 v3.0 필수 검증 항목
|
||||
- **빈 섹션 검증 (J):** 0건 / N건 (라인 XXX)
|
||||
- **챕터 내부 중복 검증 (G):** 0건 / N건 (라인 XXX-YYY, N줄 중복)
|
||||
|
||||
#### 특이사항
|
||||
- 중복: 없음 / 있음 (상세)
|
||||
- 시간 역행: 없음 / 있음 (상세)
|
||||
@@ -304,6 +315,205 @@ L:\내 드라이브\Writing\1945-novel\volumes\vol-01\chapters\ch-*.md
|
||||
- 완전히 동일한 내용 반복
|
||||
- 같은 제목으로 같은 내용
|
||||
|
||||
#### G. 챕터 내부 장면 중복 검증 ⭐⭐⭐ (v3.0 대폭 강화)
|
||||
|
||||
**중요도:** 🔴 **필수** - v2.0 검증 시 ch-047에서 190줄 중복을 놓침
|
||||
|
||||
**검증 방법:**
|
||||
각 챕터 내에서 같은 장면이 반복되는지 **전체 내용** 확인:
|
||||
|
||||
**1단계: 장면 헤더 추출**
|
||||
```bash
|
||||
각 챕터의 모든 "## " 헤더 추출
|
||||
→ 동일한 헤더가 2번 이상 나오는지 확인
|
||||
→ 예: "## 오후 4시, 종로 다방" (202줄, 392줄 2회 등장)
|
||||
```
|
||||
|
||||
**2단계: 중복 헤더 발견 시 내용 비교**
|
||||
```bash
|
||||
같은 헤더 발견 → 해당 섹션 전체 내용 비교
|
||||
→ 50줄 이상 동일 내용 = 🔴 심각한 중복
|
||||
→ 10-50줄 동일 내용 = 🟡 중간 중복
|
||||
→ 10줄 미만 동일 = 🟢 경미한 중복
|
||||
```
|
||||
|
||||
**3단계: 중복 범위 및 심각도 판정**
|
||||
| 중복 줄 수 | 심각도 | 판정 | 조치 |
|
||||
|-----------|--------|------|------|
|
||||
| 100줄 이상 | 🔴 긴급 | 즉시 보고 | 수정 필수 |
|
||||
| 50-100줄 | 🔴 높음 | 즉시 보고 | 수정 필수 |
|
||||
| 10-50줄 | 🟡 중간 | 보고 | 수정 권장 |
|
||||
| 10줄 미만 | 🟢 낮음 | 기록 | 확인 필요 |
|
||||
|
||||
**검증 항목:**
|
||||
|
||||
| 항목 | 검증 내용 | 오류 예시 |
|
||||
|------|----------|----------|
|
||||
| 1. 장면 헤더 중복 | 같은 시간/장소 헤더가 2번 이상 | "## 오후 4시, 종로 다방" (202줄, 392줄) ❌ |
|
||||
| 2. 대화 내용 중복 | 같은 대화를 여러 번 | "약혼식에 부모님을 모시고 싶어요" 장면 2회 ❌ |
|
||||
| 3. 서술 내용 중복 | 같은 서술이 반복 | "두 사람은 창가에 앉았다" 동일 문장 2회 ❌ |
|
||||
| 4. 대규모 장면 중복 | 50줄 이상 동일한 장면 | ch-047: 190줄 완전 중복 ❌ |
|
||||
|
||||
**허용되는 반복:**
|
||||
- 강조를 위한 **의도적 반복** (명확히 표시: "다시 한 번", "앞서 말했듯이" 등)
|
||||
- 요약/정리를 위한 반복 (명확히 다른 맥락)
|
||||
- 10줄 미만의 짧은 대화 반복 (다른 장면에서 언급)
|
||||
|
||||
**금지되는 반복:**
|
||||
- 🔴 **작가가 잊고 같은 내용을 또 쓴 경우** (ch-047 사례)
|
||||
- 🔴 **Part/장면 구분 실수로 중복된 경우**
|
||||
- 🔴 **50줄 이상의 대규모 중복**
|
||||
- 🔴 **같은 헤더로 같은 장면을 2번 작성**
|
||||
|
||||
**실패 사례 참조:**
|
||||
```
|
||||
ch-047.md (2026-01-17 검증에서 놓침)
|
||||
- 202-254줄: "## 오후 4시, 종로 다방" 장면 (53줄)
|
||||
- 392-447줄: "## 오후 4시, 종로 다방" 장면 (56줄)
|
||||
- 총 190줄 분량 완전 중복
|
||||
- v2.0 검증: "내용 중복: 0건" 보고 (❌ 오판)
|
||||
- 원인: 장면 헤더 중복 체크 미실행
|
||||
```
|
||||
|
||||
**v3.0 개선사항:**
|
||||
- ✅ 모든 "## " 헤더 강제 추출 및 비교
|
||||
- ✅ 중복 헤더 발견 시 내용 전체 비교 필수
|
||||
- ✅ 50줄 이상 중복 시 즉시 보고 의무화
|
||||
- ✅ validation-batch-XX.md에 "챕터 내부 중복 체크" 항목 필수 기재
|
||||
|
||||
#### H. 인과관계 논리 검증 ⭐ (신규)
|
||||
|
||||
**방법:**
|
||||
챕터 간 인과관계가 논리적으로 맞는지 확인:
|
||||
|
||||
| 항목 | 검증 내용 | 오류 예시 |
|
||||
|------|----------|----------|
|
||||
| 1. 물건/정보 흐름 | A에서 X를 받았으면 B에서 X를 가지고 있어야 | ch-004에서 명단 받았는데, ch-005에서 또 작성 ❌ |
|
||||
| 2. 시간 흐름 논리 | 과거 결정이 미래에 반영 | 4화에서 승인했는데 5화에서 또 승인 요청 ❌ |
|
||||
| 3. 상태 변화 | 상태 변화가 일관성 있게 | 우호적 관계였는데 갑자기 적대적 (이유 없음) ❌ |
|
||||
|
||||
**체크 방법:**
|
||||
1. 전 챕터에서 발생한 사건 목록 작성
|
||||
2. 현 챕터에서 그 사건이 전제되어 있는지 확인
|
||||
3. 모순되는 내용이 없는지 확인
|
||||
|
||||
#### I. 정보 흐름 검증 ⭐ (신규)
|
||||
|
||||
**방법:**
|
||||
독자가 정보를 순차적으로 받는지 확인:
|
||||
|
||||
| 항목 | 검증 내용 | 오류 예시 |
|
||||
|------|----------|----------|
|
||||
| 1. 캐릭터 소개 | 첫 등장 시 소개 있는지 | 강세우가 소개 없이 갑자기 "형님" ❌ |
|
||||
| 2. 관계 형성 | 관계가 점진적으로 발전 | 첫 만남에서 바로 "형님" (과정 없음) ❌ |
|
||||
| 3. 설정 공개 | 설정이 필요한 시점에 공개 | 배경 설명을 나레이션으로만 (대화 없음) ❌ |
|
||||
|
||||
**허용되는 방식:**
|
||||
- 대화로 자연스럽게 소개: "여 선생님이 소개해주셨습니다. 형님으로 모시라고 하셨습니다."
|
||||
- 단계적 관계 형성: "강 선생님" → "형님" (시간차)
|
||||
|
||||
**금지되는 방식:**
|
||||
- 나레이션으로만 배경 설명 (캐릭터가 모르는 정보)
|
||||
- 소개 없이 갑자기 친밀한 호칭
|
||||
- 설명 없이 갑자기 등장
|
||||
|
||||
#### J. 빈 섹션 검증 ⭐⭐⭐ (v3.0 신규 추가)
|
||||
|
||||
**중요도:** 🔴 **필수** - v2.0 검증 시 ch-046 빈 섹션을 놓침
|
||||
|
||||
**검증 방법:**
|
||||
각 챕터의 모든 섹션 헤더 뒤에 **실제 내용**이 있는지 확인:
|
||||
|
||||
**1단계: 섹션 헤더 추출**
|
||||
```bash
|
||||
각 챕터의 모든 "## " 헤더 라인 번호 추출
|
||||
→ 예: ch-046의 293줄 "## 9월 30일 월요일, 저녁"
|
||||
```
|
||||
|
||||
**2단계: 헤더 이후 내용 확인**
|
||||
```bash
|
||||
헤더 라인 이후 최소 3개의 비어있지 않은 줄이 있는지 확인
|
||||
→ 빈 줄(빈 라인), "---" 구분선은 제외
|
||||
→ 실제 문장/대화가 있는지 확인
|
||||
```
|
||||
|
||||
**3단계: 빈 섹션 판정**
|
||||
| 헤더 이후 내용 | 판정 | 심각도 | 조치 |
|
||||
|---------------|------|--------|------|
|
||||
| 0줄 (파일 끝) | 빈 섹션 | 🔴 긴급 | 즉시 보고, 수정 필수 |
|
||||
| 1-2줄만 | 내용 부족 | 🟡 중간 | 보고, 확인 필요 |
|
||||
| 3줄 이상 | 정상 | 🟢 정상 | - |
|
||||
|
||||
**검증 항목:**
|
||||
|
||||
| 항목 | 검증 내용 | 오류 예시 |
|
||||
|------|----------|----------|
|
||||
| 1. 파일 끝 빈 헤더 | 헤더만 있고 파일 종료 | "## 9월 30일 월요일, 저녁" 이후 내용 없음 ❌ |
|
||||
| 2. 중간 빈 헤더 | 헤더와 다음 헤더 사이 내용 없음 | "## Part 3" 이후 바로 "## Part 4" ❌ |
|
||||
| 3. 내용 1-2줄만 | 헤더에 비해 내용 너무 짧음 | "## 12월 1일 아침" 이후 "좋은 아침." 한 문장만 ⚠️ |
|
||||
| 4. 구분선만 | 헤더 + 구분선만 | "## 오후 2시\n---\n(파일 끝)" ❌ |
|
||||
|
||||
**최소 내용 기준:**
|
||||
- **필수:** 헤더 이후 최소 3줄의 실제 내용 (대화/서술/묘사 등)
|
||||
- **권장:** 헤더 이후 최소 50자 이상의 텍스트
|
||||
- **경고:** 헤더만 있고 내용 0-2줄 = 미완성 의심
|
||||
|
||||
**허용되는 경우:**
|
||||
- 짧은 전환 장면 (3줄 이상이면 OK)
|
||||
- 간략한 일기 항목 (3줄 이상이면 OK)
|
||||
|
||||
**금지되는 경우:**
|
||||
- 🔴 **헤더만 작성하고 내용 미작성** (ch-046 사례)
|
||||
- 🔴 **헤더 + 구분선만 있고 파일 종료**
|
||||
- 🔴 **계획만 세우고 실제 작성 안함**
|
||||
|
||||
**실패 사례 참조:**
|
||||
```
|
||||
ch-046.md (2026-01-17 검증에서 놓침)
|
||||
- 289줄: "저도요." (마지막 완성된 대화)
|
||||
- 290줄: (빈 줄)
|
||||
- 291줄: ---
|
||||
- 292줄: (빈 줄)
|
||||
- 293줄: ## 9월 30일 월요일, 저녁
|
||||
- 294줄: (빈 줄)
|
||||
- 295줄: ---
|
||||
- 296줄: (빈 줄)
|
||||
- 297줄: (파일 끝)
|
||||
- v2.0 검증: "제목-내용 일치: 52/52 완벽" 보고 (❌ 오판)
|
||||
- 원인: 헤더 존재만 확인, 헤더 이후 내용 미확인
|
||||
```
|
||||
|
||||
**v3.0 개선사항:**
|
||||
- ✅ 모든 "## " 헤더 위치(라인 번호) 추출
|
||||
- ✅ 각 헤더 이후 3줄 내 실제 내용 존재 여부 확인
|
||||
- ✅ 파일 끝 근처 헤더 특별 주의
|
||||
- ✅ validation-batch-XX.md에 "빈 섹션 체크" 항목 필수 기재
|
||||
- ✅ 빈 섹션 발견 시 "내용 미완성" 즉시 보고
|
||||
|
||||
**체크 알고리즘:**
|
||||
```python
|
||||
for header_line in headers:
|
||||
content_lines = []
|
||||
current_line = header_line + 1
|
||||
|
||||
# 헤더 이후 10줄까지 체크
|
||||
for i in range(10):
|
||||
if current_line >= total_lines:
|
||||
break # 파일 끝
|
||||
|
||||
line = lines[current_line].strip()
|
||||
|
||||
# 빈 줄, 구분선 제외하고 실제 내용만 카운트
|
||||
if line and line != "---":
|
||||
content_lines.append(line)
|
||||
|
||||
current_line += 1
|
||||
|
||||
# 실제 내용이 3줄 미만이면 경고
|
||||
if len(content_lines) < 3:
|
||||
report_empty_section(header_line, content_lines)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 본문 검증 절차 (배치별)
|
||||
@@ -336,13 +546,38 @@ L:\내 드라이브\Writing\1945-novel\volumes\vol-01\chapters\ch-*.md
|
||||
3. 중복 제목 즉시 확인
|
||||
```
|
||||
|
||||
### Step 4: 챕터별 상세 검증
|
||||
### Step 4: 챕터별 상세 검증 (v3.0 강화)
|
||||
```bash
|
||||
각 챕터마다:
|
||||
1. 첫 100줄 읽기
|
||||
1. 전체 파일 읽기 (첫 100줄이 아닌 전체)
|
||||
2. 타임라인, 이벤트, 캐릭터 파악
|
||||
3. 제목-내용 일치 확인
|
||||
4. 검증 요약본에 기록
|
||||
|
||||
🔴 **v3.0 필수 체크 (반드시 실행):**
|
||||
4. **빈 섹션 검증 (섹션 J):**
|
||||
- 모든 "## " 헤더 추출
|
||||
- 각 헤더 이후 3줄 내 실제 내용 확인
|
||||
- 빈 섹션 발견 시 즉시 보고
|
||||
- 결과: "빈 섹션: 0건" 또는 "빈 섹션: N건 (라인 XXX)"
|
||||
|
||||
5. **챕터 내부 중복 검증 (섹션 G):**
|
||||
- 모든 "## " 헤더 추출 및 중복 확인
|
||||
- 중복 헤더 발견 시 내용 비교
|
||||
- 50줄 이상 중복 시 즉시 보고
|
||||
- 결과: "챕터 내부 중복: 0건" 또는 "챕터 내부 중복: N건 (라인 XXX-YYY)"
|
||||
|
||||
6. 검증 요약본에 기록 (필수 항목 포함)
|
||||
```
|
||||
|
||||
**Step 4 체크리스트 (필수):**
|
||||
```markdown
|
||||
각 챕터 검증 완료 시 다음을 확인:
|
||||
- [ ] 타임라인 확인 완료
|
||||
- [ ] 주요 이벤트 파악 완료
|
||||
- [ ] 제목-내용 일치 확인 완료
|
||||
- [ ] 🔴 빈 섹션 검증 완료 (섹션 J)
|
||||
- [ ] 🔴 챕터 내부 중복 검증 완료 (섹션 G)
|
||||
- [ ] 검증 요약본에 모든 항목 기록 완료
|
||||
```
|
||||
|
||||
### Step 5: 배치 전체 분석
|
||||
@@ -642,12 +877,33 @@ L:\내 드라이브\Writing\1945-novel\volumes\vol-01\chapters\ch-*.md
|
||||
|------|------|----------|------|
|
||||
| ch-006 | 금괴 탈취 작전 | 인민공화국 선포 | ❌ |
|
||||
|
||||
## 5. 중복 내용
|
||||
## 5. 중복 내용 (챕터 간)
|
||||
- 발견: N개
|
||||
- 목록:
|
||||
| 챕터 1 | 챕터 2 | 중복 유형 | 상세 |
|
||||
|
||||
## 6. 캐릭터 일관성
|
||||
## 🔴 6. v3.0 필수 검증 항목
|
||||
|
||||
### 6-1. 빈 섹션 검증 (섹션 J)
|
||||
| 챕터 | 빈 섹션 라인 | 헤더 내용 | 심각도 |
|
||||
|------|-------------|----------|--------|
|
||||
| ch-046 | 293 | "## 9월 30일 월요일, 저녁" | 🔴 긴급 |
|
||||
|
||||
- **총 빈 섹션:** N개
|
||||
- **🔴 긴급:** N개 (파일 끝 빈 헤더)
|
||||
- **🟡 주의:** N개 (내용 부족)
|
||||
|
||||
### 6-2. 챕터 내부 중복 검증 (섹션 G)
|
||||
| 챕터 | 중복 라인 범위 | 헤더 내용 | 중복 줄 수 | 심각도 |
|
||||
|------|---------------|----------|-----------|--------|
|
||||
| ch-047 | 202-254, 392-447 | "## 오후 4시, 종로 다방" | 190줄 | 🔴 긴급 |
|
||||
|
||||
- **총 챕터 내부 중복:** N개
|
||||
- **🔴 긴급 (50줄 이상):** N개
|
||||
- **🟡 주의 (10-50줄):** N개
|
||||
- **🟢 경미 (10줄 미만):** N개
|
||||
|
||||
## 7. 캐릭터 일관성
|
||||
- 등급: A+ / A / B / C / F
|
||||
- 호칭 일관성: ✅ / ❌
|
||||
- 말투 일관성: ✅ / ❌
|
||||
@@ -880,6 +1136,144 @@ L:\내 드라이브\Writing\1945-novel\volumes\vol-01\chapters\ch-*.md
|
||||
|
||||
---
|
||||
|
||||
## 📚 v3.0 검증 실패 사례 (재발 방지)
|
||||
|
||||
### 사례 1: ch-046 빈 섹션 미검출 (2026-01-17)
|
||||
|
||||
**문제:**
|
||||
- **챕터:** ch-046.md "1권 46화: 약혼을 위하여"
|
||||
- **타임라인:** 1946년 9월 16일 ~ 9월 30일
|
||||
- **총 라인:** 297줄
|
||||
- **문제 위치:** 293-297줄
|
||||
|
||||
**실제 내용:**
|
||||
```markdown
|
||||
289→"저도요."
|
||||
290→
|
||||
291→---
|
||||
292→
|
||||
293→## 9월 30일 월요일, 저녁
|
||||
294→
|
||||
295→---
|
||||
296→
|
||||
297→(파일 끝)
|
||||
```
|
||||
|
||||
**v2.0 검증 결과:**
|
||||
- "제목-내용 일치: 52/52 완벽" ✅ (오판)
|
||||
- 빈 섹션을 발견하지 못함
|
||||
|
||||
**원인 분석:**
|
||||
1. v2.0은 "헤더가 존재하는가"만 체크
|
||||
2. "헤더 이후 내용이 있는가"는 체크하지 않음
|
||||
3. 첫 100줄만 읽어서 파일 끝 문제 발견 못함
|
||||
|
||||
**v3.0 개선:**
|
||||
- ✅ 섹션 J 추가: 빈 섹션 검증
|
||||
- ✅ 모든 헤더 이후 최소 3줄 내용 확인
|
||||
- ✅ 전체 파일 읽기 (첫 100줄이 아닌)
|
||||
- ✅ 파일 끝 근처 헤더 특별 주의
|
||||
|
||||
**재발 방지:**
|
||||
- 모든 배치 검증 시 섹션 J 체크 필수
|
||||
- validation-batch-XX.md에 "빈 섹션: 0건" 명시 필수
|
||||
|
||||
---
|
||||
|
||||
### 사례 2: ch-047 챕터 내부 중복 미검출 (2026-01-17)
|
||||
|
||||
**문제:**
|
||||
- **챕터:** ch-047.md "1권 47화: 원산행 계획"
|
||||
- **타임라인:** 1946년 10월 1일 ~ 10월 15일
|
||||
- **총 라인:** 약 500줄
|
||||
- **문제 위치:** 202-254줄, 392-447줄
|
||||
|
||||
**실제 내용:**
|
||||
|
||||
**첫 번째 장면 (202-254줄, 53줄):**
|
||||
```markdown
|
||||
202→## 오후 4시, 종로 다방
|
||||
203→
|
||||
204→두 사람은 창가에 앉았다.
|
||||
205→
|
||||
206→따뜻한 보리차 향. 밖으로 거리가 보였다.
|
||||
...
|
||||
212→"약혼식에... 부모님을 모시고 싶어요."
|
||||
...
|
||||
254→"12월 15일이 기다려져요."
|
||||
```
|
||||
|
||||
**두 번째 장면 (392-447줄, 56줄):**
|
||||
```markdown
|
||||
392→## 오후 4시, 종로 다방
|
||||
393→
|
||||
394→두 사람은 창가에 앉았다.
|
||||
395→
|
||||
396→따뜻한 보리차 향. 밖으로 거리가 보였다.
|
||||
...
|
||||
402→"약혼식에... 부모님을 모시고 싶어요."
|
||||
...
|
||||
444→"12월 15일이 기다려져요."
|
||||
445→
|
||||
446→"저도 그렇습니다."
|
||||
447→
|
||||
```
|
||||
|
||||
**중복 규모:**
|
||||
- 동일 헤더: "## 오후 4시, 종로 다방"
|
||||
- 중복 내용: 약 190줄 분량
|
||||
- 중복 비율: 챕터 전체의 38%
|
||||
|
||||
**v2.0 검증 결과:**
|
||||
- "내용 중복: 0건" ✅ (오판)
|
||||
- 190줄 대규모 중복을 발견하지 못함
|
||||
|
||||
**원인 분석:**
|
||||
1. v2.0 섹션 G는 "챕터 간 중복"만 체크
|
||||
2. "챕터 내부 중복"은 체크 항목에 없었음
|
||||
3. 첫 100줄만 읽어서 392줄의 중복 발견 못함
|
||||
4. 장면 헤더 추출/비교 프로세스 미실행
|
||||
|
||||
**v3.0 개선:**
|
||||
- ✅ 섹션 G 대폭 강화: 챕터 내부 중복 검증
|
||||
- ✅ 모든 "## " 헤더 추출 및 중복 확인
|
||||
- ✅ 중복 헤더 발견 시 내용 비교
|
||||
- ✅ 50줄 이상 중복 시 즉시 보고
|
||||
- ✅ 전체 파일 읽기 필수
|
||||
|
||||
**재발 방지:**
|
||||
- 모든 배치 검증 시 섹션 G 체크 필수
|
||||
- validation-batch-XX.md에 "챕터 내부 중복: 0건" 명시 필수
|
||||
- 중복 헤더 발견 시 반드시 내용 비교
|
||||
|
||||
---
|
||||
|
||||
### 교훈 및 원칙
|
||||
|
||||
**v2.0의 근본적 문제:**
|
||||
1. **부분 읽기:** 첫 100줄만 읽음 → 파일 끝, 중간 이후 문제 못 찾음
|
||||
2. **헤더만 체크:** 헤더 존재 확인만 함 → 헤더 이후 내용 미확인
|
||||
3. **챕터 간만 체크:** 챕터 간 중복만 봄 → 챕터 내부 중복 놓침
|
||||
4. **선택적 실행:** 섹션 G, H, I가 있었으나 실제 실행 안됨
|
||||
|
||||
**v3.0 개선 원칙:**
|
||||
1. ✅ **전체 읽기:** 모든 챕터 전체 내용 읽기
|
||||
2. ✅ **내용 검증:** 헤더 뿐 아니라 헤더 이후 내용 확인
|
||||
3. ✅ **챕터 내부 검증:** 챕터 내부 중복, 빈 섹션 검증
|
||||
4. ✅ **필수 실행:** Step 4에 필수 체크리스트 명시
|
||||
|
||||
**핵심 메시지:**
|
||||
> "헤더가 있다고 내용이 있는 것이 아니다" (ch-046)
|
||||
> "챕터 간 중복이 없다고 챕터 내부 중복이 없는 것이 아니다" (ch-047)
|
||||
|
||||
---
|
||||
|
||||
**이 문서는 검증 시 필수 참조 문서입니다.**
|
||||
**검증 모드 진입 시 반드시 이 문서를 먼저 확인하세요.**
|
||||
**배치 검증 + 검증 요약본 + 2종 크로스체크가 핵심입니다.**
|
||||
|
||||
**v3.0 필수 사항:**
|
||||
- ✅ 전체 파일 읽기 (첫 100줄이 아닌)
|
||||
- ✅ 빈 섹션 검증 (섹션 J) 필수 실행
|
||||
- ✅ 챕터 내부 중복 검증 (섹션 G) 필수 실행
|
||||
- ✅ validation-batch-XX.md에 두 항목 결과 필수 기재
|
||||
|
||||
Reference in New Issue
Block a user