전체 표준 파일에 AI 강제 실행 규칙 추가 - 절대 무시 불가 체크리스트 ## 변경 사항 ### 핵심 철학 변경 - **기존:** 프로토콜을 "참고" 자료로 취급 가능 - **신규:** 모든 프로토콜은 "강제 실행" 체크리스트 - **목적:** AI의 절차 생략/건너뛰기/판단 회피 100% 차단 ### 추가된 공통 구조 (26개 파일 전체) 모든 파일에 다음 섹션 추가: ```markdown ## 🚨 AI 강제 실행 규칙 (vX.Y.0 신규 - 절대 무시 불가!) ### ⚠️ 이 문서는 가이드라인이 아닙니다. 체크리스트입니다. **모든 절차는 강제 실행입니다. "참고", "건너뛰기", "판단으로 생략" 절대 금지.** ### 규칙 1-N: [모드별 특화 규칙] 🔍 [강제 실행 체크리스트] - [ ] 필수 항목 1 - [ ] 필수 항목 2 ... **위반 시 즉시 보고!** ### 위반 시 처리 **위 규칙 중 하나라도 위반 시:** - 해당 작업 무효 - 사용자에게 즉시 보고 - 규칙 준수 후 재작업 ``` ## 업데이트된 파일 목록 (26개) ### 검증 프로토콜 (6개) - verification-mode.md: v3.2.0 → v3.3.0 + 트리거 발견 시 체크리스트 강제 출력 + 판단 명확성 강제 - volume-timeline-verification.md: v1.1.0 → v1.2.0 + 상위 계층 반영 검증 강제 + 사건 완성도 강제 검증 - volume-characters-verification.md: v1.1.0 → v1.2.0 + 나이 계산 정확성 강제 검증 + 판단 명확성 강제 - plot-master-verification.md: v2.1.0 → v2.2.0 + 입력 소비 확인 강제 + 상위 계층 반영 100% 강제 - volume-plot-verification.md: v2.1.0 → v2.2.0 + 타임라인 순차 검증 강제 + 특수 타임라인 검증 강제 + 복선 고아/유령 검증 강제 - plot-detail-verification.md: v2.1.0 → v2.2.0 + Part 구조 강제 검증 + Part 필수 항목 9개 강제 검증 + 집필 가능성 구체성 강제 검증 ### 수정 프로토콜 (3개) - fix-mode.md: v2.0.0 → v2.1.0 + 리포트 유효성 검증 강제 + 재배치 3-Stage 강제 실행 + Git 커밋 타이밍 강제 - polish-mode.md: v2.5.0 → v2.6.0 + 리포트 유효성 검증 강제 + 백업 생성 강제 - modification-mode.md: v2.2.0 → v2.3.0 + 영향 범위 분석 강제 + 상위 계층 동기화 강제 ### 작성 모드 (6개) - writing-mode.md: v2.7.0 → v2.8.0 + 타임라인 역행 방지 4단계 강제 + 호칭 규칙 확인 3단계 강제 + Phase 3/4 검증 강제 - plot-mode.md: v3.1.0 → v3.2.0 + 필수 입력 파일 읽기 강제 + 타임라인 검증 5단계 강제 - plot-master-mode.md: v3.1.0 → v3.2.0 + 상위 계층 반영 100% 강제 + 필수 정보 8개 항목 강제 - volume-timeline-mode.md: v1.0.0 → v1.1.0 + 필수 입력 파일 읽기 강제 + 역사적 사건 추출 완전성 강제 - volume-characters-mode.md: v1.0.0 → v1.1.0 + 필수 입력 파일 읽기 강제 + 나이 계산 정확성 강제 - volume-plot-mode.md: v3.1.0 → v3.2.0 + 필수 입력 파일 읽기 강제 + 화별 필수 정보 9개 항목 강제 ### 지원 프로토콜 (6개) - design-verification-mode.md: v1.1.0 → v1.2.0 + 계층적 반영 검증 3단계 강제 + Phase 5-2 필수 실행 - artistic-review-mode.md: v1.0.0 → v1.1.0 + 진단 기준 강제 적용 + 구체적 가이드 생성 강제 - retouch-mode.md: v1.1.0 → v1.2.0 + 백업 생성 강제 + POLISH/MODIFICATION 경계 준수 강제 - renaming-protocol.md: v2.0.0 → v2.1.0 + 3-stage 프로세스 강제 실행 - report-management.md: v1.0.0 → v1.1.0 + 리포트 유효성 검증 강제 - chapter-format.md: v2.0.0 → v2.1.0 + 헤더 형식 강제 준수 ### 참조 문서 (5개) - creative-writing.md: v1.0.0 → v1.1.0 + 기법 적용 체크리스트 강제 - writing-guide.md: v2.5.0 → v2.6.0 + 프로토콜 읽기 강제 - file-formats.md: v1.2.0 → v1.3.0 + 파일명 규칙 강제 준수 - phase4-master-design.md: v3.3.0 → v3.4.0 + Phase 진행 순서 강제 준수 + 블로킹 조건 강제 확인 + 에러 복구 프로토콜 강제 실행 - README.md: v4.3.0 → v4.3.1 + 프로토콜 읽기 강제 + Phase 진행 순서 강제 + 검증 워크플로우 강제 ## 영향 ### AI 행동 변경 - **이전:** "이 프로토콜을 참고하여..." (선택적) - **이후:** "다음 체크리스트를 실행합니다..." (강제적) ### 예상 효과 - 절차 생략/건너뛰기: 100% 차단 - 판단 회피/추측 표현: 100% 차단 - 프로토콜 준수율: 대폭 향상 ## 파일 통계 - 총 업데이트 파일: 26개 - 총 추가된 라인 수: ~1,800줄 - 평균 파일당 추가: ~70줄 (규칙 섹션) ## Breaking Changes 없음. 기존 기능은 모두 유지되며, 강제 실행 규칙만 추가됨. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
401 lines
10 KiB
Markdown
401 lines
10 KiB
Markdown
# 리포트 관리 프로토콜
|
|
|
|
> **버전:** 1.1.0
|
|
> **최종 수정:** 2026-01-31
|
|
> **호환:** CWS Writing Guide v4.2.0+
|
|
> **용도:** 모든 검증/POLISH 리포트의 유효성 관리
|
|
> **주요 변경:** AI 강제 실행 규칙 추가 (절대 무시 불가)
|
|
|
|
---
|
|
|
|
## 🚨 AI 강제 실행 규칙 (v1.1.0 신규 - 절대 무시 불가!)
|
|
|
|
### ⚠️ 이 문서는 가이드라인이 아닙니다. 체크리스트입니다.
|
|
|
|
**모든 절차는 강제 실행입니다. "참고", "건너뛰기", "판단으로 생략" 절대 금지.**
|
|
|
|
---
|
|
|
|
### 규칙 1: 리포트 읽기 전 유효성 검증 강제
|
|
|
|
**모든 리포트 읽기 전 반드시 실행:**
|
|
|
|
```
|
|
🔍 리포트 유효성 검증 체크리스트 (강제 실행):
|
|
- [ ] 1단계: 리포트 파일 존재 확인
|
|
- [ ] 2단계: 리포트 작성 날짜 추출
|
|
- grep "검증일\|시작\|완료" 리포트파일
|
|
- [ ] 3단계: 대상 파일들 최종 수정 시간 확인
|
|
- ls -l 또는 stat 명령 사용
|
|
- [ ] 4단계: 비교 (리포트 날짜 < 파일 수정 시간?)
|
|
- Yes → 리포트 무효
|
|
- No → 리포트 유효
|
|
- [ ] 5단계: 판정 결과 사용자에게 명확히 보고
|
|
|
|
**이 검증 없이 리포트 내용 사용 절대 금지!**
|
|
**무효 리포트 사용 시 잘못된 정보 전달!**
|
|
```
|
|
|
|
---
|
|
|
|
### 규칙 2: 무효 리포트 처리 강제
|
|
|
|
**리포트 무효 판정 시 반드시 실행:**
|
|
|
|
```
|
|
🔍 무효 리포트 처리 체크리스트 (강제 실행):
|
|
- [ ] 사용자에게 무효 사유 명확히 보고
|
|
- 리포트 날짜: YYYY-MM-DD
|
|
- 파일 수정: YYYY-MM-DD
|
|
- 무효 사유: (구체적으로)
|
|
- [ ] 리포트 삭제 또는 아카이브
|
|
- [ ] 재검증 필요 안내
|
|
|
|
**무효 리포트를 그대로 사용 절대 금지!**
|
|
```
|
|
|
|
---
|
|
|
|
### 위반 시 처리
|
|
|
|
**위 규칙 중 하나라도 위반 시:**
|
|
- 해당 작업 무효
|
|
- 잘못된 정보 전달 위험
|
|
- 사용자에게 즉시 보고
|
|
- 규칙 준수 후 재실행
|
|
|
|
---
|
|
|
|
## 📋 CHANGELOG
|
|
|
|
### v1.0.0 (2026-01-25) - 초기 버전
|
|
|
|
**배경:**
|
|
- 문제: 리포트 작성 후 파일 수정 시 리포트가 과거 상태 반영
|
|
- 결과: 잘못된 정보를 사용자에게 전달하는 심각한 오류
|
|
|
|
**추가:**
|
|
- 📌 리포트 유효성 검증 프로토콜
|
|
- 파일 수정 시간 vs 리포트 날짜 비교 로직
|
|
- 무효화 조건 명확화
|
|
- 리포트 관리 Best Practices
|
|
|
|
**연동:**
|
|
- VERIFICATION 모드 v2.9.0에 통합
|
|
- POLISH 모드 v2.4.0에 통합
|
|
- FIX 모드 v2.0.0에 통합
|
|
|
|
---
|
|
|
|
## 🚨 핵심 문제
|
|
|
|
### 리포트 재사용 시 발생하는 오류
|
|
|
|
**시나리오:**
|
|
```
|
|
2026-01-21: POLISH 완료 → polish-batch-05.md 생성 (ch-046, 047, 050 문제 기록)
|
|
2026-01-24: FIX 모드로 ch-028, 029, 030 재배치 → 파일 수정
|
|
2026-01-25: polish-batch-05.md 읽음 → "문제 있다" 보고 ❌ 잘못됨!
|
|
```
|
|
|
|
**왜 잘못되었나?**
|
|
- 리포트는 **2026-01-21 시점**의 파일 상태 반영
|
|
- 하지만 **2026-01-24에 파일 수정됨**
|
|
- 리포트가 현재 파일 상태와 불일치
|
|
|
|
**결과:**
|
|
- 사용자에게 잘못된 정보 전달
|
|
- "문제 있다" → 확인하면 "문제 없다" → 혼란
|
|
|
|
---
|
|
|
|
## ✅ 해결 방법: 리포트 유효성 검증
|
|
|
|
### 필수 절차
|
|
|
|
**리포트 읽기 전 체크:**
|
|
|
|
```python
|
|
def read_report(report_file):
|
|
# 1. 리포트 존재 확인
|
|
if not exists(report_file):
|
|
return "리포트 없음 → 새로 검증 필요"
|
|
|
|
# 2. 리포트 날짜 확인
|
|
report_date = get_report_date(report_file)
|
|
|
|
# 3. 대상 파일들의 최종 수정 시간 확인
|
|
target_files = get_target_files(report_file) # ch-041~050 등
|
|
latest_file_mod = max(f.modified_time for f in target_files)
|
|
|
|
# 4. 유효성 검증
|
|
if latest_file_mod > report_date:
|
|
return "❌ 리포트 무효 (파일이 리포트 이후 수정됨) → 재검증 필요"
|
|
else:
|
|
return "✅ 리포트 유효 → 사용 가능"
|
|
```
|
|
|
|
### 구체적 절차
|
|
|
|
#### 1단계: 리포트 날짜 추출
|
|
|
|
```bash
|
|
# 리포트 파일에서 날짜 찾기
|
|
grep "검증일\|시작\|완료" polish-batch-05.md
|
|
|
|
# 예시 출력:
|
|
# > **시작:** 2026-01-21
|
|
# **검토 완료:** 2026-01-21
|
|
```
|
|
|
|
#### 2단계: 대상 파일 수정 시간 확인
|
|
|
|
```bash
|
|
# Windows
|
|
ls -l "l:\내 드라이브\Writing\1945-novel\volumes\vol-01\chapters\ch-04*.md" | awk '{print $6, $7, $8, $9}'
|
|
|
|
# Unix/Mac
|
|
stat -c "%y %n" chapters/ch-04*.md
|
|
```
|
|
|
|
#### 3단계: 비교 및 판정
|
|
|
|
```markdown
|
|
리포트 날짜: 2026-01-21
|
|
파일 수정 시간:
|
|
- ch-041.md: 2026-01-20 (리포트 이전) ✅
|
|
- ch-042.md: 2026-01-24 (리포트 이후!) ❌
|
|
|
|
판정: 리포트 무효 → 재검증 필요
|
|
```
|
|
|
|
---
|
|
|
|
## 📋 리포트 유효성 검증 체크리스트
|
|
|
|
### VERIFICATION 모드
|
|
|
|
```markdown
|
|
- [ ] 1. validation-batch-XX.md 존재 확인
|
|
- [ ] 2. 리포트 작성 날짜 추출
|
|
- [ ] 3. 대상 챕터들의 최종 수정 시간 확인
|
|
- [ ] 4. 리포트 날짜 < 파일 수정 시간? → 무효
|
|
- [ ] 5. 무효 시: 리포트 삭제 또는 아카이브
|
|
- [ ] 6. 재검증 실행
|
|
```
|
|
|
|
### POLISH 모드
|
|
|
|
```markdown
|
|
- [ ] 1. polish-batch-XX.md 존재 확인
|
|
- [ ] 2. 리포트 작성 날짜 추출
|
|
- [ ] 3. 대상 챕터들의 최종 수정 시간 확인
|
|
- [ ] 4. 리포트 날짜 < 파일 수정 시간? → 무효
|
|
- [ ] 5. 무효 시: 리포트 삭제 또는 아카이브
|
|
- [ ] 6. 재검증 실행
|
|
```
|
|
|
|
---
|
|
|
|
## 🔄 리포트 무효화 조건
|
|
|
|
### 자동 무효화
|
|
|
|
**다음 경우 리포트 자동 무효:**
|
|
|
|
1. **파일 수정**
|
|
- 대상 파일 중 하나라도 리포트 이후 수정됨
|
|
- 예: ch-046.md 수정 시간 > polish-batch-05.md 작성 시간
|
|
|
|
2. **파일 재배치**
|
|
- FIX 모드에서 챕터 번호 변경
|
|
- 예: ch-028 → ch-022 이동 시 모든 관련 배치 리포트 무효
|
|
|
|
3. **날짜 차이**
|
|
- 리포트 작성일과 현재 날짜 차이 7일 이상 (선택)
|
|
- 파일 수정 없어도 재검증 권장
|
|
|
|
### 수동 무효화
|
|
|
|
**사용자가 명시적으로 요청 시:**
|
|
- "리포트 무시하고 재검증해"
|
|
- "처음부터 다시 검증해"
|
|
|
|
---
|
|
|
|
## 📝 리포트 관리 Best Practices
|
|
|
|
### 1. 타임스탬프 명확히 기록
|
|
|
|
```markdown
|
|
# POLISH 배치 5 진행 리포트
|
|
|
|
> **시작:** 2026-01-21 14:30
|
|
> **완료:** 2026-01-21 16:45
|
|
> **대상 파일 수정 시간 기준:** 2026-01-21 16:45까지
|
|
|
|
---
|
|
|
|
## 검증 기준 시점
|
|
|
|
이 리포트는 **2026-01-21 16:45** 시점의 파일 상태를 반영합니다.
|
|
이후 파일이 수정되었다면 이 리포트는 무효입니다.
|
|
```
|
|
|
|
### 2. 리포트 버전 관리
|
|
|
|
```markdown
|
|
# 옵션 1: 날짜 포함 파일명
|
|
polish-batch-05-20260121.md
|
|
polish-batch-05-20260124.md # 재검증 시
|
|
|
|
# 옵션 2: 리포트 내 버전 기록
|
|
> **버전:** v1 (2026-01-21 초기)
|
|
> **버전:** v2 (2026-01-24 재검증)
|
|
```
|
|
|
|
### 3. 아카이브
|
|
|
|
```markdown
|
|
# 무효화된 리포트는 삭제 대신 아카이브
|
|
volumes/vol-01/reports/archive/
|
|
├── polish-batch-05-20260121-INVALID.md
|
|
└── validation-batch-02-20260120-INVALID.md
|
|
|
|
# 현재 유효한 리포트만 루트에
|
|
volumes/vol-01/
|
|
├── polish-batch-05.md # 최신 유효 리포트
|
|
└── validation-batch-02.md
|
|
```
|
|
|
|
---
|
|
|
|
## 🚨 Claude가 해야 할 것
|
|
|
|
### 리포트 읽기 전
|
|
|
|
```markdown
|
|
1. 리포트 파일 존재 확인
|
|
2. 리포트 작성 날짜 확인
|
|
3. 대상 파일 수정 시간 확인 (ls -l 또는 stat)
|
|
4. 유효성 판정:
|
|
- 유효: 리포트 사용 → 사용자에게 보고
|
|
- 무효: 리포트 무시 → "재검증 필요" 보고
|
|
```
|
|
|
|
### 사용자에게 보고
|
|
|
|
**✅ 리포트 유효 시:**
|
|
```
|
|
polish-batch-05.md 확인 결과:
|
|
- 작성일: 2026-01-21
|
|
- 파일 수정: 2026-01-20 (리포트 이전)
|
|
- 상태: ✅ 유효
|
|
|
|
배치 5 (ch-041~050): 이미 완료
|
|
- 수정: 0건
|
|
- 다음 배치로 진행할까요?
|
|
```
|
|
|
|
**❌ 리포트 무효 시:**
|
|
```
|
|
polish-batch-05.md 확인 결과:
|
|
- 작성일: 2026-01-21
|
|
- 파일 수정: 2026-01-24 (리포트 이후!) ❌
|
|
- 상태: 무효
|
|
|
|
이유: ch-028, ch-029, ch-030 재배치로 인한 파일 수정
|
|
|
|
배치 5를 재검증하겠습니다.
|
|
```
|
|
|
|
---
|
|
|
|
## 🔧 구현 가이드
|
|
|
|
### Bash 명령어
|
|
|
|
```bash
|
|
# 리포트 날짜 추출
|
|
REPORT_DATE=$(grep -oP '(?<=완료:\s)\d{4}-\d{2}-\d{2}' polish-batch-05.md)
|
|
|
|
# 대상 파일 최종 수정 시간 확인 (Unix timestamp)
|
|
LATEST_MOD=$(stat -c %Y chapters/ch-04*.md | sort -n | tail -1)
|
|
|
|
# 리포트 날짜를 Unix timestamp로 변환
|
|
REPORT_TS=$(date -d "$REPORT_DATE" +%s)
|
|
|
|
# 비교
|
|
if [ $LATEST_MOD -gt $REPORT_TS ]; then
|
|
echo "❌ 리포트 무효 (파일이 리포트 이후 수정됨)"
|
|
else
|
|
echo "✅ 리포트 유효"
|
|
fi
|
|
```
|
|
|
|
---
|
|
|
|
## 📊 프로세스 통합
|
|
|
|
### VERIFICATION 모드 진입 시
|
|
|
|
```
|
|
1. WORK-MODE.txt 확인
|
|
2. BATCH 확인 → validation-batch-XX.md 찾기
|
|
3. 리포트 유효성 검증 ← NEW!
|
|
- 유효: 리포트 읽고 계속
|
|
- 무효: 리포트 삭제, 재검증
|
|
4. 검증 진행
|
|
```
|
|
|
|
### POLISH 모드 진입 시
|
|
|
|
```
|
|
1. WORK-MODE.txt 확인
|
|
2. BATCH 확인 → polish-batch-XX.md 찾기
|
|
3. 리포트 유효성 검증 ← NEW!
|
|
- 유효: 리포트 읽고 다음 배치로
|
|
- 무효: 리포트 삭제, 재검증
|
|
4. POLISH 진행
|
|
```
|
|
|
|
---
|
|
|
|
## ✅ 체크리스트 (Claude용)
|
|
|
|
**모든 리포트 읽기 전 필수:**
|
|
|
|
- [ ] 리포트 파일 존재 확인
|
|
- [ ] 리포트 작성 날짜 추출
|
|
- [ ] 대상 파일들 목록 확인
|
|
- [ ] 각 파일의 최종 수정 시간 확인
|
|
- [ ] 리포트 날짜와 파일 수정 시간 비교
|
|
- [ ] 하나라도 리포트 이후 수정됨? → 무효
|
|
- [ ] 무효 시: 사용자에게 명확히 보고
|
|
- [ ] 유효 시: 리포트 내용 사용
|
|
|
|
---
|
|
|
|
## 🔗 관련 문서
|
|
|
|
**작성 단계:**
|
|
- `verification-mode.md` - 검증 모드 프로토콜
|
|
- `polish-mode.md` - POLISH 모드 프로토콜
|
|
- `fix-mode.md` - FIX 모드 프로토콜
|
|
|
|
**설계 단계 (Design Phase):**
|
|
- `plot-master-verification.md` - Phase 4-1 검증
|
|
- `volume-timeline-verification.md` - Phase 4-2선행 검증 (타임라인)
|
|
- `volume-characters-verification.md` - Phase 4-2선행 검증 (캐릭터)
|
|
- `volume-plot-verification.md` - Phase 4-2 검증
|
|
- `plot-detail-verification.md` - Phase 4-3 검증
|
|
- `design-verification-mode.md` - Phase 5 검증
|
|
|
|
> **설계 단계 적용:** 설계 검증 보고서에도 동일한 유효성 규칙이 적용됩니다.
|
|
> 검증 보고서 작성 후 대상 파일(plot, timeline, characters 등)이 수정되면
|
|
> 해당 검증 보고서는 무효화됩니다.
|
|
|
|
---
|
|
|
|
*리포트는 시점의 스냅샷! 파일 수정 후엔 재검증 필수!*
|