2026-04-17 06:12:36 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
# SessionEnd hook — 세션 종료 시 기록 누락 최종 감사
|
|
|
|
|
# 신설 근거: 2026-04-17 클라이언트팀 B-2-2 설계 + pm-auditor 메타 감사 A-3
|
|
|
|
|
# 관련 규칙: C29-4 업무 완료 후 동기화, P26 PM 업무 정확도 보장
|
|
|
|
|
|
|
|
|
|
REPO_ROOT=$(git rev-parse --show-toplevel 2>/dev/null)
|
|
|
|
|
[ -z "$REPO_ROOT" ] && exit 0
|
|
|
|
|
|
|
|
|
|
TODAY=$(date +%Y-%m-%d)
|
|
|
|
|
ISSUES=""
|
|
|
|
|
|
|
|
|
|
# 1. 당일 커밋 존재 vs 당일 대화로그 존재 대조
|
2026-04-18 03:46:59 +00:00
|
|
|
# 2026-04-18 강화: 커밋 영향 프로젝트별 개별 점검 (PM 과도 보수 4회차 변종 재발 방지)
|
2026-04-17 06:12:36 +00:00
|
|
|
TODAY_COMMITS=$(git log --since="$TODAY 00:00" --oneline 2>/dev/null | wc -l | tr -d ' ')
|
|
|
|
|
|
|
|
|
|
if [ "$TODAY_COMMITS" -gt 0 ]; then
|
2026-04-18 03:46:59 +00:00
|
|
|
# 당일 커밋이 수정한 파일 영향 프로젝트 자동 판정
|
|
|
|
|
CHANGED_FILES=$(git log --since="$TODAY 00:00" --name-only --pretty="format:" 2>/dev/null | sort -u)
|
|
|
|
|
|
|
|
|
|
# 영역별 대화로그 필요 여부 판정
|
feat(BT·Phase2C): 수상한잡화점 삭제 + feedback 추상화 + 아카이브 재압축 + 조직 전환 완결
PD님 2026-04-21 결정 1~5 집행.
## 결정 1·P17 완전 폐기
- SKILL.md P17 섹션 완전 삭제
- 폐기_규칙_아카이브.md에 6필드 기록
- CLAUDE.md 요약 P17 1줄 제거
## 결정 2·P29 EerieVillage용 재작성
- P29-3 "현 프로젝트(수상한 잡화점) 활용 방침" → "EerieVillage 활용 방침" B안
- Tier 1 16종 중 플랫포머 유효 항목 선별 가이드
- 2D 플랫포머 특화 컴포넌트 Tier 2 신규 검토
## 결정 3·조직공지 필터링 (팀장급 논의)
- 개발팀장·기획팀장 Task 병렬 논의 수행
- 두 팀 모두 삭제 합의 10건 삭제 (OI-2·OI-5·Phase3 NAS·GIT v2 결재·초안·임시 안건·세션 이어받기·v1 체크리스트·bak 등)
- 규칙 진화사 공지 18건 + 폐기/방향전환 아카이브 + v2 체크리스트 보존
## 결정 4·feedback 단순 치환
- memory/org/ 6개 파일 "수상한잡화점" → "이전 프로젝트" sed
## 결정 5·분량 초과 4건 재압축
- 기획팀장: 12,359자 → 7,911자 (36% 감축)
- balance-designer: 5,500자 → 4,448자
- 개발팀장: 11,800자 → 6,978자 (41% 감축)
- 클라이언트팀장: 6,609자 → 6,077자
- 모두 목표 범위 달성
## 삭제 실측
- 프로젝트/수상한잡화점/ (41파일) · 신규 프로젝트/ · 02_수상한잡화점_추출대상_v1.md
- 공유/대화로그/수상한잡화점/ (4파일) · 소통/완료/ 35건 · 소통 허브 허브 파일들
- 공유/개발팀_자산/Unity_MCP_v1 · 서버_작업_참고자료 · 개발팀_백업 · 일일보고 · 인계서
- PD 지시 로그 완료 아카이브 97건 (개발 57 + 기획 40) 일괄 삭제
- 조직공지 10건 · 공통_업무_규칙_개정_제안 · 신PC_v1
- .gitignore 구 개발실/·기획실/ 경로 4줄 삭제
## 기타 정리
- CLAUDE.md 프로젝트 3종 → 2종 (BT.Framework + EerieVillage)
- agents·scripts 수상한잡화점 경로 참조 → EerieVillage 교체
- feedback_agent_path_boundary.md content-designer 2회차 위반 append
- INDEX.md BT 기준 재작성
## 변경 규모
184 files, 671 insertions, 31786 deletions.
## NerdNavis 의도적 잔존 (C5 정직성)
- GIT_REMOTE URL (paths.local.json·paths.local.json.template)
- UNITY_PROJECT_ROOT 실값 E:/NerdNavis/EerieVillage
- 역사 표기 (EerieVillage README, 시행착오 아카이브, 대화로그)
## 태그
- phase-2a-complete @ 5d5b1dd
- phase-2b-complete @ 44f7fb1
- phase-2c-complete @ (본 commit)
## 보류 (Phase 3 이관)
EerieVillage 착수 안건 7종 — 서버·Framework Tier 2·Unity MCP v2·세계관 SOT·2D 플랫포머 UX·Prove-2-of-3 이식성·어뷰징 경계값 재평가 (PD 결정 6)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 16:55:52 +00:00
|
|
|
NEEDS_SUSANG=0 # EerieVillage
|
2026-04-18 03:46:59 +00:00
|
|
|
NEEDS_CORE=0 # 코어프레임워크
|
|
|
|
|
NEEDS_ORG=1 # 조직운영 (항상 필요 — 커밋 자체가 조직 활동)
|
|
|
|
|
|
feat(BT·Phase2C): 수상한잡화점 삭제 + feedback 추상화 + 아카이브 재압축 + 조직 전환 완결
PD님 2026-04-21 결정 1~5 집행.
## 결정 1·P17 완전 폐기
- SKILL.md P17 섹션 완전 삭제
- 폐기_규칙_아카이브.md에 6필드 기록
- CLAUDE.md 요약 P17 1줄 제거
## 결정 2·P29 EerieVillage용 재작성
- P29-3 "현 프로젝트(수상한 잡화점) 활용 방침" → "EerieVillage 활용 방침" B안
- Tier 1 16종 중 플랫포머 유효 항목 선별 가이드
- 2D 플랫포머 특화 컴포넌트 Tier 2 신규 검토
## 결정 3·조직공지 필터링 (팀장급 논의)
- 개발팀장·기획팀장 Task 병렬 논의 수행
- 두 팀 모두 삭제 합의 10건 삭제 (OI-2·OI-5·Phase3 NAS·GIT v2 결재·초안·임시 안건·세션 이어받기·v1 체크리스트·bak 등)
- 규칙 진화사 공지 18건 + 폐기/방향전환 아카이브 + v2 체크리스트 보존
## 결정 4·feedback 단순 치환
- memory/org/ 6개 파일 "수상한잡화점" → "이전 프로젝트" sed
## 결정 5·분량 초과 4건 재압축
- 기획팀장: 12,359자 → 7,911자 (36% 감축)
- balance-designer: 5,500자 → 4,448자
- 개발팀장: 11,800자 → 6,978자 (41% 감축)
- 클라이언트팀장: 6,609자 → 6,077자
- 모두 목표 범위 달성
## 삭제 실측
- 프로젝트/수상한잡화점/ (41파일) · 신규 프로젝트/ · 02_수상한잡화점_추출대상_v1.md
- 공유/대화로그/수상한잡화점/ (4파일) · 소통/완료/ 35건 · 소통 허브 허브 파일들
- 공유/개발팀_자산/Unity_MCP_v1 · 서버_작업_참고자료 · 개발팀_백업 · 일일보고 · 인계서
- PD 지시 로그 완료 아카이브 97건 (개발 57 + 기획 40) 일괄 삭제
- 조직공지 10건 · 공통_업무_규칙_개정_제안 · 신PC_v1
- .gitignore 구 개발실/·기획실/ 경로 4줄 삭제
## 기타 정리
- CLAUDE.md 프로젝트 3종 → 2종 (BT.Framework + EerieVillage)
- agents·scripts 수상한잡화점 경로 참조 → EerieVillage 교체
- feedback_agent_path_boundary.md content-designer 2회차 위반 append
- INDEX.md BT 기준 재작성
## 변경 규모
184 files, 671 insertions, 31786 deletions.
## NerdNavis 의도적 잔존 (C5 정직성)
- GIT_REMOTE URL (paths.local.json·paths.local.json.template)
- UNITY_PROJECT_ROOT 실값 E:/NerdNavis/EerieVillage
- 역사 표기 (EerieVillage README, 시행착오 아카이브, 대화로그)
## 태그
- phase-2a-complete @ 5d5b1dd
- phase-2b-complete @ 44f7fb1
- phase-2c-complete @ (본 commit)
## 보류 (Phase 3 이관)
EerieVillage 착수 안건 7종 — 서버·Framework Tier 2·Unity MCP v2·세계관 SOT·2D 플랫포머 UX·Prove-2-of-3 이식성·어뷰징 경계값 재평가 (PD 결정 6)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 16:55:52 +00:00
|
|
|
if echo "$CHANGED_FILES" | grep -q "^프로젝트/EerieVillage/"; then
|
2026-04-18 03:46:59 +00:00
|
|
|
NEEDS_SUSANG=1
|
|
|
|
|
fi
|
|
|
|
|
if echo "$CHANGED_FILES" | grep -qE "^프로젝트/코어프레임워크/|^코어코드/"; then
|
|
|
|
|
NEEDS_CORE=1
|
|
|
|
|
fi
|
|
|
|
|
# 조직 룰(SKILL.md·C·P) 변경도 코어프레임워크 차기 활용 영향
|
2026-04-20 15:14:51 +00:00
|
|
|
if echo "$CHANGED_FILES" | grep -qE "^\.claude/skills/BurningTimes-코어룰/|^공유/인계서/"; then
|
2026-04-18 03:46:59 +00:00
|
|
|
NEEDS_CORE=1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# 프로젝트별 대화로그 부재 개별 경고
|
|
|
|
|
if [ "$NEEDS_ORG" -eq 1 ] && [ ! -f "$REPO_ROOT/공유/대화로그/조직운영/$TODAY.md" ]; then
|
|
|
|
|
ISSUES="${ISSUES}- 당일 커밋 ${TODAY_COMMITS}건 존재하나 조직운영 대화로그 부재 (P24 필수)\n"
|
|
|
|
|
fi
|
feat(BT·Phase2C): 수상한잡화점 삭제 + feedback 추상화 + 아카이브 재압축 + 조직 전환 완결
PD님 2026-04-21 결정 1~5 집행.
## 결정 1·P17 완전 폐기
- SKILL.md P17 섹션 완전 삭제
- 폐기_규칙_아카이브.md에 6필드 기록
- CLAUDE.md 요약 P17 1줄 제거
## 결정 2·P29 EerieVillage용 재작성
- P29-3 "현 프로젝트(수상한 잡화점) 활용 방침" → "EerieVillage 활용 방침" B안
- Tier 1 16종 중 플랫포머 유효 항목 선별 가이드
- 2D 플랫포머 특화 컴포넌트 Tier 2 신규 검토
## 결정 3·조직공지 필터링 (팀장급 논의)
- 개발팀장·기획팀장 Task 병렬 논의 수행
- 두 팀 모두 삭제 합의 10건 삭제 (OI-2·OI-5·Phase3 NAS·GIT v2 결재·초안·임시 안건·세션 이어받기·v1 체크리스트·bak 등)
- 규칙 진화사 공지 18건 + 폐기/방향전환 아카이브 + v2 체크리스트 보존
## 결정 4·feedback 단순 치환
- memory/org/ 6개 파일 "수상한잡화점" → "이전 프로젝트" sed
## 결정 5·분량 초과 4건 재압축
- 기획팀장: 12,359자 → 7,911자 (36% 감축)
- balance-designer: 5,500자 → 4,448자
- 개발팀장: 11,800자 → 6,978자 (41% 감축)
- 클라이언트팀장: 6,609자 → 6,077자
- 모두 목표 범위 달성
## 삭제 실측
- 프로젝트/수상한잡화점/ (41파일) · 신규 프로젝트/ · 02_수상한잡화점_추출대상_v1.md
- 공유/대화로그/수상한잡화점/ (4파일) · 소통/완료/ 35건 · 소통 허브 허브 파일들
- 공유/개발팀_자산/Unity_MCP_v1 · 서버_작업_참고자료 · 개발팀_백업 · 일일보고 · 인계서
- PD 지시 로그 완료 아카이브 97건 (개발 57 + 기획 40) 일괄 삭제
- 조직공지 10건 · 공통_업무_규칙_개정_제안 · 신PC_v1
- .gitignore 구 개발실/·기획실/ 경로 4줄 삭제
## 기타 정리
- CLAUDE.md 프로젝트 3종 → 2종 (BT.Framework + EerieVillage)
- agents·scripts 수상한잡화점 경로 참조 → EerieVillage 교체
- feedback_agent_path_boundary.md content-designer 2회차 위반 append
- INDEX.md BT 기준 재작성
## 변경 규모
184 files, 671 insertions, 31786 deletions.
## NerdNavis 의도적 잔존 (C5 정직성)
- GIT_REMOTE URL (paths.local.json·paths.local.json.template)
- UNITY_PROJECT_ROOT 실값 E:/NerdNavis/EerieVillage
- 역사 표기 (EerieVillage README, 시행착오 아카이브, 대화로그)
## 태그
- phase-2a-complete @ 5d5b1dd
- phase-2b-complete @ 44f7fb1
- phase-2c-complete @ (본 commit)
## 보류 (Phase 3 이관)
EerieVillage 착수 안건 7종 — 서버·Framework Tier 2·Unity MCP v2·세계관 SOT·2D 플랫포머 UX·Prove-2-of-3 이식성·어뷰징 경계값 재평가 (PD 결정 6)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 16:55:52 +00:00
|
|
|
if [ "$NEEDS_SUSANG" -eq 1 ] && [ ! -f "$REPO_ROOT/공유/대화로그/EerieVillage/$TODAY.md" ]; then
|
|
|
|
|
ISSUES="${ISSUES}- EerieVillage 프로젝트 파일 수정 커밋 있으나 EerieVillage 대화로그 부재 (P24 기록 대상 기준: 커밋이 프로젝트/ 하위 수정 시 필수)\n"
|
2026-04-18 03:46:59 +00:00
|
|
|
fi
|
|
|
|
|
if [ "$NEEDS_CORE" -eq 1 ] && [ ! -f "$REPO_ROOT/공유/대화로그/코어프레임워크/$TODAY.md" ]; then
|
|
|
|
|
ISSUES="${ISSUES}- 코어프레임워크 프로젝트 파일 또는 조직 룰 수정 커밋 있으나 코어프레임워크 대화로그 부재 (차기 프로젝트 참고 자산 영향)\n"
|
2026-04-17 06:12:36 +00:00
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# 2. Live 더미 잔류 검증 (세션 공유 없이 세션 종료 시 경고)
|
|
|
|
|
LIVE_NON_EMPTY=$(find "$REPO_ROOT/.live" -type f -name "*.md" ! -name "README.md" -size +0 2>/dev/null | head -5)
|
|
|
|
|
if [ -n "$LIVE_NON_EMPTY" ]; then
|
|
|
|
|
ISSUES="${ISSUES}- .live/ 더미 파일 잔류: $(echo "$LIVE_NON_EMPTY" | wc -l | tr -d ' ')건. 세션 공유(P21-2) 또는 비우기 권고\n"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# 3. 미커밋 변경사항 잔류
|
|
|
|
|
UNCOMMITTED=$(cd "$REPO_ROOT" && git status --short 2>/dev/null | wc -l | tr -d ' ')
|
|
|
|
|
if [ "$UNCOMMITTED" -gt 0 ]; then
|
|
|
|
|
ISSUES="${ISSUES}- 미커밋 변경사항 ${UNCOMMITTED}건 잔류. 커밋 또는 stash 권고\n"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# 4. PD 지시 로그 경로 감사 실행
|
|
|
|
|
PATH_AUDIT=$(bash "$REPO_ROOT/scripts/verify_log_paths.sh" 2>&1)
|
|
|
|
|
if echo "$PATH_AUDIT" | grep -q "🚨"; then
|
|
|
|
|
ISSUES="${ISSUES}- PD 지시 로그 경로 부재 감지 (verify_log_paths.sh 결과)\n"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [ -n "$ISSUES" ]; then
|
|
|
|
|
echo ""
|
|
|
|
|
echo "🔍 [SessionEnd 감사] 기록 누락·동기화 미완료 감지:"
|
|
|
|
|
echo -e "$ISSUES"
|
|
|
|
|
echo "→ pm-auditor 모드 B (세션 말미 주기 감사) 호출 권고"
|
|
|
|
|
echo "→ 다음 세션 시작 시 자동 감지되나 본 세션에서 선제 처리 가능"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
exit 0
|