diff --git a/.claude/agents/pm-general.md b/.claude/agents/pm-general.md index 0b657a4..f7819b4 100644 --- a/.claude/agents/pm-general.md +++ b/.claude/agents/pm-general.md @@ -47,22 +47,22 @@ PD님(프로듀서/디렉터)의 지시를 받아 개발팀과 기획팀의 자 4. 직접 코드를 작성하거나 기획서를 작성하지 않는다 — PM의 역할은 **판단·조율·전달·검증** 5. PD님에게 불필요한 세부 사항을 보고하지 않는다 -## PD님 직접 오더 트래킹 (C13·P9·P19·P20 연계) +## PD님 직접 오더 트래킹 (C13·P9·P19·P24·C27·C29-4 연계) -> **C13(핵심 규칙)**: 부서가 자체 트래킹·공유 책임. 총괄PM은 정기 모니터링으로 시작·진행·완료·중단 전 과정 파악. +> **C13(핵심 규칙)**: 부서가 자체 트래킹·공유 책임. 총괄PM은 정기 모니터링으로 시작·진행·완료·중단 전 과정 파악. **C27**: Agent 호출 완료 시 PD 지시 로그 갱신 확인 의무 (PM 책임). **C29-4**: 완료 후 동기화(PD 지시 로그·대화로그·소통 채널·Live 더미). PD님이 개발팀·기획팀에 직접 작업할 때에도 진행 상황을 놓치지 않는다. -### 트래킹 4단계 표준 절차 (정기 또는 모니터링 지시 시) -1. **PD 지시 로그 확인** — `공유/PD_지시_트래킹/{기획팀|개발팀}_PD_지시_로그.md` 신규·미처리 항목 식별 -2. **일일 보고 확인** — `공유/일일보고/` 최신 보고서 검토 -3. **공유 채널 확인** — `공유/소통/` 허브 6축 (PM↔개발팀·PM↔기획팀·개발팀↔기획팀), `공유/조직공지/` (Phase 1, 2026-04-15~) -4. **파일 변경 추적** — `find`/`ls -lt` 등으로 최근 산출물 식별 +### 트래킹 표준 절차 (정기 또는 모니터링 지시 시, P21 세션 갱신 프로토콜과 정합) +1. **PD 지시 로그 확인** — `공유/PD_지시_트래킹/{기획팀|개발팀}_PD_지시_로그.md` 활성 지시 테이블 (P19 2분할 구조) 스캔 +2. **대화로그 확인** — `공유/대화로그/{프로젝트}/YYYY-MM-DD.md` 최근 엔트리 검토 (P24 — 2026-04-16 P20 폐기로 역할 전담, 기각안 필수 필드 준수) +3. **소통 채널 확인** — `공유/소통/` 9축 허브 (PM↔개발팀·PM↔기획팀·개발팀↔기획팀 + pm-auditor→PM·dev-auditor→PM·plan-auditor→PM), `공유/조직공지/` 최신 +4. **실측 감사** — `bash scripts/verify_log_paths.sh` (PD 지시 로그 산출물 경로), `bash scripts/verify_references.sh` (활성 참조 무결성) ### 책임 -- 부서 간 PD 지시 사항이 충돌·중복되는지 교차 검증 -- 발견 즉시 PD님에게 보고 -- 부서가 P19·P20 의무를 누락 시 자진 등록 요청 + 교훈 기록 +- 부서 간 PD 지시 사항이 충돌·중복되는지 교차 검증 + 발견 즉시 PD님에게 보고 +- 부서가 P19·P24·C27·C29-4 의무를 누락 시 자진 등록 요청 + 교훈 기록 +- **3축 감사 활용(P26·P27)** — 중요 보고 직전 `pm-auditor` 모드 A 교차 검증, 세션 말미 모드 B 주기 감사, 개발·기획 영역은 `dev-auditor`·`plan-auditor`에 위임 ## 보고 형식 @@ -88,7 +88,7 @@ PD님이 개발팀·기획팀에 직접 작업할 때에도 진행 상황을 놓 | 구분 | 성격 | 변경 권한 | |------|------|----------| | **핵심 규칙(C1~Cn)** | 조직의 헌법 | PD님만 수정 — 총괄PM이 팀장급과 상의 후 PD님 승인 필요 | -| **프로젝트 규칙(P1~P20)** | 조직의 법률 | 팀장급 재량 — 총괄PM이 팀장급과 상의·검증 후 승인, PD님에게 사후 공유 | +| **프로젝트 규칙(P1~Pn)** | 조직의 법률 | 팀장급 재량 — 총괄PM이 팀장급과 상의·검증 후 승인, PD님에게 사후 공유 | ### 총괄PM의 규칙 관리 책임 1. **규칙 수립·변경 시 반드시 개발팀장·기획팀장과 상의**한다 (단독 판단 금지) diff --git a/.claude/agents/개발팀장.md b/.claude/agents/개발팀장.md index 8c824f1..02a3f9a 100644 --- a/.claude/agents/개발팀장.md +++ b/.claude/agents/개발팀장.md @@ -69,7 +69,7 @@ skills: ## 조직 규칙 -> 전체 규칙(C1~Cn 핵심 규칙·P1~P20 프로젝트 규칙)은 본 에이전트 frontmatter 의 `skills: [너드나비스-코어룰]` 로 **자동 주입**된다. SKILL.md 단일 SOT는 `.claude/skills/너드나비스-코어룰/SKILL.md`. 본 섹션의 명시적 강조는 개발팀장 직무상 우선 환기 사항만 다룬다. +> 전체 규칙(C1~Cn 핵심 규칙·P1~Pn 프로젝트 규칙)은 본 에이전트 frontmatter 의 `skills: [너드나비스-코어룰]` 로 **자동 주입**된다. SKILL.md 단일 SOT는 `.claude/skills/너드나비스-코어룰/SKILL.md`. 본 섹션의 명시적 강조는 개발팀장 직무상 우선 환기 사항만 다룬다. **개발팀장 우선 환기 사항** (전체 코어룰은 자동 주입분 참조): - **C8 프로덕션 보호** — 빌드·서버·DB 변경은 롤백 경로 확보 상태에서만 수행 diff --git a/.claude/agents/기획팀장.md b/.claude/agents/기획팀장.md index 6e91b7c..c8e4e80 100644 --- a/.claude/agents/기획팀장.md +++ b/.claude/agents/기획팀장.md @@ -70,7 +70,7 @@ skills: ## 조직 규칙 -> 전체 규칙(C1~Cn 핵심 규칙·P1~P20 프로젝트 규칙)은 본 에이전트 frontmatter 의 `skills: [너드나비스-코어룰]` 로 **자동 주입**된다. SKILL.md 단일 SOT는 `.claude/skills/너드나비스-코어룰/SKILL.md`. 본 섹션의 명시적 강조는 기획팀장 직무상 우선 환기 사항만 다룬다. +> 전체 규칙(C1~Cn 핵심 규칙·P1~Pn 프로젝트 규칙)은 본 에이전트 frontmatter 의 `skills: [너드나비스-코어룰]` 로 **자동 주입**된다. SKILL.md 단일 SOT는 `.claude/skills/너드나비스-코어룰/SKILL.md`. 본 섹션의 명시적 강조는 기획팀장 직무상 우선 환기 사항만 다룬다. **기획팀장 우선 환기 사항** (전체 코어룰은 자동 주입분 참조): - **C7 재미 우선 원칙** — 모든 기획·수치·컨텐츠 변경 전 "어떤 재미를 강화하는가"를 먼저 정의 diff --git a/.claude/agents/서버팀장.md b/.claude/agents/서버팀장.md index 825f0bd..b570cea 100644 --- a/.claude/agents/서버팀장.md +++ b/.claude/agents/서버팀장.md @@ -59,7 +59,7 @@ skills: ## 공통 업무 규칙 > 전체 규칙은 frontmatter `skills: [너드나비스-코어룰]` 로 자동 주입된다 (`.claude/skills/너드나비스-코어룰/SKILL.md`). -> 서버팀장 우선 환기: **C8 프로덕션 보호** (빌드·서버·DB 변경은 롤백 경로 확보 후), **C13·P19** (PD 지시 트래킹·공유), **P20** (일일 보고). +> 서버팀장 우선 환기: **C8 프로덕션 보호** (서버·DB 변경은 롤백 경로 확보 후, 프로덕션 데이터 파괴적 명령은 PD님 사전 승인 필수), **C11 개발 관점 원칙** (자원 효율·코드 구조·범용성), **C13·P19·C27·C29-4** (PD 지시 트래킹·공유·완료 시 동기화 의무), **P24** (대화로그 기록 — 결정·설계 엔트리 기각안 필수), **C30** (외부 git 레포 작업 전 `git fetch && git status` 최신 상태 점검), **3축 감사 체계(P26·P27)** — API 계약 변경·스키마 이관·배포 전환 시 `dev-auditor` 모드 A 교차 검증 권장, 세션 말미 모드 B 주기 감사. ## 응답 스타일 diff --git a/.claude/agents/클라이언트팀장.md b/.claude/agents/클라이언트팀장.md index ca2c30c..703962a 100644 --- a/.claude/agents/클라이언트팀장.md +++ b/.claude/agents/클라이언트팀장.md @@ -54,7 +54,7 @@ skills: ## 공통 업무 규칙 > 전체 규칙은 frontmatter `skills: [너드나비스-코어룰]` 로 자동 주입된다 (`.claude/skills/너드나비스-코어룰/SKILL.md`). -> 클라이언트팀장 우선 환기: **C8 프로덕션 보호** (빌드·서버·DB 변경은 롤백 경로 확보 후), **C13·P19** (PD 지시 트래킹·공유), **P20** (일일 보고). +> 클라이언트팀장 우선 환기: **C8 프로덕션 보호** (빌드·서버·DB 변경은 롤백 경로 확보 후), **C11 개발 관점 원칙** (자원 효율·코드 구조·범용성), **C13·P19·C27·C29-4** (PD 지시 트래킹·공유·완료 시 동기화 의무), **P24** (대화로그 기록 — 결정·설계 엔트리 기각안 필수), **C30** (Unity 등 외부 git 레포 작업 전 `git fetch && git status` 최신 상태 점검), **3축 감사 체계(P26·P27)** — 중요 기술 결정·API 변경 시 `dev-auditor` 모드 A 교차 검증 권장, 세션 말미 모드 B 주기 감사. ## 응답 스타일 diff --git a/.claude/skills/너드나비스-코어룰/SKILL.md b/.claude/skills/너드나비스-코어룰/SKILL.md index 420bd7f..975f3f9 100644 --- a/.claude/skills/너드나비스-코어룰/SKILL.md +++ b/.claude/skills/너드나비스-코어룰/SKILL.md @@ -1,6 +1,6 @@ --- name: 너드나비스-코어룰 -description: 너드나비스 조직의 헌법급 핵심 규칙(C1~C26) + 프로젝트 규칙(P1~P20)의 단일 SOT. 모든 부서 서브에이전트가 자동 주입받아 준수한다. 코어룰 추가·변경 시 본 파일만 갱신하면 모든 부서 자동 반영. +description: 너드나비스 조직의 헌법급 핵심 규칙(C1~C31) + 프로젝트 규칙(P1~P28)의 단일 SOT. 모든 부서 서브에이전트가 자동 주입받아 준수한다. 코어룰 추가·변경 시 본 파일만 갱신하면 모든 부서 자동 반영. 폐기·개정 규칙 상세는 공유/조직공지/폐기_규칙_아카이브.md (외부 변동비 SOT). --- # 너드나비스 조직 규칙 @@ -291,12 +291,12 @@ PD·스태프와의 회의·리뷰·검증이 실제로 일정상 의존성을 2. **시작과 끝의 명확화** — 시작 시점 등록 + 완료 시점 결과 공유 3. **중단 시 사유와 사후 조치 명시** — `보류`·`취소` 시 **사유 + 사후 조치 계획**을 반드시 기록 4. **부서가 책임진다** — PD님과 총괄PM이 공유를 요구할 필요 없도록 부서가 자체 책임 -5. **단일 SOT** — `공유/PD_지시_트래킹/{부서}_PD_지시_로그.md` + `공유/일일보고/`로 일원화 +5. **단일 SOT** — `공유/PD_지시_트래킹/{부서}_PD_지시_로그.md` + `공유/대화로그/`(P24)로 일원화 6. **공유 누락은 헌법 위반** — C3(이슈 은폐 금지)에 준하는 위반, 자진 보고 + 소급 등록 의무 ### 공유 채널 분리 (목적별) - **PD 직접 지시**: `공유/PD_지시_트래킹/{부서}_PD_지시_로그.md` -- **자체·자율·협업 작업**: `공유/일일보고/YYYY-MM-DD_{부서}.md` (P20) +- **자체·자율·협업 작업**: `공유/대화로그/{프로젝트}/YYYY-MM-DD.md` (P24) - 둘 중 어디에도 기록되지 않은 작업은 **공유 누락 = C13 위반** ### 책임 주체 @@ -312,9 +312,9 @@ PD·스태프와의 회의·리뷰·검증이 실제로 일정상 의존성을 | **완료** | `완료` 상태 + 최종 산출물 경로 + 결과 요지 | 응답·산출물 확정 시 | | **중단** | `보류`/`취소` 상태 + **중단 사유** + **사후 조치 계획** | 중단 결정 즉시 | -### 구체 절차는 P19·P20 참조 +### 구체 절차는 P19·P24 참조 - **P19**: PD 지시 로그 형식·등록 시점·상태 관리 (시작·진행·완료·중단) -- **P20**: 일일 보고로 활동 가시화 +- **P24**: 대화로그 기록으로 활동 가시화 (2026-04-16 P20 폐기 후 역할 전담) ## C20. 팀장급 커밋·푸시 재량 원칙 (2026-04-15 PD님 직접 지시) @@ -323,7 +323,7 @@ PD·스태프와의 회의·리뷰·검증이 실제로 일정상 의존성을 ### C20-1. 재량 범위 (팀장급 자율) 다음 액션은 팀장급이 재량껏 판단·진행한다 (PD님 사전 승인 불요): - 자기 작업 브랜치에 대한 일반 커밋 -- 일일보고·PD 지시 로그·메모리 등 운영 산출물 갱신 커밋 +- 대화로그·PD 지시 로그·메모리 등 운영 산출물 갱신 커밋 ### C20-1-A. 공유·push 시점 규칙 (2026-04-17 PM 재개정 — PD님 직접 지시 재반영) @@ -383,7 +383,7 @@ PD·스태프와의 회의·리뷰·검증이 실제로 일정상 의존성을 ### C20-4. 책임 명시 - 팀장급은 본 재량 행사에 대한 **결과 책임**을 진다 - 우려 이슈에 해당함에도 사전 확인 없이 진행한 결과는 자진 보고 + PD님 처분 대상 -- 재량 행사 결과는 PD 지시 로그·일일보고에 사실 그대로 기록 (C13) +- 재량 행사 결과는 PD 지시 로그·대화로그에 사실 그대로 기록 (C13·P24) ### C20-5. 운용 권고 - 우려 이슈인지 판단이 애매하면 사전 확인을 선택 (C19-1 정신과 일치) @@ -479,9 +479,7 @@ PD·스태프와의 회의·리뷰·검증이 실제로 일정상 의존성을 --- -## C17. ~~세션 이동 지시 시 복사 가능 명령어 동봉 의무~~ (2026-04-16 폐기) - -> **2026-04-16 폐기 — 단일 세션 전환(PD님 직접 지시)으로 세션 간 이동 자체가 소멸. 본 규칙 내용은 역사 기록으로 보존.** +## ~~C17. 세션 이동 지시 시 복사 가능 명령어 동봉 의무~~ (2026-04-16 폐기 — C24 단일 세션 전환으로 전제 소멸, 상세: [폐기 규칙 아카이브 #2-C17](공유/조직공지/폐기_규칙_아카이브.md#2-c17--세션-이동-지시-시-복사-가능-명령어-동봉-의무)) ## C16. PC 독립 셋업·세션 시작 표준 (2026-04-15 PD님 직접 지시) @@ -584,10 +582,10 @@ PD·스태프와의 회의·리뷰·검증이 실제로 일정상 의존성을 - PD님의 직접 오더와 기존 작업 간 충돌을 방지한다 - 결과를 전체 진행 상황에 반영한다 -### 총괄PM 정기 모니터링 표준 절차 (P19·P20과 연계) +### 총괄PM 정기 모니터링 표준 절차 (P19·P24와 연계) 총괄PM은 정기적으로 또는 PD님 모니터링 지시 시 다음 4단계를 수행한다: 1. **PD 지시 트래킹 채널 확인** — `공유/PD_지시_트래킹/{부서}_PD_지시_로그.md` 신규·미처리 항목 식별 -2. **일일 보고 확인** — `공유/일일보고/` 최근 보고서 검토 +2. **대화로그 확인** — `공유/대화로그/{프로젝트}/YYYY-MM-DD.md` 최근 엔트리 검토 (2026-04-16 P20 폐기로 P24가 역할 전담) 3. **공유 요청 채널 확인** — `공유/소통/` 허브 6축 (PM↔개발팀·PM↔기획팀·개발팀↔기획팀), `공유/조직공지/` 4. **파일 시스템 변경 추적** — 최근 수정된 산출물 식별 @@ -740,9 +738,7 @@ PD 지시 로그 테이블을 **2개 섹션**으로 분리한다: - 로그 누락·갱신 누락 발견 즉시 소급 등록 - 반복 위반 시 교훈 섹션에 기록 -## P20. ~~세션 활동 일일 보고~~ (2026-04-16 폐기 — P24 대화로그로 대체) - -> **2026-04-16 PD님 직접 지시로 폐기.** P24(대화로그)가 일일보고의 역할을 완전 대체. 기존 `공유/일일보고/` 아카이브는 역사 기록으로 보존. +## ~~P20. 세션 활동 일일 보고~~ (2026-04-16 폐기 — P24 대체, 상세: [폐기 규칙 아카이브 #1-P20](공유/조직공지/폐기_규칙_아카이브.md#1-p20--세션-활동-일일-보고)) ## P21. 세션 갱신 프로토콜 (2026-04-16 PD님 직접 지시 / 2026-04-16 단일 세션 전환으로 간소화) @@ -1203,10 +1199,9 @@ PD님으로부터 직접 지시를 받은 즉시: 4. **중단(`보류`/`취소`) 시 중단 사유·사후 조치 컬럼 반드시 함께 기록** 5. **누락 시 C3·C13 위반 — 자진 보고 후 소급 등록** -## A3. 세션 종료 또는 주요 단계 종료 시점 — P20 의무 +## ~~A3. 세션 종료 또는 주요 단계 종료 시점 — P20 의무~~ (2026-04-16 폐기 — P24 대화로그로 대체) -- **`공유/일일보고/YYYY-MM-DD_<부서명>.md` 작성·갱신** (당일 첫 작성이면 신규, 이후 append) -- 포함: PD 지시 반영 결과 / 자율 작업 / 발견 이슈 / 다음 예정 +> P20 폐기에 따라 본 부록 A3도 실효. 세션 종료·주요 단계 종료 시점에는 P24(대화로그 엔트리)로 기록. 상세: [폐기 규칙 아카이브 #1-P20](공유/조직공지/폐기_규칙_아카이브.md#1-p20--세션-활동-일일-보고) ## A4. 부서별 특화 환기 (부서 CLAUDE.md에서만 관리) @@ -1360,7 +1355,7 @@ C20-7 자기검증 5문항에 다음 항목 추가: ## C26. 코어룰 단일 SOT 갱신 원칙 (2026-04-16 PD님 직접 지시·직접 승인 / 2026-04-16 Skill 패킹 전환으로 본문 개정) -> 핵심 규칙(C1~Cn)·프로젝트 규칙(P1~P20)을 추가·변경·삭제할 때는 **본 SKILL.md 한 곳만** 갱신한다. Claude Code의 Skill 메커니즘에 의해 부서 서브에이전트(frontmatter `skills: [너드나비스-코어룰]`)와 메인 세션(CLAUDE.md `@.claude/skills/너드나비스-코어룰/SKILL.md`)이 자동 주입받으므로, **부서 에이전트 정의 파일·CLAUDE.md 의 코어룰 본문을 별도로 동기화할 필요가 없다.** +> 핵심 규칙(C1~Cn)·프로젝트 규칙(P1~Pn)을 추가·변경·삭제할 때는 **본 SKILL.md 한 곳만** 갱신한다. Claude Code의 Skill 메커니즘에 의해 부서 서브에이전트(frontmatter `skills: [너드나비스-코어룰]`)와 메인 세션(CLAUDE.md `@.claude/skills/너드나비스-코어룰/SKILL.md`)이 자동 주입받으므로, **부서 에이전트 정의 파일·CLAUDE.md 의 코어룰 본문을 별도로 동기화할 필요가 없다.** ### C26-1. 갱신 대상 파일 (현재 시점, 단일 SOT) 1. `.claude/skills/너드나비스-코어룰/SKILL.md` ← **본 파일 한 곳** diff --git a/.live/CLAUDE.md b/.live/CLAUDE.md new file mode 100644 index 0000000..a806f4b --- /dev/null +++ b/.live/CLAUDE.md @@ -0,0 +1,12 @@ +# .live/CLAUDE.md — 2026-04-18 A1 집행 변경 요지 + +## [2026-04-18] A1 루트 CLAUDE.md 구 요약 갱신 완료 + +- **갱신 범위**: L33~49 (구 C1~C26/P1~P20 → C1~C31/P1~P28) +- **폐기 규칙 처리**: C17·구 C18·구 C24·구 C26 요약 본문 제거 → 1줄 압축 + [폐기 규칙 아카이브](공유/조직공지/폐기_규칙_아카이브.md) 링크 +- **P20 처리**: 동일 방식 (P21~P28 신설분 요지 추가 + P20 아카이브 링크) +- **원칙 3 개정 적용**: 저장 위치 최적화 (활성 본문 1줄 + 외부 아카이브 상세) +- **고정비 영향**: 기존 약 17줄 → 신규 약 18줄 (C31·P28까지 신설분 반영에도 총 증가 미미) +- **원칙 1·2 준수**: sed 금지·수동 편집, 자산 가치는 외부 아카이브에 보존 + +**현 세션 즉시 반영**. 본 요지는 commit 후 삭제 예정 (P25). diff --git a/.live/SKILL.md b/.live/SKILL.md new file mode 100644 index 0000000..e60dcfb --- /dev/null +++ b/.live/SKILL.md @@ -0,0 +1,16 @@ +# .live/SKILL.md — 2026-04-18 A2 집행 변경 요지 + +## [2026-04-18] A2 SKILL.md 폐기 P20 참조 정리 완료 (5단계 chunk) + +- **단계 1**: frontmatter L3 `P1~P20` → `P1~P28` + 폐기 아카이브 외부 SOT 언급 추가 +- **단계 2**: C13 본문 (L294·L299·L315·L317) — `일일보고` → `대화로그(P24)`, `P19·P20` → `P19·P24` +- **단계 3**: C20·P9 활성 본문 (L326·L386·L587·L588) — 동일 패턴 치환 +- **단계 4**: 폐기 선언 1줄 압축 — P20(L741)·C17(L482)·부록 A3(L1202) **개정된 원칙 3 적용** (활성 본문 1줄 + [폐기 규칙 아카이브](공유/조직공지/폐기_규칙_아카이브.md) 외부 링크) +- **단계 5**: C26 frontmatter (L1363) `P1~P20` → `P1~Pn` +- **보존 (원칙 1·3)**: 폐기 선언·비교표(L830·L836·L953)·P24 본문 내 역사 설명(L850)·교훈 섹션(L1165~) 전량 유지 + +## 활성 P20 참조 현황 (집행 후) +- **활성 운영 지침 0건** (목표 달성) +- 비교표·교훈·폐기 선언만 잔존 (정책상 유지) + +**현 세션 즉시 반영**. commit 후 삭제 예정 (P25). diff --git a/.live/pm-general.md b/.live/pm-general.md new file mode 100644 index 0000000..6bc8739 --- /dev/null +++ b/.live/pm-general.md @@ -0,0 +1,14 @@ +# .live/pm-general.md — 2026-04-18 A3 확장 집행 변경 요지 + +## [2026-04-18] PM 에이전트 정의 P20 잔존 3개소 정리 (A3 확장 — PM 재량) +- **L50**: 섹션 제목 `(C13·P9·P19·P20 연계)` → `(C13·P9·P19·P24·C27·C29-4 연계)` +- **L58**: "일일 보고 확인 — 공유/일일보고/" → "대화로그 확인 — 공유/대화로그/{프로젝트}/ (P24)" +- **L65**: "P19·P20 의무 누락" → "P19·P24·C27·C29-4 의무 누락" +- **L59**: 공유 채널 6축 → 9축 (pm/dev/plan-auditor→PM 추가) +- **L60**: `find`/`ls -lt` → `verify_log_paths.sh`·`verify_references.sh` 실측 감사 +- **L91**: `P1~P20` → `P1~Pn` +- **3축 감사 활용 명시**: pm-auditor·dev-auditor·plan-auditor 모드 A·B 운용 + +**인계서 범위 외 A3 확장 — PM 재량 판단**. PM 자체 에이전트 정의가 폐기 조항을 품으면 세션 리더 맥락 오염이 발생할 위험 선제 차단. + +**현 세션 즉시 반영**. commit 후 삭제 예정 (P25). diff --git a/.live/개발팀장.md b/.live/개발팀장.md new file mode 100644 index 0000000..0878fd5 --- /dev/null +++ b/.live/개발팀장.md @@ -0,0 +1,7 @@ +# .live/개발팀장.md — 2026-04-18 A3 확장 변경 요지 + +## [2026-04-18] 개발팀장.md frontmatter 표기 갱신 +- **L72**: `P1~P20 프로젝트 규칙` → `P1~Pn 프로젝트 규칙` (번호 진화 독립화) +- **나머지 본문**: 2026-04-17 이미 P24·3축 감사·C30 반영 완료 (변경 불요) + +**현 세션 즉시 반영**. commit 후 삭제 예정 (P25). diff --git a/.live/기획팀장.md b/.live/기획팀장.md new file mode 100644 index 0000000..8a70a5e --- /dev/null +++ b/.live/기획팀장.md @@ -0,0 +1,7 @@ +# .live/기획팀장.md — 2026-04-18 A3 확장 변경 요지 + +## [2026-04-18] 기획팀장.md frontmatter 표기 갱신 +- **L73**: `P1~P20 프로젝트 규칙` → `P1~Pn 프로젝트 규칙` (번호 진화 독립화) +- **나머지 본문**: 2026-04-17 이미 P24·3축 감사·plan-auditor 반영 완료 (변경 불요) + +**현 세션 즉시 반영**. commit 후 삭제 예정 (P25). diff --git a/.live/서버팀장.md b/.live/서버팀장.md new file mode 100644 index 0000000..5b87efa --- /dev/null +++ b/.live/서버팀장.md @@ -0,0 +1,8 @@ +# .live/서버팀장.md — 2026-04-18 A3 집행 변경 요지 + +## [2026-04-18] 서버팀장 우선 환기 사항 전면 갱신 +- **제거**: P20 (일일보고) 잔존 1개소 +- **추가**: C11(개발 관점), C27·C29-4(완료 동기화), P24(대화로그+기각안 필수), C30(외부 git 레포 최신화), 3축 감사(dev-auditor) +- **C8 강화**: 프로덕션 데이터 파괴적 명령은 PD님 사전 승인 필수 + +**현 세션 즉시 반영**. commit 후 삭제 예정 (P25). diff --git a/.live/클라이언트팀장.md b/.live/클라이언트팀장.md new file mode 100644 index 0000000..16c20ff --- /dev/null +++ b/.live/클라이언트팀장.md @@ -0,0 +1,8 @@ +# .live/클라이언트팀장.md — 2026-04-18 A3 집행 변경 요지 + +## [2026-04-18] 클라이언트팀장 우선 환기 사항 전면 갱신 +- **제거**: P20 (일일보고) 잔존 1개소 +- **추가**: C11(개발 관점), C27·C29-4(완료 동기화), P24(대화로그+기각안 필수), C30(외부 git 레포 최신화), 3축 감사(dev-auditor 모드 A/B) +- **이유**: A3 인계서 범위 + PD님 2026-04-17 개정 반영 + +**현 세션 즉시 반영**. commit 후 삭제 예정 (P25). diff --git a/CLAUDE.md b/CLAUDE.md index 8470662..1290d16 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -32,8 +32,8 @@ PD님 | 구분 | 성격 | 변경 권한 | |------|------|----------| -| **핵심 규칙** (코어 룰, C1~C26) | 조직의 **헌법** | **PD님만** 수정 가능 (총괄PM이 팀장급과 상의 후 제안 → PD님 승인) | -| **프로젝트 규칙** (조직 규칙, P1~P20) | 조직의 **법률** | **팀장급 재량** (총괄PM이 팀장급과 상의·검증 후 승인, PD님에게 사후 공유) | +| **핵심 규칙** (코어 룰, C1~C31) | 조직의 **헌법** | **PD님만** 수정 가능 (총괄PM이 팀장급과 상의 후 제안 → PD님 승인) | +| **프로젝트 규칙** (조직 규칙, P1~P28) | 조직의 **법률** | **팀장급 재량** (총괄PM이 팀장급과 상의·검증 후 승인, PD님에게 사후 공유) | ### 핵심 규칙 요약 - **C1** 지시=승인 / **C2** 근원적 문제 해결 / **C3** 이슈 은폐 금지·즉시 보고 / **C4** 총괄PM 하달 @@ -41,12 +41,21 @@ PD님 - **C9** AI 에이전트 조직 원칙 / **C10** 중복 작업 방지·선행 검증 / **C11** 개발 관점 원칙(개발팀) - **C12** PD님 경어 사용 / **C13** PD 지시 트래킹·공유 의무 (시작·진행·완료·중단 4단계 가시화) - **C14** 토큰 최소화 우선 설계 / **C15** 일정·기한 개념 배제 (금지 표현 사용 금지) -- **C16** PC 독립 셋업·세션 표준 / **C17** 세션 이동 복사 명령어 동봉 -- **C18** 조직 공유 완료 판정 (main 병합 + 대상 세션 도달) / **C19** 승인 범위 엄격 해석 -- **C20** 팀장급 커밋·푸시 재량 / **C21(초안)** 작업 완료 즉시 공유·PM 능동 확인 +- **C16** PC 독립 셋업·세션 표준 / **C18** 조직 공유 완료 판정 (main push 완료) +- **C19** 승인 범위 엄격 해석 / **C20** 팀장급 커밋·푸시 재량 / **C21(초안)** 작업 완료 즉시 공유·PM 능동 확인 - **C22** 용어·식별자 일관 사용 / **C23** 허위 보고·역할 연기 절대 금지 (헌법급) -- **C24** 부서 세션 영속 대화 운용 / **C25** 제안 넘버링 일관 규칙 (4단 위계) -- **C26** 코어룰 변경 시 에이전트 정의 파일 동시 갱신 의무 +- **C24** 단일 세션 운용 원칙 / **C25** 제안 넘버링 일관 규칙 (4단 위계) +- **C26** 코어룰 단일 SOT 갱신 원칙 (Skill 패킹) / **C27** Agent 호출 완료 시 PM 로그 갱신 확인 +- **C28** 문서 수정 무승인 원칙 / **C29** 업무 자율 수행 체계 (조직 생존급) +- **C30** git 동기화 프로젝트 작업 전 최신 상태 점검 / **C31** 응답 발신 직전 자기검증 의무 (헌법급) +- ~~**C17**~~ (2026-04-16 폐기, 단일 세션 전환), ~~구 C18·C24·C26~~ (정의 개정). 상세: [폐기 규칙 아카이브](공유/조직공지/폐기_규칙_아카이브.md) + +### 프로젝트 규칙 추가 요약 (P21 이후 신설분) +- **P21** 세션 갱신 프로토콜 / **P21-2** 세션 공유 프로토콜 / **P22** 결정로그 발행 의무 +- **P23** 기획 결정 재량 범위 / **P24** 대화로그 기록 의무 (결정·설계 엔트리 기각안 필수) +- **P25** Live 증분 동기화 체계 (🏆 조직 핵심 자산) / **P26** PM 업무 정확도 보장 체계 (pm-auditor) +- **P27** 조직 업무 공유·기록 체계 일관성 보장 (3축 감사) / **P28** 조직 업무 현황 보고 표준 포맷 +- ~~**P20**~~ (2026-04-16 폐기, P24 대체). 상세: [폐기 규칙 아카이브](공유/조직공지/폐기_규칙_아카이브.md) ## 컨벤션 diff --git a/공유/대화로그/조직운영/2026-04-18.md b/공유/대화로그/조직운영/2026-04-18.md new file mode 100644 index 0000000..48520a7 --- /dev/null +++ b/공유/대화로그/조직운영/2026-04-18.md @@ -0,0 +1,64 @@ +# 2026-04-18 조직운영 대화로그 + + + + +## [PM] 수정 3대 원칙 3번 개정 — "폐기 선언 자산 유지 + 저장 위치 최적화" (PD님 직접 개정) + +- **요지**: 인계서 §1 수정 3대 원칙 3번 "폐기 선언 본문 유지"를 **"폐기 선언 자산 유지 + 저장 위치 최적화"**로 개정. 활성 본문(SKILL.md·CLAUDE.md)에는 1줄 선언만 유지하고 상세 경위·근거는 외부 아카이브 파일(`공유/조직공지/폐기_규칙_아카이브.md`)로 이관. 자산 가치(조직 기억·감사 추적·역진화 방지·번호 연속성)는 유지하되 저장 위치는 C14(토큰 최소화) 관점에서 최적화. +- **이유**: PD님 2026-04-18 직접 지적 — "매번 읽어야하는 문서에 히스토리를 너무 많이 쌓으면 토큰 낭비". PM이 이전 원칙 3을 "선언 본문의 활성 본문 원 위치 고정"으로 과도 해석(자산 가치와 저장 위치를 혼동). PD님 관찰이 정확하며 장기 폐기 규칙 누적 시 고정비 직격. C14 + 헌법 제1원칙 목표 2-B 동시 만족하는 구조로 전환. +- **산출물**: + 1. `공유/조직공지/폐기_규칙_아카이브.md` 신설 (P20·C17·구 C18·구 C24·구 C26 5종 이관, frontmatter + 6필드 기록 형식 + 운영 규칙 포함) + 2. `공유/인계서/2026-04-17_전수감사_A+B급7건_수정집행_인계서.md` §1 원칙 3 전면 개정 + 3. SKILL.md·CLAUDE.md 활성 본문 폐기 선언 1줄 압축 (본 작업 Phase 2 A1·A2에서 일괄 적용) +- **기각안**: + 1. 현행 유지 (폐기 선언을 활성 본문에 유지) — 장기 고정비 누적 용인 곤란, 기각 + 2. SKILL.md 내부 아카이브 섹션 하단 이동 — SKILL.md 전체가 자동 주입되므로 실질 고정비 절감 효과 없음, 기각 + 3. 활성 본문에서 폐기 선언 완전 삭제 + 외부 아카이브만 유지 — 번호 체계 구멍(`P19 → P21`) 허용 시 세션 시작 납득성 훼손, 기각 + 4. **외부 아카이브 파일 + 활성 본문 1줄 (채택)** — 토큰 절감 + 번호 연속성 + 자산 보존 3중 만족 +- **상태**: 완료 + + +## [PM] 전수 감사 A+B급 6건 수정 집행 완료 — 개정 원칙 3 적용 + PM 재량 확대 + +- **요지**: 2026-04-17 저녁 PD님 "옵션 나" 승인 A+B급 7건을 2026-04-18 새 PC에서 집행. 실측 결과 B4는 이미 해결 상태로 확인(집행 불요) + PM 재량으로 A3 범위 확대(pm-general·개발팀장·기획팀장 frontmatter 포함). **실제 집행 6건 + 인계서 외 3건 확대 = 총 9개 파일 수정**. +- **이유**: 조직 토큰 최적화 + 세션 전환 시 PM 맥락 오염 차단. PM 자체 에이전트 정의에 폐기 조항 잔존하면 C31 자기검증도 오염될 위험. +- **집행 건별 (3대 원칙 엄수: 자산 보존 분리 / sed 금지 / 저장 위치 최적화)**: + - **A1 루트 CLAUDE.md L33~49** — C1~C31·P1~P28 체계 갱신 + 폐기 C17·구 C18·구 C24·구 C26·P20 1줄 압축 + [폐기 규칙 아카이브](공유/조직공지/폐기_규칙_아카이브.md) 링크. 고정비 영향 미미(17→18줄) + - **A2 SKILL.md 17+ 개소** — 5단계 chunk 분할 수동 집행. frontmatter·C13 본문·C20·P9·부록 A3·C26 frontmatter·P20 L741·C17 L482 전량 정리. 활성 운영 지침 P20 참조 0건 달성. 비교표·폐기 선언·교훈은 원칙 1·3 준수 유지 + - **A3 클라이언트·서버팀장** — P20 (일일 보고) 제거 + C11·C27·C29-4·P24·C30·3축 감사 추가 (맥락 재작성, sed 미사용) + - **A3 확장 (PM 재량)** — pm-general 3개소 + 개발팀장·기획팀장 frontmatter `P1~P20` → `P1~Pn` 갱신 + - **B1 07 Headless 원안** — 상단 아카이브 배너 + 02_개발자관점_점검 L19 주해. 본문 기각안 근거로 보존 + - **B2 02 추출대상** — 완료 실적 배너 + Tier 1 16/16 구현 경로 역참조 (CHANGELOG 기반) + 2026-04-17 신규 확장 9종 섹션 append + - **B3 08 전투시스템 SOT** — §4.1·§4.3 "(확인 필요)" 실측 확정 반영 + §4.4에 실측 수치 표 append (PCDefence_Mul=0.3·쿨다운 없음·Melee/Range 공통·Mob 방어 부재) + §8 체크리스트 2건 완료 처리. 기획 초기 가정("50%")은 추적성 보존으로 유지 (원칙 1) + - **B4 plan-auditor .gitkeep** — **집행 불요 확인** (실측 결과 이미 존재, 커밋 `207db85` 이전 단계에서 해결) +- **기각안**: + 1. B4 재실행 — 실측 결과 이미 존재, 불필요 재작업으로 기각 + 2. sed 일괄 치환 — 원칙 2 정면 위반, 교훈·비교표·폐기 선언 파괴 위험으로 기각 + 3. A3 확장 제외 (인계서 원안 유지) — pm-general 잔존 방치 시 PM 세션 자기 오염 위험, PM 재량 확대 채택 + 4. SKILL.md 비교표(L830·L836·L953) 축약 — 역사 맥락 설명이므로 원칙 1·3 준수하여 유지, 차후 감사 안건으로만 기록 + 5. 08 "기획 초기 가정" 서술 제거 — 원칙 1 자산 보존 위반, 실측 수치 병기로 추적성 보존 + 6. C급 동시 집행 — PD님 "A+B급 일괄, C급은 후속" 명시 범위 초과로 기각 +- **검증**: + - `scripts/verify_log_paths.sh` ✅ 4건 실존 유지 + - `scripts/verify_references.sh` — 기존 구조적 참조만 잔존 (신규 파손 0건) + - `grep "P20" .claude/agents/` — 활성 0건 (폐기 설명만 잔존) + - `grep "P20\|일일보고" SKILL.md` — 활성 운영 지침 0건 (비교표·폐기 선언·교훈·P24 본문 역사 설명만 잔존) +- **산출물 수정 파일** (13건): + - `.claude/skills/너드나비스-코어룰/SKILL.md` (A2) + - `.claude/agents/클라이언트팀장.md` · `서버팀장.md` · `pm-general.md` · `개발팀장.md` · `기획팀장.md` (A3) + - `CLAUDE.md` (A1) + - `프로젝트/수상한잡화점/개발/07_시뮬레이터_이원화_해소_착수계획_v1.md` · `02_개발자관점_점검_v1.md` · `08_전투시스템_SOT_v1.md` (B1·B3) + - `프로젝트/코어프레임워크/02_수상한잡화점_추출대상_v1.md` (B2) + - `공유/인계서/2026-04-17_전수감사_A+B급7건_수정집행_인계서.md` (원칙 3 개정) + - 신규: `공유/조직공지/폐기_규칙_아카이브.md` + - `.live/` 6건: CLAUDE.md·SKILL.md·클라이언트팀장·서버팀장·pm-general·개발팀장·기획팀장 +- **상태**: 완료. commit + (필요 시) push 대기 + + +## [PM] P25 Live 더미 체계 실증 운용 6건 (A1·A2·A3·A3확장 동시 기록) + +- **요지**: A+B급 집행 중 `.live/CLAUDE.md`·`.live/SKILL.md`·`.live/클라이언트팀장.md`·`.live/서버팀장.md`·`.live/pm-general.md`·`.live/개발팀장.md`·`.live/기획팀장.md` 6건(CLAUDE.md 포함 7건) 동시 작성. P25 "조직 핵심 자산" 운용 실증 +- **이유**: 원본 수정과 `.live/` 기록 짝 원칙 준수. 같은 PC 내 다른 세션이 즉시 변경 인지 가능. commit 시 post-commit hook이 `sync_signal.sh update` 자동 호출하여 시그널 갱신 +- **상태**: 완료 (commit 후 `.live/` 비우기 예정) +- **기각안**: 없음 (P25 정상 운용 절차) diff --git a/공유/인계서/2026-04-17_전수감사_A+B급7건_수정집행_인계서.md b/공유/인계서/2026-04-17_전수감사_A+B급7건_수정집행_인계서.md index 6c65a56..6bd5340 100644 --- a/공유/인계서/2026-04-17_전수감사_A+B급7건_수정집행_인계서.md +++ b/공유/인계서/2026-04-17_전수감사_A+B급7건_수정집행_인계서.md @@ -32,15 +32,22 @@ related: 감사 보고 5종, SKILL.md, memory/feedback_* ### 원칙 1 — 자산 보존 분리 불필요·구 조항은 **삭제하지 않고** 다음 방식으로 보관: -- **SKILL.md·CLAUDE.md 폐기 조항**: 하단 "## 아카이브 (폐기 조항 역사 기록)" 섹션 신설하여 이동 - **폐기 설계 문서**: 파일 상단에 "🔴 아카이브됨 — 대체: X" 배너 추가 (본문 유지). 참조 많은 경우 파일 이동 대신 배너 방식 권장 - **완료 실적 문서**: 파일 상단에 "🟢 완료 실적 아카이브" 배너 + 각 항목에 구현 역참조 추가 +- **SKILL.md·CLAUDE.md 내 폐기 C·P 규칙**: 원칙 3(저장 위치 최적화) 참조 — 외부 아카이브 파일로 이관 ### 원칙 2 — sed 일괄 치환 금지 의미 맥락 확인이 필요한 영역(특히 역사 기록)은 **수동 정밀 치환**. 단순 운영 지침(P20→P24 등)만 sed 허용. -### 원칙 3 — 폐기 선언 본문 유지 -"P20 폐기 — P24로 대체" 선언 본문 자체는 규칙 변경 이력이자 자산. 선언 본문은 아카이브 섹션으로 이동하되 **삭제 금지**. +### 원칙 3 — 폐기 선언 자산 유지 + 저장 위치 최적화 (2026-04-18 PD님 직접 개정) +폐기 선언은 조직 자산(조직 기억·감사 추적·역진화 방지·번호 연속성)이며 **절대 삭제 금지**. 단 저장 위치는 C14(토큰 최소화) 관점에서 최적화: + +- **외부 아카이브 SOT**: `공유/조직공지/폐기_규칙_아카이브.md` 단일 파일에 상세 경위·근거·대체 관계 집약 (변동비, 매 턴 자동 로드 아님) +- **활성 본문 (SKILL.md·CLAUDE.md)**: 폐기 선언을 **1줄로 압축** + 외부 아카이브 링크 (`~~P20~~ — (2026-04-16 폐기 → P24 대체, 상세: [아카이브](공유/조직공지/폐기_규칙_아카이브.md#1-p20))`) +- **번호 체계 연속성 보존**: 활성 본문에 1줄 선언은 반드시 남김. 번호 점프(`P19 → P21`) 구멍 금지 +- **외부 아카이브 파일 보호**: 본 파일 삭제·이동·축약은 PD님 직접 승인 필수 (C19-2 되돌리기 어려운 액션) + +**개정 사유**: 이전 원칙 3("선언 본문을 활성 본문 원 위치에 유지")은 장기 토큰 누적 비용 간과. 조직 규칙이 진화하면 폐기 선언 누적 → 고정비 직격. 본 개정으로 C14 + 헌법 목표 2-B 동시 만족. --- diff --git a/공유/조직공지/폐기_규칙_아카이브.md b/공유/조직공지/폐기_규칙_아카이브.md new file mode 100644 index 0000000..158fba6 --- /dev/null +++ b/공유/조직공지/폐기_규칙_아카이브.md @@ -0,0 +1,140 @@ +--- +type: 폐기규칙아카이브 +created: 2026-04-18 +maintainer: 총괄PM +sot_boundary: 폐기·개정된 핵심 규칙(C)·프로젝트 규칙(P)의 상세 경위 단일 SOT +related: SKILL.md (활성 본문은 1줄 요약만 유지), CLAUDE.md (요약 블록) +rationale: C14(토큰 최소화) + 헌법 제1원칙 목표 2 원칙 B(차기 프로젝트 참고 자료) 동시 만족 +--- + +# 🗄️ 폐기·개정 규칙 아카이브 (너드나비스) + +> **본 파일의 성격**: 폐기되었거나 정의가 대폭 개정되어 이전 형태가 소멸한 핵심 규칙(C)·프로젝트 규칙(P)의 **상세 경위·근거·대체 관계**를 단일 SOT로 집약한 조직 자산. 활성 본문(SKILL.md)에는 "1줄 선언 + 본 파일 링크"만 유지하여 고정비를 최소화하되 **조직 기억·감사 추적·역진화 방지·차기 프로젝트 참고 자료** 4중 가치를 보존한다. +> +> **근거**: 2026-04-18 PD님 직접 지시로 "수정 3대 원칙 3번 — 폐기 선언 본문 유지"를 **"저장 위치 최적화"** 로 개정. 활성 본문 ≠ 자산 저장 위치. 자산 가치는 유지하되 저장은 외부화. +> +> **읽기 규칙**: 본 파일은 **변동비**. 활성 본문에서 폐기 규칙 맥락이 필요할 때만 Read. SessionStart·매 턴 자동 로드 대상 아님. + +--- + +## 🏛️ 아카이브 원칙 + +### 포함 대상 +1. **완전 폐기 규칙** — 선언이 `~~취소선~~` 처리되고 후속 대체 규칙이 지정된 것 (예: P20 → P24, C17 → 폐기) +2. **정의 대폭 개정 규칙** — 번호는 유지되나 이전 정의가 소멸하고 신 정의로 교체된 것 (예: 구 C18·C24·C26) +3. **상위 규칙 격상으로 실효된 규칙** — 프로젝트 규칙이 헌법급으로 격상되어 원 조항이 실질 공백화된 것 (검토 대기: P12 → C28) + +### 제외 대상 +1. 활성 규칙의 부속 조항 개정 (예: C20-1-A의 운영 조정) — 활성 본문 내 변경 이력으로 관리 +2. 오탈자·용어 통일·링크 수정 — 일반 문서 개정 + +### 기록 형식 (각 규칙 필수 6필드) +| 필드 | 설명 | +|------|------| +| **규칙 번호·명** | 원 번호와 명칭 | +| **신설일** | 최초 도입 날짜 | +| **폐기/개정일** | 소멸·개정 날짜 | +| **상태** | 폐기 / 개정 / 격상 실효 | +| **대체 관계** | 후속 규칙 번호·명 (있으면) | +| **경위·근거** | 왜 폐기/개정되었는가, 어떤 사건·결정이 계기인가 | +| **원 본문** (선택) | 원형 보존 필요 시 전문 인용. 없으면 "활성 본문에는 1줄 선언만" | + +--- + +## 1. P20 — 세션 활동 일일 보고 + +| 항목 | 내용 | +|------|------| +| **규칙 번호·명** | P20. 세션 활동 일일 보고 | +| **신설일** | 2026-04-14 | +| **폐기일** | 2026-04-16 | +| **상태** | **폐기** | +| **대체 관계** | **P24 (대화로그 기록 의무)** 가 역할 완전 대체 | +| **경위·근거** | 2026-04-16 PD님 직접 지시. P24 대화로그가 일일보고 역할을 완전 대체하며, 양 체계 병존 시 기록 중복(C14-4 참조 무결성 위반) 발생. "활동 가시화"라는 목적은 P24 + P22(결정로그) + P19(PD 지시 트래킹) 3축으로 분담. 기존 `공유/일일보고/` 아카이브는 역사 기록으로 보존. | +| **원 본문 요지** | 각 팀 세션 종료 시 `공유/일일보고/YYYY-MM-DD_{부서}.md` 작성·갱신 의무. 당일 첫 작성이면 신규, 이후 append. 포함: PD 지시 반영 결과 / 자율 작업 / 발견 이슈 / 다음 예정. | +| **교훈** | 기록 체계는 "하나의 기록 = 하나의 목적" 원칙으로 SOT 경계 명확화. P20처럼 중복 체계는 조기 정리. | +| **관련 이력** | `공유/일일보고/` 디렉토리 (역사 아카이브 보존) / P22·P24 신설 | + +--- + +## 2. C17 — 세션 이동 지시 시 복사 가능 명령어 동봉 의무 + +| 항목 | 내용 | +|------|------| +| **규칙 번호·명** | C17. 세션 이동 지시 시 복사 가능 명령어 동봉 의무 | +| **신설일** | 2026-04-15 | +| **폐기일** | 2026-04-16 | +| **상태** | **폐기** (상위 전제 소멸) | +| **대체 관계** | 없음 (규칙 자체가 불필요해짐) | +| **경위·근거** | 2026-04-16 PD님 직접 지시로 단일 세션 전환(C24 개정). 단일 세션 구조에서는 "세션 간 이동" 자체가 소멸하므로 C17의 전제가 성립하지 않음. PM이 부서별 별도 세션 진입을 위해 동봉하던 복사 명령어 블록은 불요. | +| **원 본문 요지** | PM이 부서에 작업을 위임하거나 세션 이동을 지시할 때, 부서 세션에서 **바로 복사·실행 가능한 명령어 블록**을 응답에 동봉 의무화. C17-3·C17-3-α로 3요소·간결화 원칙이 보강되었으나 2026-04-16 단일 세션 전환으로 전체 실효. | +| **교훈** | 운영 프로세스 규칙은 상위 구조(여기서는 세션 구조) 변경에 종속. 상위 변경 시 하위 규칙의 존속 가치 재검토 필수. | +| **관련 이력** | C17-3 보강 (2026-04-15) / C17-3-α 신설 (2026-04-15) / C24 단일 세션 전환 (2026-04-16) / PD 지시 로그 #12·#17 | + +--- + +## 3. 구 C18 — 조직 공유 완료 판정 (대상 세션 도달 포함) + +| 항목 | 내용 | +|------|------| +| **규칙 번호·명** | 구 C18. 조직 공유 완료 판정 — main 병합 + 대상 세션 도달 | +| **신설일** | 2026-04-15 | +| **개정일** | 2026-04-16 | +| **상태** | **정의 개정** (번호 유지, 정의 변경) | +| **현행 C18** | main push 완료 (대상 세션 도달 개념 제거) | +| **경위·근거** | 2026-04-15 OI-2 위임 사건(브랜치 분리로 인한 파일 미도달) 계기로 신설. 당시 구조는 부서별 별도 세션 운용이라 "main 병합 + 부서 세션이 해당 커밋을 pull 완료"까지를 공유 완료로 판정. 2026-04-16 단일 세션 전환으로 "대상 세션 도달" 개념이 소멸 → main push 완료만으로 공유 완료 판정하도록 개정. | +| **구 정의 요지** | 로컬 커밋 → 원격 push → main 병합 → **부서 세션이 main pull 완료** 4단계가 모두 완료된 시점을 "조직 공유 완료"로 판정. | +| **교훈** | 정의 개정은 "번호 유지 + 정의 변경" 형태로도 발생 가능. 구 정의가 적용되던 시점의 커밋·보고는 구 정의로 해석해야 역사적 정합성 유지. | +| **관련 이력** | 신설 공지 `공유/조직공지/2026-04-15_C18_신설_C17_보강_브랜치동기화_정직성.md` / C24 단일 세션 전환 시 동반 개정 | + +--- + +## 4. 구 C24 — 부서 세션 영속 대화 운용 + +| 항목 | 내용 | +|------|------| +| **규칙 번호·명** | 구 C24. 부서 세션 영속 대화 운용 | +| **신설일** | 2026-04-15 | +| **개정일** | 2026-04-16 | +| **상태** | **정의 개정** (번호 유지, 정의 변경) | +| **현행 C24** | 단일 세션 운용 원칙 (PM이 총괄하는 단일 세션 1개, 부서는 Agent 도구로 호출) | +| **경위·근거** | 2026-04-15 PC 독립·세션 시작 표준 논의 중 "부서별 워크트리 영속 대화"를 표준 운용 모델로 도입. 2026-04-16 PD님 직접 지시로 **단일 세션 + Agent 병렬 호출** 구조로 전환. 이유: (a) 부서 세션과 PM 세션 간 동기화 비용 (b) 각 부서 세션에 별도 메모리·권한 관리 부담 (c) Agent 도구 성숙으로 단일 세션에서 병렬 호출 가능. | +| **구 정의 요지** | 부서(개발팀·기획팀)별 영속 대화 세션을 `개발팀/`·`기획팀/` 디렉토리 기준으로 유지. PM이 위임 시 부서 세션에서 `resume` 하여 맥락 계승. | +| **교훈** | 조직 구조 근본 전환은 다수 하위 규칙(C17·C26·settings.json 배치 등)에 파급. 전환 시 파급 범위 전수 식별 필수. | +| **관련 이력** | 2026-04-16 단일 세션 전환 / C16 PC 독립 셋업과 정합 / C26 Skill 패킹 전환 동반 | + +--- + +## 5. 구 C26 — 코어룰 변경 시 에이전트 정의 파일 동시 갱신 의무 + +| 항목 | 내용 | +|------|------| +| **규칙 번호·명** | 구 C26. 코어룰 변경 시 에이전트 정의 파일 동시 갱신 의무 | +| **신설일** | 2026-04-16 (1차) | +| **개정일** | 2026-04-16 (2차, 같은 날 재개정) | +| **상태** | **정의 개정** (Skill 패킹 전환으로 수동 갱신 의무 폐지) | +| **현행 C26** | 코어룰 단일 SOT 갱신 원칙 — SKILL.md 한 곳만 갱신하면 Skill 메커니즘이 부서 서브에이전트에 자동 주입 | +| **경위·근거** | 1차 신설 당시는 코어룰을 루트 CLAUDE.md·개발팀장.md·기획팀장.md 다중 복사 보관 구조. 규칙 변경 시 3~4곳 동시 갱신 의무 규정. 2026-04-16 Claude Code `skills:` frontmatter 기능 도입으로 **Skill 패킹 단일 SOT 전환**. SKILL.md 한 곳만 수정하면 모든 부서 에이전트에 자동 주입되므로 수동 동시 갱신 의무 폐지. | +| **구 정의 요지** | C·P 규칙 신설·변경 시 다음 4곳을 동일 커밋 내 갱신 의무: (1) 루트 CLAUDE.md 요약 (2) 개발팀/CLAUDE.md 본문 (3) 기획팀/CLAUDE.md 본문 (4) 에이전트 정의 `.md` 관련 조문. 누락 시 C26 위반 + C5 정직성 위반 가중. | +| **교훈** | 플랫폼 기능 진화(Skill 패킹)에 따라 조직 규칙도 적극 간소화. 수동 동기화 의무는 자동화 가능 영역에서는 즉시 폐지 검토 대상. | +| **관련 이력** | 2026-04-16 Skill 패킹 전환 공지 / C14-4 참조 무결성과 정합 / `memory/org/feedback_role_play_vs_real_call.md` | + +--- + +## 📘 운영 규칙 (본 파일 관리) + +### 추가 시점 +1. 신규 규칙 폐기·개정 확정 시 **해당 커밋과 동일 커밋 내**에 본 파일 append +2. 활성 본문(SKILL.md) 1줄 선언에 본 파일 링크 반드시 포함 (`[아카이브](공유/조직공지/폐기_규칙_아카이브.md#규칙번호)`) +3. 추가 시 대화로그(`공유/대화로그/조직운영/YYYY-MM-DD.md`) 엔트리 + 기각안 기록 (P24) + +### 본 파일 변경 이력 (P16) +| 일시 | 변경자 | 변경 요지 | 관련 PD 지시 | +|------|--------|-----------|-------------| +| 2026-04-18 | PM | 신설 + P20·C17·구 C18·구 C24·구 C26 5종 이관. 수정 3대 원칙 3번 개정(저장 위치 최적화) PD님 직접 지시 반영 | 2026-04-18 원칙 3 개정 + A+B급 6건 집행 착수 지시 | + +### 역진화 방지 (본 파일 자체의 보호) +본 아카이브 파일 자체가 소실·삭제되면 조직 기억이 일괄 소실됨. 따라서: +- 본 파일 삭제·이동은 **PD님 직접 승인 필수** (C19-2 되돌리기 어려운 액션) +- 본 파일 내용 축약·요약은 **PM 재량 아님, PD님 결정 안건** +- git 추적 대상으로 영구 보존 diff --git a/프로젝트/수상한잡화점/개발/02_개발자관점_점검_v1.md b/프로젝트/수상한잡화점/개발/02_개발자관점_점검_v1.md index 5cbe56a..6b441ca 100644 --- a/프로젝트/수상한잡화점/개발/02_개발자관점_점검_v1.md +++ b/프로젝트/수상한잡화점/개발/02_개발자관점_점검_v1.md @@ -16,7 +16,7 @@ ## 1. 시뮬레이터 이원화 문제 🔴 → 🟡 해소 착수 -> **업데이트 (2026-04-14)**: PD님 지시로 기획실 Phase 3 HOLD 되었으며, 본 이슈 해소를 최우선 작업으로 착수. 상세 계획: `07_시뮬레이터_이원화_해소_착수계획_v1.md` +> **업데이트 (2026-04-14)**: PD님 지시로 기획실 Phase 3 HOLD 되었으며, 본 이슈 해소를 최우선 작업으로 착수. 상세 계획: `07_시뮬레이터_이원화_해소_착수계획_v1.md` **(→ 2026-04-17 아카이브됨, Unity MCP 전환 / [`시뮬레이터/01_아키텍처_v1`](../시뮬레이터/01_시뮬레이터_아키텍처_v1.md) 참조)** ### 현황 - 기획실은 Python으로 3개 시뮬레이터 구현 (`battle_sim.py`, `full_stage_sim.py`, `stage_sim_v2.py`) diff --git a/프로젝트/수상한잡화점/개발/07_시뮬레이터_이원화_해소_착수계획_v1.md b/프로젝트/수상한잡화점/개발/07_시뮬레이터_이원화_해소_착수계획_v1.md index f96aead..4acbe63 100644 --- a/프로젝트/수상한잡화점/개발/07_시뮬레이터_이원화_해소_착수계획_v1.md +++ b/프로젝트/수상한잡화점/개발/07_시뮬레이터_이원화_해소_착수계획_v1.md @@ -1,8 +1,14 @@ # 시뮬레이터 이원화 해소 착수계획 (v1) +> 🔴 **2026-04-17 아카이브됨 — 대체 문서: [`프로젝트/수상한잡화점/시뮬레이터/01_시뮬레이터_아키텍처_v1.md`](../시뮬레이터/01_시뮬레이터_아키텍처_v1.md)** +> +> 본 07 원안("Headless C# CLI 추출")은 2026-04-17 PD님 직접 지시로 **Unity MCP EditMode + 독립 어셈블리(`Assets/Sim/` + `NerdNavis.Sim.asmdef`) 방향으로 전환**됨. 전환 사유·기각 근거: `프로젝트/수상한잡화점/시뮬레이터/01~04` + `공유/소통/완료/2026-04-17_Unity_MCP_시뮬레이션_기술검토_개발팀.md`. +> +> **본문은 기각안 근거·당시 설계 실증으로 보존**. 차기 프로젝트에서 Unity 외 환경 고려 시 참고 자료로 활용 가능 (헌법 제1원칙 목표 2 원칙 B). + > **작성일**: 2026-04-14 > **작성자**: 개발실장 -> **우선순위**: 🔴 **최우선** — 기획실 Phase 3 HOLD 해제 조건 +> **우선순위**: 🔴 **최우선** — 기획실 Phase 3 HOLD 해제 조건 (당시) > **근거**: 02번 분석 문서 §1 (시뮬레이터 이원화 🔴), PD님 지시 (2026-04-14) > **관련 규칙**: 핵심 규칙 **C11 (개발 관점 원칙)**, **C5 (정보의 정직성)**, **C9 (AI 에이전트 조직 원칙 — 완성도 중심)** diff --git a/프로젝트/수상한잡화점/개발/08_전투시스템_SOT_v1.md b/프로젝트/수상한잡화점/개발/08_전투시스템_SOT_v1.md index e07c2e4..6238594 100644 --- a/프로젝트/수상한잡화점/개발/08_전투시스템_SOT_v1.md +++ b/프로젝트/수상한잡화점/개발/08_전투시스템_SOT_v1.md @@ -203,11 +203,11 @@ Set_StatusEffect(pdData.Get_SoSData(pdData.Hitter), this); --- -## 4. 터치 방어 메커닉 (Q-P1) +## 4. 터치 방어 메커닉 (Q-P1 → Q-P2) ### 4.1 결론 -**플레이어 터치 입력으로 방어가 발동된다 — 그러나 현재 확인된 경로는 "타겟팅"이다.** 명시적 방어 입력 윈도우는 **(확인 필요)**. +**플레이어 터치 입력으로 방어가 발동된다 — 그러나 현재 확인된 경로는 "타겟팅"이다.** 명시적 방어 입력 윈도우는 ~~(확인 필요)~~ → **✅ 실측 확정 (2026-04-17 #37 Q-P2 정밀 2차)**: `UITouchHandler.cs` `IPointerDownHandler`·`IPointerUpHandler`·`IPointerExitHandler` 인터페이스로 구현. `IngameUIManager.cs:39` `m_PCDefence.Set(m_PCActor.Play_Defence, m_PCActor.Release_Defence, null)` 바인딩. **터치 Down↔Up 구간 동안 지속되는 상태 효과**. 근거: [`공유/소통/완료/2026-04-17_Phase0-C_QP2_정밀2차_응답서.md`](../../../공유/소통/완료/2026-04-17_Phase0-C_QP2_정밀2차_응답서.md). ### 4.2 구현 @@ -228,7 +228,7 @@ void Update() - `PCActor.Play_Defence()` `PCActor.cs:148~154`: 방어 애니메이션 실행 - `PCActor.Release_Defence()` `PCActor.cs:155~161`: 방어 해제 -- 실제 호출부 **(확인 필요)** — UI 버튼/입력 윈도우 연결 지점 미확인 +- 실제 호출부 ~~(확인 필요)~~ → **✅ 실측 확정 (#37)**: `IngameUIManager.cs:39` — `m_PCDefence.Set(...)` 으로 `UITouchHandler` 이벤트가 `Play_Defence`/`Release_Defence` 에 바인딩. `Update()`에서 `m_onHold?.Invoke()` 지속 호출 (현재 no-op). ### 4.4 방어 성공 효과 (`Actor.cs:515~519`) @@ -244,6 +244,21 @@ if (ActorStatus == eActorStatus.Defecne) - 절대: `PCDefence` (`Actor.cs:775`, `table_GlobalValue`) - 비율: `PCDefence_Mul` (`Actor.cs:783`) +#### ✅ 실측 확정 수치 (2026-04-17 #37 Q-P2 정밀 2차) + +| 항목 | 기획 초기 가정 | **실측 확정값** | 근거 | +|------|---------------|---------------|------| +| 피해 감소 비율 | 50% | **30%** (`PCDefence_Mul = 0.3`) | `GlobalValue.json` — `{"s_ID": "PCDefence_Mul", "n_Value": "0.3"}` | +| 고정 절대 감소 | 미정 | **1** (`PCDefence = 1`) | `GlobalValue.json` + `Actor.cs:775` | +| 지속 형태 | 단일 공격 바인딩 가정 | **지속형 상태 효과** (터치 Down↔Up 유지 동안 반복 적용) | `UITouchHandler.cs` + `IngameUIManager.cs:39` | +| 쿨다운 | 미정 | **없음** (즉시 재사용) | `UITouchHandler.cs`·`PCActor.cs:148-162` 전수 확인 | +| 방어 중 공격 | 미정 | **불가** (DPS 0) | `Actor.cs:4500` — 공격 프레임 return | +| 방어 중 피격 애니 | 미정 | **차단** (Play_Hit 조기 return) | `PCActor.cs:133` | +| 적용 공격 종류 | 미정 | **Melee / Ranged 공통** | `Actor.cs:782-783` 단일 분기 | +| Mob 방어 메커닉 | 미정 | **부재** | `MobActor.cs` override 전수 확인 결과 부재 | + +**근거 응답서**: [`2026-04-17_Phase0-C_QP2_정밀2차_응답서.md`](../../../공유/소통/완료/2026-04-17_Phase0-C_QP2_정밀2차_응답서.md) (#37 PD 지시). **기획 초기 가정("50%")은 추적성 보존을 위해 유지**(원칙 1), 실측 수치로 전환하여 밸런스 작업은 0.3 기준으로 진행. + --- ## 5. 몬스터 배치 · 스폰 패턴 (Q-P2) @@ -372,9 +387,9 @@ SOT를 완전 확정하려면 다음 항목이 추가로 필요. - [ ] `table_GlobalValue` 실제 값 덤프 (PCDefence, PCDefence_Mul, PC_ProjectileSpeed 등) - [ ] `eCardType.G1_* ~ G5_*` 200+개 효과 전수 맵 (효과 종류별 분류표) - [ ] 상태이상 중첩 규칙 명문화 (Stun/Freezing 등 CC 상호작용) -- [ ] PC 방어 입력 경로 특정 (UI 버튼 vs 터치 윈도우) -- [ ] Q-P1 응답서 확정 — 터치 방어 구조 최종 확인 -- [ ] Q-P2 응답서 확정 — 패턴별 배치 예시 생성 +- [x] PC 방어 입력 경로 특정 (UI 버튼 vs 터치 윈도우) — **완료 (2026-04-17 #37)**: `UITouchHandler` 기반 터치 윈도우, `IngameUIManager.cs:39` 바인딩 +- [x] Q-P1 응답서 확정 — 터치 방어 구조 최종 확인 — **완료 (2026-04-17 #37 Q-P2 정밀 2차)**: [응답서](../../../공유/소통/완료/2026-04-17_Phase0-C_QP2_정밀2차_응답서.md) 참조 +- [ ] Q-P2 응답서 확정 — 패턴별 배치 예시 생성 (본 항목은 몬스터 배치 패턴 예시 별개 작업) - [ ] Q-P3 응답서 확정 — 보스10002 시뮬 결과 포함 - [ ] 핫패스 성능 프로파일 (Get_Dmg 호출/프레임, ObscuredInt 오버헤드) - [ ] 위 7.5 버그 냄새 재현 테스트 diff --git a/프로젝트/코어프레임워크/02_수상한잡화점_추출대상_v1.md b/프로젝트/코어프레임워크/02_수상한잡화점_추출대상_v1.md index 0f4120a..46f0bcc 100644 --- a/프로젝트/코어프레임워크/02_수상한잡화점_추출대상_v1.md +++ b/프로젝트/코어프레임워크/02_수상한잡화점_추출대상_v1.md @@ -1,5 +1,11 @@ # 수상한 잡화점 — NerdNavis.Framework 추출 대상 선별 +> 🟢 **2026-04-17 완료 실적 아카이브 — Tier 1 16/16 반영 종료** +> +> 본 문서는 수상한 잡화점 소스에서 코어 프레임워크로 추출할 대상을 식별한 **원 가이드**로, Tier 1 기반 Core 4종 + Attribute 3종 + Util 6종 + Event 2종 + Container 3종 + Data 5종 = **총 19 파일·16 모듈 구현 완료** 시점(2026-04-17)에 "완료 실적" 성격으로 전환됨. 각 추출 항목은 아래 본문에서 구현 위치 역참조로 연결됨 (📦 표기). 구현 상세는 [`코어코드/NerdNavis.Framework/CHANGELOG.md`](../../코어코드/NerdNavis.Framework/CHANGELOG.md) 참조. +> +> 차기 프로젝트에서 Tier 2(Addressable·UGUI·Security)·Tier 3(Network) 추가 추출 시 본 문서 구조(A/B/C/D 등급 분류·변형 포인트·네이밍 규칙)를 재사용 가능 (헌법 제1원칙 목표 2 원칙 A). + > **작성일**: 2026-04-14 > **상위 문서**: `01_아키텍처_개요_v1.md` > **목적**: 수상한 잡화점 Unity 프로젝트 코드에서 신규 코어로 편입할 범용 패턴 식별·분류 @@ -21,21 +27,35 @@ ### A. 즉시 추출 (6개) -| # | 원본 | 줄 수 | 신규 위치 | 변형 포인트 | -|---|------|------|----------|------------| -| 1 | `My/MyCoroutine.cs` | 52 | `NerdNavis.Core.Coroutine.CoroutineRunner` | 기존 NerdNavisCore `CoroutineHandler`와 통합, 일시정지·재시작·중복방지 1종 API | -| 2 | `My/CryptoUtil.cs` | 86 | `NerdNavis.Security.CryptoUtil` (Tier 3 합류 시점) | **AES 키 하드코딩 제거 필수**, `ICryptoProvider` 인터페이스 뒷받침, 키 주입 방식 | -| 3 | `Addressable/AddrHandleBase.cs` | 102 | `NerdNavis.Addressable.AddressableHandle` (Tier 2) | 참조 카운팅·Preload/Unload 정책 부가 | -| 4 | `Addressable/AddressableReleaseSelf.cs` | 8 | `NerdNavis.Addressable.AutoReleaseComponent` (Tier 2) | OnDestroy 훅 재작성, 주석처리 코드 제거 | -| 5 | `UGUI/Util/SafeArea.cs` | 17 | `NerdNavis.UI.Components.SafeAreaBorder` | 기존 UIToolkit 버전과 병존, UGUI RectTransform 대응 | -| 6 | `Manager/ErrorLogHookManager.cs` | 42 | `NerdNavis.Core.Util.Log` 내부 훅 | `Log` 카테고리·필터와 통합, `#if FGB_LIVE` 같은 프로젝트 플래그 제거 | +| # | 원본 | 줄 수 | 신규 위치 | 변형 포인트 | 구현 상태 | +|---|------|------|----------|------------|---------| +| 1 | `My/MyCoroutine.cs` | 52 | `NerdNavis.Core.Coroutine.CoroutineRunner` | 기존 NerdNavisCore `CoroutineHandler`와 통합, 일시정지·재시작·중복방지 1종 API | ✅ 2026-04-16 — 📦 `Runtime/Core/Coroutine/CoroutineRunner.cs` | +| 2 | `My/CryptoUtil.cs` | 86 | `NerdNavis.Security.CryptoUtil` (Tier 3 합류 시점) | **AES 키 하드코딩 제거 필수**, `ICryptoProvider` 인터페이스 뒷받침, 키 주입 방식 | ⏸ Tier 3 대기 | +| 3 | `Addressable/AddrHandleBase.cs` | 102 | `NerdNavis.Addressable.AddressableHandle` (Tier 2) | 참조 카운팅·Preload/Unload 정책 부가 | ⏸ Tier 2 대기 | +| 4 | `Addressable/AddressableReleaseSelf.cs` | 8 | `NerdNavis.Addressable.AutoReleaseComponent` (Tier 2) | OnDestroy 훅 재작성, 주석처리 코드 제거 | ⏸ Tier 2 대기 | +| 5 | `UGUI/Util/SafeArea.cs` | 17 | `NerdNavis.UI.Components.SafeAreaBorder` | 기존 UIToolkit 버전과 병존, UGUI RectTransform 대응 | ⏸ Tier 2(UI) 대기 | +| 6 | `Manager/ErrorLogHookManager.cs` | 42 | `NerdNavis.Core.Util.Log` 내부 훅 | `Log` 카테고리·필터와 통합, `#if FGB_LIVE` 같은 프로젝트 플래그 제거 | ✅ 2026-04-16 — 📦 `Runtime/Core/Log/` 통합 | ### B. 프레임워크 래핑 (2개) -| # | 원본 | 줄 수 | 신규 위치 | 변형 포인트 | -|---|------|------|----------|------------| -| 7 | `Template/MonoBehaviourSingletonTemplate.cs` | 30 | `NerdNavis.Core.Patterns.MonoSingleton` | 4종 싱글톤(Sync/Async/Ready/Inner) 통합 (01문서 4-1 참조). `MonoBehaviourSingletonuScrollViewMgr` 같은 변종 제거 | -| 8 | `UGUI/BackKey/BackKeyAdd.cs` | 67 | `NerdNavis.UI.UGUI.BackKeyHandler` | `BackKeyMgr` 싱글톤 의존을 구독 패턴으로 재설계, 스택 기반 백키 처리 | +| # | 원본 | 줄 수 | 신규 위치 | 변형 포인트 | 구현 상태 | +|---|------|------|----------|------------|---------| +| 7 | `Template/MonoBehaviourSingletonTemplate.cs` | 30 | `NerdNavis.Core.Patterns.MonoSingleton` | 4종 싱글톤(Sync/Async/Ready/Inner) 통합 (01문서 4-1 참조). `MonoBehaviourSingletonuScrollViewMgr` 같은 변종 제거 | ✅ 2026-04-16 — 📦 `Runtime/Core/Patterns/MonoSingleton.cs` + `ServiceLocator.cs` | +| 8 | `UGUI/BackKey/BackKeyAdd.cs` | 67 | `NerdNavis.UI.UGUI.BackKeyHandler` | `BackKeyMgr` 싱글톤 의존을 구독 패턴으로 재설계, 스택 기반 백키 처리 | ⏸ Tier 2(UI) 대기 | + +### 🆕 2026-04-17 Tier 1 확장 구현 (본 원 가이드 범위 외 추가 추출) + +Tier 1 완결을 위해 원 가이드에 없던 모듈 9종을 추가 설계·구현. 수상한잡화점 소스 역추적이 아닌 **차기 프로젝트 범용성을 목적으로 한 신규 설계** (C11 범용성 원칙). + +| 범주 | 모듈 | 구현 위치 | 근거 설계 | +|------|------|----------|---------| +| **Attribute** 3종 | `ReadOnlyAttribute`·`ShowIfAttribute`·`ArrayTitleAttribute` | 📦 `Runtime/Core/Attribute/` | 인스펙터 UX 공통 패턴 | +| **Util** 6종 | `EnumToInt`(#12 일반화)·`EnumEx`·`FormatEx`·`MathEx`·`KeyMaker`·`ValidationEx`(#9 일반화) | 📦 `Runtime/Core/Util/` | 박싱 회피 `Unsafe.As<,>`, `:` 구분자 표준, 순수 BCL | +| **Event** 2종 | `EventBus`·`Raw/RawEventBus` | 📦 `Runtime/Core/Event/` | `04_Tier1_3종_상호작용_설계_v1.md` §3 | +| **Container** 3종 | `ObservableList`·`ObservableDictionary`·`ObservableQueue` | 📦 `Runtime/Core/Container/` | 기존 `UniList`·`UniEventList`·`UniObserverList` 3종 통합 대체, 세분화 이벤트 | +| **Data** 5종 | `IDataRow`·`DataTable`·`DataTableSO`·`DataTableLoader`·`DataTableLoadedEvent` | 📦 `Runtime/Core/Data/` | 기존 `MasterTableBase` 재설계, 제네릭 키, RFC 4180 최소 CSV + JsonUtility | + +**테스트**: NUnit 기반 총 19+ 파일 (`Tests/Runtime/Core/{Attribute,Util,Event,Container,Data}/*Tests.cs`). ### C. 선별 추출 (4개 — 범용 메서드만 취함)