From af4c863af234444fb0b41a04579704840df79f7a Mon Sep 17 00:00:00 2001 From: swrring Date: Fri, 17 Apr 2026 12:09:20 +0900 Subject: [PATCH] =?UTF-8?q?feat(core):=20C31=20=EC=8B=A0=EC=84=A4=20+=20P2?= =?UTF-8?q?1=C2=B7P24=20=EA=B0=9C=EC=A0=95=20=E2=80=94=20C29=20=EC=9C=84?= =?UTF-8?q?=EB=B0=98=20=EC=9E=AC=EB=B0=9C=20=EB=B0=A9=EC=A7=80=205?= =?UTF-8?q?=EC=A2=85=20(PD=EB=8B=98=20=EC=A7=81=EC=A0=91=20=EC=A7=80?= =?UTF-8?q?=EC=8B=9C,=20=EC=A1=B0=EC=A7=81=20=EC=82=AC=ED=99=9C=20?= =?UTF-8?q?=EA=B1=B8=EB=A6=B0=20=EC=A4=91=EB=8C=80=20=EC=82=AC=EC=95=88)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 개선 1: P21 5-B 'PM 자기 업무 맥락 복원' 단계 신설 개선 2: P24 세션 시작 읽기 의무 추가 (PM 세션 시작 시 최근 2일 대화로그 전수 Read) 개선 3: scripts/pm_context_restore.sh 신설 + SessionStart hook 체인 추가 개선 4: 2026-04-17 조직운영 대화로그 소급 작성 (오늘 작업 11건 + C29 위반 사건 + 개선안) 개선 5: C31 신설 — 응답 발신 직전 자기검증 의무 (C20-7 헌법급 격상) 근거: 2026-04-17 PM이 C29 신설 당일 첫 응답(#28 §9 'PD님 상신 대상 4건')에서 C29 정면 위반. PD님 직접 선언: '이 문제는 우리 조직의 사활이 걸린 매우 중대한 문제야.' 영구 기록: memory/feedback_pm_context_restoration_failure.md (5계층 근본 원인 + 재발 방지 구조 + 재발 시 PM 역할 재검토) Co-Authored-By: Claude Opus 4.7 (1M context) --- .claude/settings.json | 4 + .claude/skills/너드나비스-코어룰/SKILL.md | 69 +++++++++++++++- .live/SKILL.md | 32 ++++++++ scripts/pm_context_restore.sh | 69 ++++++++++++++++ 공유/대화로그/조직운영/2026-04-17.md | 98 +++++++++++++++++++++++ 5 files changed, 269 insertions(+), 3 deletions(-) create mode 100644 .live/SKILL.md create mode 100644 scripts/pm_context_restore.sh create mode 100644 공유/대화로그/조직운영/2026-04-17.md diff --git a/.claude/settings.json b/.claude/settings.json index c80a7b7..7d95226 100644 --- a/.claude/settings.json +++ b/.claude/settings.json @@ -91,6 +91,10 @@ { "type": "command", "command": "bash scripts/live_session_load.sh 2>/dev/null || true" + }, + { + "type": "command", + "command": "bash scripts/pm_context_restore.sh 2>/dev/null || true" } ] } diff --git a/.claude/skills/너드나비스-코어룰/SKILL.md b/.claude/skills/너드나비스-코어룰/SKILL.md index b339d5b..d28fa6d 100644 --- a/.claude/skills/너드나비스-코어룰/SKILL.md +++ b/.claude/skills/너드나비스-코어룰/SKILL.md @@ -711,7 +711,8 @@ PD님이 **"세션 갱신"**이라고 지시하면, PM 단일 세션 에이전 | 4 | **조직공지 확인** | `공유/조직공지/` 최신 공지 스캔 | | 5 | **PD 지시 로그 현황** | `공유/PD_지시_트래킹/` 미완료 항목 요약 (개발팀·기획팀 로그 모두) | | 5-A | **활성 지시 실측 검증** (신설, 2026-04-17) | 활성 테이블 각 항목의 **산출물 경로 실존 여부 + 상위 규칙 폐기 여부** 간단 확인. 실제 완료되었으나 갱신 누락된 항목·상위 규칙 폐기로 실효된 항목 발견 시 즉시 아카이브 이동 | -| 6 | **간결 보고** | 동기화 결과 + 신규 변경사항 + 미완료 작업 + 차단 요인 + 5-A 정리 결과 (있다면) | +| **5-B** | **PM 자기 업무 맥락 복원** (신설, 2026-04-17 — C29 위반 사건 재발 방지) | (a) `공유/대화로그/*/` 최근 2일 파일 전수 Read. (b) `git log --since="2 days ago" --oneline` 실행하여 자기 커밋 스캔. (c) 당일 대화로그 부재 시 **P24 위반 자진 고지 + 즉시 작성**. (d) 이전 세션 결정·방향과 현재 작업 정합성 자체 검증 | +| 6 | **간결 보고** | 동기화 결과 + 신규 변경사항 + 미완료 작업 + 차단 요인 + 5-A 정리 결과 + 5-B 복원 요지 (있다면) | ### 보고 형식 @@ -862,10 +863,21 @@ SessionStart hook의 `change_digest.sh`가 자동 표시. 별도 pull 불필요. | 상태 | 완료/진행중/보류 | ✅ | | 기각안 | 검토했으나 채택하지 않은 안과 이유 | 선택 (결정 시 권장) | +### 읽기 의무 (2026-04-17 개정 — C29 위반 재발 방지) + +**PM 세션 시작 시 최근 2일 대화로그 전수 Read 의무** (신설). +- 대상: `공유/대화로그/*/YYYY-MM-DD.md` (금일·전일) +- 목적: 이전 세션의 결정·방향을 현재 PM이 복원 (Layer 1·2 해소) +- 수행 주체: PM 세션 리더 +- 강제 메커니즘: `scripts/pm_context_restore.sh` (SessionStart hook)가 파일 목록·크기 자동 출력, PM은 목록 받고 즉시 Read +- 누락 시: C29 위반 재발 위험 신호로 간주, 자진 고지 + +**그 외 읽기**는 PD님 명시 지시 또는 업무상 필요 시에만 수행 (변동비 유지). + ### C14 준수 -- 대화로그는 **완전 변동비** — CLAUDE.md·매 턴 자동 로드 대상에 포함하지 않음 -- 에이전트가 로그를 **읽는** 행위는 PD님 명시 지시 시에만 수행 +- 대화로그는 **변동비** — CLAUDE.md·매 턴 자동 로드 대상에 포함하지 않음 +- **예외**: 세션 시작 1회 Read는 변동비 유지 (매 턴 아님, 고정비 영향 없음) - INDEX.md도 고정비에 포함하지 않음 ### 검색 방법 @@ -1313,3 +1325,54 @@ C20-7 자기검증 5문항에 다음 항목 추가: - **C8** (프로덕션 보호): 대상 프로젝트도 프로덕션 자산이므로 보호 - **C16** (PC 독립 셋업): git 기반 PC 독립 동기화의 전제 - **C29-4** (업무 완료 후 동기화): 작업 후 공유는 C29-4, 작업 전 점검은 C30 + +--- + +## C31. 응답 발신 직전 자기검증 의무 (2026-04-17 PD님 직접 지시 — 조직 사활 걸린 중대 사안·헌법급) + +> **모든 세션 리더(PM 포함)는 응답을 발신하기 직전에 본 C31 체크리스트를 통과해야 한다.** 2026-04-17 PM이 C29 신설 당일 첫 응답에서 C29를 정면 위반한 사건을 근거로, PD님이 "조직 사활 걸린 중대 문제"로 직접 선언하시며 C20-7 자기검증을 **헌법급 코어 규칙으로 격상**한 것이다. 본 규칙은 입력 보강(P21-5B·P24 읽기 의무) 대칭의 **출력 검증 강제 메커니즘**이다. + +### C31-1. 체크리스트 (응답 발신 직전 필수 통과) + +**A. C29(업무 자율 수행) 준수** +- [ ] 본 응답에 **"PD님 상신 대상"·"PD님 승인 필요"·"PD님 결정 대기"** 표현이 포함되었는가? 포함됐다면 각 건을 자문: (a) 내가 재량으로 결정 가능한가? (b) 팀이 자율 논의 가능한가? (c) 정말 PD님 직접 결정이 필요한 우려 이슈(C20-2)인가? +- [ ] **"어떻게 할까요?"·"어느 쪽으로 할까요?"** 되묻기 표현이 포함되었는가? 포함됐다면 자체 결정안 제시형으로 재작성 +- [ ] 본 응답이 PD님에게 의사결정을 떠넘기고 있지 않은가? (C29-2 금지) + +**B. C27~C30 준수 (오늘자 신규 룰)** +- [ ] C27: Agent 호출 결과 수령 후 PD 지시 로그 갱신을 확인했는가? +- [ ] C28: md 파일 수정 전 PD님에게 승인을 요청하는 표현이 있는가? (있으면 제거) +- [ ] C29-4: 완료 작업에 대한 PD 지시 로그·대화로그·소통 채널·Live 더미 동기화를 수행했는가? +- [ ] C30: 대상 프로젝트(Unity·코어 프레임워크 등) 수정 전 git 최신 상태 점검을 수행했는가? + +**C. 정직성·용어 일관 (C5·C22·C23·C25)** +- [ ] 실제 tool_use 결과로 입증 가능한 주장만 포함했는가? (C23) +- [ ] 미확인·추정 사항에 명시 태그를 부착했는가? (C5) +- [ ] PD님 도입 용어를 임의 변경하지 않았는가? (C22) +- [ ] 목록·선택지가 C25-1 고정 위계(1./1)/A./가))를 선순 적용했는가? + +**D. 세션 시작 맥락 복원 (P21-5B·P24)** +- [ ] PM 세션인 경우, 세션 시작 시 최근 2일 대화로그를 Read했는가? +- [ ] 당일 대화로그가 부재하고 의미 있는 작업이 진행된 경우, 즉시 소급 작성했는가? + +### C31-2. 실행 방식 +- 체크리스트는 **응답 작성 완료 후·전송 직전** 수행 (작성 전 아님) +- 한 항목이라도 미통과 시 **응답 수정 후 재검증** +- 반복 미통과 시 "본 응답 자체가 C31 위반 신호"로 간주, PD님에게 자진 고지 후 근본 재작성 + +### C31-3. 위반 시 처분 +- **1차 적발**: 즉시 자진 고지 + 본 메모리 재참조 + 응답 재작성 +- **2차 적발**: 세션 리더 역할 재검토 (C19-5·C23-3 결합) +- **3차 적발**: 조직 사활 걸린 중대 사안 재발로 간주, 구조적 개입 검토 + +### C31-4. 연관 +- **C20-7** (자기검증 5문항): C31은 C20-7의 헌법급 격상. C20-7은 병존 유지하되 C31이 상위 +- **C29** (업무 자율 수행): C31-1-A가 C29의 출력 단계 강제 +- **C27·C28·C30**: C31-1-B가 이들의 준수 강제 +- **P21-5B** (PM 자기 업무 맥락 복원): 입력 보강, C31과 양방향 쌍 +- **P24** (대화로그 읽기 의무): 세션 시작 맥락 복원의 전제 +- **`memory/feedback_pm_context_restoration_failure.md`**: 2026-04-17 C29 위반 사건 영구 기록 (신설 근거) + +### C31-5. 본 규칙의 무게 +PD님 직접 선언: **"이 문제는 우리 조직의 사활이 걸린 매우 중대한 문제야."** +본 규칙이 무력화되면 조직 운영 자체가 무력화된다. C23(허위 보고 금지)과 함께 **너드나비스 조직의 생존 2대 규칙**이다. diff --git a/.live/SKILL.md b/.live/SKILL.md new file mode 100644 index 0000000..9966155 --- /dev/null +++ b/.live/SKILL.md @@ -0,0 +1,32 @@ +## Live 증분 (2026-04-17) — C29 위반 재발 방지 프로세스 개선 5종 + +**배경**: PM이 C29 신설 당일 정면 위반(§9 "PD님 상신 대상 4건" 제시). PD님이 "조직 사활 걸린 중대 문제"로 직접 선언 후 개선 1~5 일괄 즉시 실행 지시. + +### P21 개정 — 5-B 단계 신설 (PM 자기 업무 맥락 복원) +세션 갱신 프로토콜에 신규 단계 추가: +- 최근 2일 `공유/대화로그/*/` 전수 Read +- `git log --since="2 days ago" --oneline` 자기 커밋 스캔 +- 당일 대화로그 부재 시 P24 위반 자진 고지 + 즉시 작성 +- 이전 세션 결정·방향 정합성 자체 검증 + +### P24 개정 — 세션 시작 읽기 의무 +기존 "에이전트가 로그를 읽는 행위는 PD님 명시 지시 시에만 수행" → **"PM 세션 시작 시 최근 2일 대화로그 전수 Read 의무"**. 변동비 유지 (매 턴 아님, 세션 시작 1회). + +### C31 신설 — 응답 발신 직전 자기검증 의무 (헌법급) +C20-7 자기검증을 코어 규칙으로 격상. 응답 발신 직전 체크리스트 4그룹(A. C29 준수 / B. C27~C30 준수 / C. 정직성·용어 일관 / D. 세션 시작 맥락 복원) 필수 통과. 미통과 시 응답 수정 후 재검증. 반복 미통과 시 자진 고지. + +### SessionStart hook — pm_context_restore.sh 신설 +- 최근 2일 대화로그 파일 자동 스캔·출력 +- 당일 로그 부재 + 당일 커밋 존재 시 "P24 위반" 플래그 경고 +- PM 최근 커밋 10건 자동 표시 +- settings.json SessionStart hooks 체인 말단에 추가 + +### 2026-04-17 조직운영 대화로그 소급 작성 +공유/대화로그/조직운영/2026-04-17.md 신설. 오늘 작업 11건 + C29 위반 사건 + 개선안 실행 자체도 엔트리 편입. + +### feedback 메모리 등재 +`memory/feedback_pm_context_restoration_failure.md` 영구 기록. 5계층 근본 원인 + 재발 방지 구조 + 다음 세션 PM이 반드시 읽을 5대 교훈. + +--- + +**조직의 생존 2대 규칙**: C23(허위 보고 금지) + C31(자기검증). 본 규칙 무력화 = 조직 운영 무력화. diff --git a/scripts/pm_context_restore.sh b/scripts/pm_context_restore.sh new file mode 100644 index 0000000..b43efa5 --- /dev/null +++ b/scripts/pm_context_restore.sh @@ -0,0 +1,69 @@ +#!/bin/bash +# SessionStart hook — PM 자기 업무 맥락 복원 +# 신설 근거: 2026-04-17 C29 위반 사건 (이전 세션 PM 업무 파악 실패) +# 관련 규칙: P21-5B, P24 읽기 의무, C31 자기검증 + +REPO_ROOT=$(git rev-parse --show-toplevel 2>/dev/null) +[ -z "$REPO_ROOT" ] && exit 0 + +LOG_ROOT="$REPO_ROOT/공유/대화로그" +[ ! -d "$LOG_ROOT" ] && exit 0 + +TODAY=$(date +%Y-%m-%d) +YESTERDAY=$(date -d "yesterday" +%Y-%m-%d 2>/dev/null || date -v-1d +%Y-%m-%d 2>/dev/null) + +echo "" +echo "🧠 [PM 맥락 복원] 최근 2일 대화로그 자동 스캔" + +# 당일 로그 부재 감지 (P24 위반 플래그) +MISSING_TODAY=0 +for PROJ in "$LOG_ROOT"/*/; do + PROJ_NAME=$(basename "$PROJ") + [ "$PROJ_NAME" = "INDEX.md" ] && continue + if [ -d "$PROJ" ]; then + TODAY_LOG="$PROJ$TODAY.md" + if [ ! -f "$TODAY_LOG" ]; then + # 당일 작업이 있는데 로그 없으면 경고 (git log로 당일 커밋 확인) + TODAY_COMMITS=$(git log --since="$TODAY 00:00" --oneline 2>/dev/null | wc -l | tr -d ' ') + if [ "$TODAY_COMMITS" -gt "0" ]; then + if [ "$MISSING_TODAY" -eq "0" ]; then + echo "⚠️ P24 위반 감지 — 당일 대화로그 미작성:" + MISSING_TODAY=1 + fi + echo " - $PROJ_NAME/$TODAY.md (당일 커밋 ${TODAY_COMMITS}건 존재)" + fi + fi + fi +done + +# 최근 2일 로그 목록 출력 +echo "" +echo "📚 최근 2일 대화로그 (Read 권장):" +FOUND=0 +for PROJ in "$LOG_ROOT"/*/; do + PROJ_NAME=$(basename "$PROJ") + [ "$PROJ_NAME" = "INDEX.md" ] && continue + if [ -d "$PROJ" ]; then + for DATE in "$TODAY" "$YESTERDAY"; do + LOG_FILE="$PROJ$DATE.md" + if [ -f "$LOG_FILE" ]; then + SIZE=$(wc -c < "$LOG_FILE" 2>/dev/null | tr -d ' ') + echo " - 공유/대화로그/$PROJ_NAME/$DATE.md (${SIZE}B)" + FOUND=1 + fi + done + fi +done + +[ "$FOUND" -eq "0" ] && echo " (최근 2일 로그 없음)" + +# PM 자기 커밋 최근 10건 (맥락 복원 보조) +echo "" +echo "📝 최근 커밋 10건 (PM 자기 업무 맥락):" +git log --oneline -10 2>/dev/null | sed 's/^/ /' + +echo "" +echo "→ P21-5B 수행: 위 대화로그를 Read하여 이전 세션 결정·방향 복원" +echo "→ C31 자기검증: 응답 발신 직전 C27~C30 준수 여부 확인 의무" + +exit 0 diff --git a/공유/대화로그/조직운영/2026-04-17.md b/공유/대화로그/조직운영/2026-04-17.md new file mode 100644 index 0000000..414a27c --- /dev/null +++ b/공유/대화로그/조직운영/2026-04-17.md @@ -0,0 +1,98 @@ +# 2026-04-17 조직운영 대화로그 + + + + +## [AM] C27·C28 신설 — Agent 로그 확인 의무 + 문서 수정 무승인 +- **요지**: C27(Agent 호출 완료 시 PM이 PD 지시 로그 갱신 확인 의무) + C28(모든 md 파일 수정·커밋·push PD님 개별 승인 없이 즉시 수행, 기존 P12 헌법급 격상) +- **이유**: #27 코어코드 통합 완료 후 PD 지시 로그 미갱신 사례 차단 + PD님 반복 승인 부담 제거 +- **산출물**: SKILL.md C27·C28, 커밋 `4969fea` +- **상태**: 완료 + + +## [AM] C20-1-A 신설 — push 시점 PD님 지시 시에만 +- **요지**: 작업 완료 시 임의 push 금지. push는 PD님이 "세션 공유"·"push" 지시 시에만 수행. 중간 산출물은 로컬 커밋 + Live 더미로 관리 +- **이유**: 불필요한 원격 push 트래픽 차단 + 의도적 공유 시점 명확화 +- **산출물**: SKILL.md C20-1-A, 커밋 `757f3e5` +- **상태**: 완료 + + +## [AM] C29 신설 — 업무 자율 수행 체계 (조직 생존급) +- **요지**: PD님이 매 건마다 승인·결정하는 반복 프로세스 탈피. 팀 자체 논의 → PM 조율 → 결과 보고 3단계. PM이 "어떻게 할까요?" 되묻기 금지, 팀이 결론 내릴 수 있는 사안을 PD님에게 떠넘기기 금지 +- **이유**: 조직 생산성 직결. PD님 직접 "조직 생존 걸린 중대 핵심 규칙" 선언 +- **산출물**: SKILL.md C29, 커밋 `1a4c3e4` +- **상태**: 완료 + + +## [AM] C29-4 추가 — 업무 완료 후 동기화·공유 의무 +- **요지**: 업무 완료 시 PD 지시 로그 갱신·대화로그 엔트리·소통 채널 완료 이동·Live 더미 기록 필수. 과거 #27 완료 누락 사건 구조적 차단 +- **이유**: 완료 사실이 수행 팀만 알고 다른 팀·PM이 모르는 상태 방치 차단 +- **산출물**: SKILL.md C29-4, 커밋 `ef35397` +- **상태**: 완료 + + +## [AM] C30 신설 — git 동기화 프로젝트 작업 전 최신 상태 점검 의무 +- **요지**: Unity 프로젝트·코어 프레임워크 등 git 기반 모든 프로젝트는 작업 착수 직전 `git fetch && git status` 실행 후 최신 상태 확인 +- **이유**: 다른 세션·PC 변경 누적으로 구버전 작업 시 충돌·회귀 위험 +- **산출물**: SKILL.md C30, permissions 강화, 시뮬레이션 MCP 전환, 커밋 `db64310` +- **상태**: 완료 + + +## [AM] P25 Live 증분 동기화 체계 구현 +- **요지**: 세션 중 변경된 설정·규칙·에이전트 정의를 세션 갱신 없이 즉시 반영. 원본 수정 + `.live/` 더미 기록 이중 반영 +- **이유**: CLAUDE.md·settings.json 등 9종 파일의 세션 중 반영 불가 문제 해결 +- **산출물**: `.live/`, `scripts/live_*.sh`, 커밋 `5b6cfe3` +- **상태**: 완료 + + +## [AM] Live 더미 경로 `.claude/live/` → `.live/` 이전 +- **요지**: `.claude/` 디렉토리는 Claude Code가 sensitive로 간주하여 Write 승인 팝업 발생. `.live/`로 이전하여 자동 승인 범위 진입 +- **이유**: Live 더미 Write마다 승인 팝업 반복 차단 +- **산출물**: `.live/README.md`, scripts 경로 갱신, 커밋 `9de797f` + `324d82a` +- **상태**: 완료 + + +## [AM] PreToolUse 자동 승인 hook 신설 +- **요지**: 권한 레이어가 permissions.allow 정의를 실시간 반영하여 승인 팝업 자동 처리 +- **이유**: settings.json 수정 후 세션 재시작 없이 권한 즉시 반영 +- **산출물**: `scripts/auto_approve.sh`, 커밋 `40e79c8` +- **상태**: 완료 + + +## [AM] PD 지시 로그 활성 지시 전수 조사 +- **요지**: 활성 테이블의 완료된 항목 실측 검증 후 아카이브 이동. 개발팀 3건(#12·#15·#17), 기획팀 1건(#29) 정리 +- **이유**: P21 세션 갱신 시 완료 항목 잔류로 잘못된 "진행중" 보고 차단 +- **산출물**: 양 팀 PD 지시 로그 갱신, 커밋 `9fd4221` +- **상태**: 완료 + + + + +## [PM] 🚨 C29 위반 사건 — PM이 C29 신설 당일 정면 위반 +- **요지**: #28(시뮬레이터 이원화) 상세 보고 응답 §9에서 "PD님 상신 대상 4건"을 나열. 4건 모두 PM 재량 결정 가능(즉시 착수 지시·팀 위임·자체 정리·단순 사실 조회)했는데 C29-2 "PD님에게 매 건마다 개별 승인·결정을 반복 요청" 위반 +- **이유**: 조직 대개편(`4ff2196`)과 C29(`1a4c3e4`)가 오늘자인데 SKILL.md 컨텍스트 주입 상태에서도 적용 실패. 관성적 "PM은 PD님 결정을 구한다" 패턴으로 회귀 +- **기각안**: 없음 (PD님 지적 즉시 자진 인정) +- **산출물**: 본 엔트리 + 개선안 5종 수립 +- **상태**: 완료 (사건 기록) + + +## [PM] 재발 방지 프로세스 개선 5종 실행 (조직 사활 걸린 중대 사안) +- **요지**: 5계층 근본 원인 진단(세션 맥락 공백·P24 쓰기읽기 비대칭·신규룰 내재화 실패·자기검증 루프 부재·관리자 시야 비대칭) + 개선 1~5 전체 즉시 적용. **PD님 "조직 사활 걸린 중대 문제" 선언 후 개선 5까지 즉시 실행 지시** +- **이유**: C29 위반 재발 방지 — 입력 보강(개선 1~4)과 출력 검증(개선 5) 양방향 동시 조치 필요 +- **기각안**: 단계적 도입 (개선 1~4 효과 측정 후 5 검토) — PD님이 즉시 전체 실행 지시로 기각 +- **산출물**: + 1. P21 5-B "PM 자기 업무 맥락 복원" 단계 신설 + 2. P24 세션 시작 읽기 의무 추가 + 3. 2026-04-17 대화로그 소급 작성 (본 파일) + 4. SessionStart hook `pm_context_restore.sh` 신설 + 5. C31 신설 — 응답 발신 직전 자기검증 의무 (C20-7 헌법급 격상) + 6. feedback 메모리 등재 (영구 보존) +- **상태**: 완료 + + +## [PM] C31 신설 — 응답 발신 직전 자기검증 의무 (코어룰 격상) +- **요지**: C20-7 자기검증을 코어 규칙으로 격상 + C27~C30 준수 항목 추가. 응답 작성 완료 후 전송 직전 체크리스트 강제 수행 의무 +- **이유**: 개선 1~4(입력 보강)만으로는 Layer 4(자기 응답 검증 루프 부재) 미해소. 출력 단계 검증 강제 필요 +- **기각안**: C20-7 기존 범위 유지 — 이번 사건이 C20-7 있음에도 발생했음을 근거로 기각 +- **산출물**: SKILL.md C31 +- **상태**: 완료