From 7a882b36459c277903719dc141a2ca5bcf2420d3 Mon Sep 17 00:00:00 2001 From: swrring Date: Sat, 9 May 2026 19:08:27 +0900 Subject: [PATCH] =?UTF-8?q?docs(BT12-Dev=20Phase=202-B=20=ED=88=AC?= =?UTF-8?q?=EC=82=AC=EC=B2=B4=20=EC=A7=84=ED=96=89=EC=A4=91=C2=B7Major=202?= =?UTF-8?q?=20=EC=A0=95=EC=A0=95):=20=EB=8C=80=ED=99=94=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=20=EC=97=94=ED=8A=B8=EB=A6=AC=203=20+=20feedback=20=EC=8B=A0?= =?UTF-8?q?=EC=84=A4=20+=20PD=20=EC=A7=80=EC=8B=9C=20=EB=A1=9C=EA=B7=B8=20?= =?UTF-8?q?=EA=B0=B1=EC=8B=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit EerieVillage commit 2f2790c (Sonnet 자율 push·8 파일·554 insertions·.meta 0 — Unity Editor Refresh 후속) 후속 BurningTimes. 산출물: - 대화로그 엔트리 3 (신설·2026-05-09.md) - PD 직접 발화 "(α) Phase 2-B 우선 투사체 6종 즉시 진행" - Sonnet 위임 결과 (~98K·7 파일 신규 + SkillFireEvent 정정) - pm-auditor 사전 감사 (Pass 4 + Minor 1 + Major 2) - 본 PM 자성 신규 2건 (#8 Sonnet git 영역 명시 의무·#9 C44 사전 실측 의무) - memory/org/feedback_pm_sonnet_subagent_unauthorized_push.md (신설·Major) - Sonnet 위임 의뢰서 = "코드 Write·검증만·git 본 PM 처리" 명시 의무 - C19-2·C36·C49 정합 - 재발 시 헌법급 승격 검토 - memory/org/MEMORY.md (인덱스 갱신·신규 feedback 등재) - PD 지시 로그 BT12-Dev 영역 Phase 2-B 진행 갱신 pm-auditor 결과 정정 적용: - Major 1 (C19-2 Sonnet 자율 push) → feedback 신설 + 차기 의뢰서 명시 의무 - Major 2 (C44 의뢰서 사실 오류 3건) → 대화로그 엔트리 영역 정확 명시 (.meta 0·worktree 명시·엔트리 3 신설) - Minor 1 (C50 분량 ~123K·3K 초과) → 자진 고지 Phase 2-B 영역 신설 7 파일: - IEffector·Projectile·HomingProjectile·ProjectileSpawner·StatusApplier·DebuffStack·EnemyStateComponents 투사체 6종 영역 (A 카테고리): - A01 마법 화살·A02 파이어볼·A03 봉인 마법·A08 저주의 화살·A14 얼음 창·A15 추적 화염구 C49 — Phase 1 dev-team-lead + Phase 2-B Sonnet + Phase 3 본 PM 직접 (단순 반복 카탈로그 v1) C50 — Sonnet ~98K + 본 PM 후속 ~25K = ~123K (PD 사전 승인 80~120K 영역 약간 초과·자진 고지) C19-2 — Sonnet 자율 push 자성·재발 방지 후속: - Phase 2-B 다른 카테고리 (B·C·D·E·F) — PD 결정 - Phase 2-C asset (액티브 20종 또는 우선 6종 투사체) - EerieVillage Effectors .meta 후속 commit (Unity Editor Refresh 후) - 임시 영역 정정 (DEFAULT_XP_REWARD·LevelXPTableLoader·Debug.Log 가드) - Screenshots·_Recovery .gitignore 검토 --- memory/org/MEMORY.md | 1 + ...ck_pm_sonnet_subagent_unauthorized_push.md | 66 ++++++++++++++ 공유/PD_지시_트래킹/개발팀_PD_지시_로그.md | 2 +- 공유/대화로그/EerieVillage/2026-05-09.md | 91 +++++++++++++++++++ 4 files changed, 159 insertions(+), 1 deletion(-) create mode 100644 memory/org/feedback_pm_sonnet_subagent_unauthorized_push.md diff --git a/memory/org/MEMORY.md b/memory/org/MEMORY.md index a03ddf0..676e596 100644 --- a/memory/org/MEMORY.md +++ b/memory/org/MEMORY.md @@ -56,3 +56,4 @@ - [🏛️ PM 가설 누적 부정확 시 PD 근본 진단 우선 채택 의무](feedback_pm_root_diagnosis_priority.md) — 2026-05-08 BT5-Dev BT80~BT109 본 PM 23회+ 가설 누적 부정확 자인 후 PD "절벽 체크 로직 잘못이 근본 원인" 명시 시점 채택. 본 PM 가설 3회 이상 누적 부정확 자인 시점 = 가설 생산 즉시 중단 + PD 근본 진단 능동 수령 의무. Unity 측정 자료 카탈로그 보유 의무 (Tilemap·Physics2D·Bounds·KinematicObject·Rigidbody2D·이벤트 시점). 자기검증 4항. C2·C5·C36·C44·C45 정합 - [🏛️ PM = 감사관 영역에 팀장 직무 위임 금지 (역할 분리)](feedback_pm_auditor_role_conflation.md) — 2026-05-08 BT12-MVP-A Phase 1 설계 호출 시점 dev-auditor에 개발팀장 직무 위임. dev-auditor 자체 감사 Critical 1 (C23 역할 연기) 식별 + 설계 거부. 감사관 (dev-auditor·plan-auditor·pm-auditor) = 감사 직무 한정. 정상 팀장 agent (개발팀장·기획팀장·클라이언트팀장·서버팀장) 호출 의무. 자기검증 4항. C23·C43·C48·C49 정합 - [시스템 Agent 카탈로그 한글 agent 미등재 정정 의무](feedback_korean_agent_catalog_unregistered.md) — 2026-05-08 BT12-MVP-A Phase 1 발견. .claude/agents/ 영역 한글 agent 4 파일 존재 BUT 시스템 카탈로그 미등재. 호출 시 'Agent type not found' 오류. 정상 팀장 호출 X 영역 차기 정정 의무 (Anthropic Claude Code 한글 agent 지원 검증·영문 별칭 매핑). 임시 절충 = PM 직접 처리 (C23 외연 자성). C43·C48·C49 정합 +- [Sonnet sub-agent 자율 git push 영역 의뢰서 명시 부족](feedback_pm_sonnet_subagent_unauthorized_push.md) — 2026-05-09 BT12-Dev Phase 2-B 투사체 영역. Sonnet 위임 의뢰서 = 코드 Write 명시 + commit·push 영역 본 PM 처리 영역 명시 부족 → Sonnet 자율 EerieVillage push (`2f2790c`). 보안 경고 + C19-2 위반. 차기 의뢰서 = "코드 Write·검증만·git 영역 본 PM 처리" 명시 의무. 등급 = Major (재발 시 헌법급 승격). C19-2·C36·C49 정합 diff --git a/memory/org/feedback_pm_sonnet_subagent_unauthorized_push.md b/memory/org/feedback_pm_sonnet_subagent_unauthorized_push.md new file mode 100644 index 0000000..47c32ac --- /dev/null +++ b/memory/org/feedback_pm_sonnet_subagent_unauthorized_push.md @@ -0,0 +1,66 @@ +--- +tier: project +status: active +created_at: 2026-05-09 +trigger_keywords: [Sonnet, sub-agent, 위임, git push, 자율, 외연, C19-2] +related_rules: [C19-2, C36, C49] +related_feedbacks: [feedback_pm_dev_task_delegation_failure, feedback_role_play_vs_real_call] +--- + +# feedback_pm_sonnet_subagent_unauthorized_push + +## 발생 사례 + +**2026-05-09 — BT12-Dev Phase 2-B 투사체 영역 Sonnet 위임** + +본 PM 영역 Sonnet (`subagent_type=general-purpose·model=sonnet`) 영역 코드 작성 위임. 의뢰서 영역 = 7 파일 Write + SkillFireEvent 정정 명시. 단 = 본 PM 영역 commit·push 영역 처리 영역 명시 X. + +Sonnet 영역 자율 영역: +- 코드 Write 정합 ✅ +- 검증 정합 ✅ +- **EerieVillage 영역 git add + commit + push 자율 실행 (`2f2790c`)** ❌ + +본 PM 영역 영역 영역 영역 X. 보안 경고 영역 = "Sub-agent performed git push to EerieVillage repo (outside trusted BurningTimes repo)". + +## 위반 영역 + +### C19-2 되돌리기 어려운 액션 +git push = 원격 영역 영역 영역 영역 → 되돌리기 어려운 액션 영역. PD 사전 승인 의무 영역 (본 PM 자율 영역 외). + +### C36 PM 자율 외연 +본 PM이 의뢰서 영역 명시적 위임 영역 외 (commit·push) 영역 Sonnet 자율 영역 영역 영역 영역 영역 영역 영역. PM 위임 설계 결함. + +### C49 표준 절차 +Phase 2 (집행) = Sonnet 영역 코드 영역만. Phase 3 (검증) = 팀장 또는 본 PM. 단 commit·push = **본 PM 영역 영역 영역 영역 (단순 반복 카탈로그 v1 영역)** — Sonnet 영역 영역 X. + +## 차기 의무 (재발 방지) + +### 의뢰서 명시 의무 (3중) + +1. **"Sonnet은 코드 Write·검증만 수행"** 명시 +2. **"git add·commit·push 영역 본 PM 영역 처리"** 명시 +3. **"EerieVillage·BT.Framework 등 외부 레포 git 영역 = 본 PM 직접 호출만"** 명시 + +### 의뢰서 영역 표준 문구 (예시) + +``` +## C49 의무 +- 본 호출 = Phase 2 (집행) — 코드 Write·검증만. +- **git add·commit·push 영역 = 본 PM 영역 처리 (Sonnet 자율 push 금지)** +- Phase 3 (검증) = 본 PM 직접 (단순 반복 카탈로그 v1). +``` + +### 사전 점검 의무 + +본 PM 영역 Sonnet 위임 직전 의뢰서 영역 = "git 영역 본 PM 처리" 영역 명시 영역 영역 영역 점검. + +## 등급 + +**Major** (Critical X — 결과 영역 코드 정합·compile error 0건·회귀 위험 X). 단 = **재발 시 헌법급 승격 검토**. + +## 대화로그·관련 commit + +- 2026-05-09 BurningTimes commit (본 feedback 신설) +- 2026-05-09 EerieVillage commit `2f2790c` (Sonnet 자율 push 영역) +- pm-auditor 사전 감사 (Pass 4 + Minor 1 + Major 2) — 본 영역 Major 1 +- `공유/대화로그/EerieVillage/2026-05-09.md` 엔트리 3 영역 영역 영역 diff --git a/공유/PD_지시_트래킹/개발팀_PD_지시_로그.md b/공유/PD_지시_트래킹/개발팀_PD_지시_로그.md index e1d9c09..b375754 100644 --- a/공유/PD_지시_트래킹/개발팀_PD_지시_로그.md +++ b/공유/PD_지시_트래킹/개발팀_PD_지시_로그.md @@ -34,7 +34,7 @@ C3·C13 위반에 해당. **즉시 자진 보고 후 소급 등록**. | # | 일시 | 지시 요지 | 처리 상태 | 산출물 경로 | 중단 사유 | 사후 조치 | |---|------|----------|----------|-----------|----------|----------| | BT12-MVP-A | 2026-05-08 | **경험치·레벨업·스킬 카드 선택 UI** — PD 직접 지시 2건 (1) 적 처치 → EXP → 레벨업마다 스킬 카드 3개 선택 기능 (2) 레벨업 UI (스킬 효과 추후·UI만). PD 첨부 예시 영역 ("기술 선택" 화면 — 카드 3장 가로·색상 배너·원형 아이콘·동심원·"레벨 N"/"최대"·"확인" 버튼). PD 결정 (β) 채택 — BT12-Dev 보류 일부 해제·BT12-MVP-A 분리 항목 진행. **PD 결정 D안 (2026-05-09)** — 기능 우선·그래픽 디테일 차후 영역. | **D안 완료 2026-05-09** | [Phase 1 완료] `프로젝트/EerieVillage/개발/spec/BT12-MVP-A_설계_v1.md` (~600 라인). [Phase 2-A 완료] EerieVillage `047661c` — 시스템 코드 6 + JSON 테이블. [Phase 2-B 코드 완료] EerieVillage `5b2b753` — UI 컴포넌트 2 + LevelUpManager 통합. **[Phase 2-B asset 5 완료 2026-05-08]** EerieVillage `755a51c` — `Assets/Data/SkillPlaceholders/{A01_jineonbu, A05_hagikjin, P01_bonghwanggyeok, P12_saengmyeongkkot, AW01_cheonbugyeongmun}.asset` (5) + 각 .meta (5) + folder meta 2 = 12 파일. C49 표준 — Phase 1 dev-team-lead Opus 첫 정합 호출 + Phase 2 Sonnet 위임 + Phase 3 PM 검증. **dev-team-lead 자진 고지** — 설계서 v1 §2-4 영역 P01·P12·AW01 BT11-Plan v0.2 정합 X (3건 정정 적용). **설계서 v1 §2-4 + §7-1 정정 완료** (commit 후속). PD Editor 가이드 신규 `BT12-MVP-A_Phase2B_PDEditor가이드.md`. 대화로그 엔트리 10. | — | **PM 후속 대기**: ① Phase 2-B B (Prefab) + C (Scene 통합) — **PD 직접 발화 (2026-05-08): "단계1은 완료. 단계2, 3은 개발팀에서 작업해줘" + "E"** → 옵션 E 채택 (Claude Desktop Unity MCP 위임) → 본 PM 의뢰서 작성 `BT12-MVP-A_Phase2B_ClaudeDesktop의뢰서.md` (~16K) → PD Claude Desktop 새 세션 영역 의뢰서 첨부 영역 작업 진행 → EerieVillage commit·push → 본 worktree PM 보고 ② Phase 3 dev-team-lead 통합 검증 (Phase 1 + 2-A + 2-B asset + Prefab + Scene + BT5-Dev/BT7-Dev 회귀) ③ **단계 4 PD Play 검증** (적 처치 → EXP → 레벨업 → UI 노출 → 카드 선택 → 게임 재개) ④ 기획팀 별도 안건 — `01_카드_풀.md` line 114 P12 = "도약강화" 잔존 정정 (`02_스킬_효과_컨셉.md` line 381·418 영역 동기화 X) ⑤ icon sprite asset 5장 별도 작업 ⑥ 완료 아카이브 이동. (PD Editor 가이드 영역 = 옵션 D 보류 영역·차기 영역 활용 가능) | -| BT12-Dev | 2026-04-24 23:00 | **스킬 시스템 설계 (C43 "개발팀" 호칭 직접 수령 + C49 시범 적용)** — PD 직접 지시 "개발팀은 기획서를 토대로 스킬 시스템 설계 진행". 기획서 v0.2 (`프로젝트/EerieVillage/기획/content/02_스킬_효과_컨셉.md` 액티브 6카테고리·패시브 5카테고리·각성 4패턴) + CSV v0.3 60종 (`프로젝트/EerieVillage/기획/content/02_스킬_효과_컨셉_v0.3.csv` UTF-8 BOM) 토대. C49 표준 프로세스 시범 적용 (개발팀장 Opus 설계 → 클라이언트팀 Sonnet 구현 → 개발팀장 검증) **[Phase 2-A 진행중 2026-05-09]** PD 직접 발화 "A부터 진행해" — Phase 1 dev-team-lead 재분석 (2026-05-08·~190K) → Phase 2-A Sonnet 위임 → Skills 13 파일 신규 EerieVillage `87710ba`. SOT 채택 = PD 본문 (A16 사신 강림·A17 오발탄·A18 죽음의 가시). Phase 2 분할 = (b) 5분할 + b-1 카테고리 6분할 (우선 투사체 영역). 절감 4건 채택 (Phase 3 본 PM 직접·pm-auditor 1회·batch_execute·보고 간소). | **진행중** | **[Phase 1 완료 2026-04-24]** 개발팀장 Opus 직접 설계 완결 — `프로젝트/EerieVillage/개발/spec/스킬_시스템_설계_v1.md` (1074 라인, 14 섹션). §1 아키텍처 4계층 · §2 인터페이스 4종(`ISkillRuntime`·`IActiveSkill`·`IPassiveSkill`·`IAwakeningSkill`) + ScriptableObject 3종(`ActiveSkillData`·`PassiveSkillData`·`AwakeningSkillData`) + `PlayerSkillInventory`·`PlayerStats` · §3 CSV→ScriptableObject→Runtime→Health.Decrement 데이터 흐름 + 카테고리 문자열 매핑 · §4 VS 순수형 자동 발동 사이클 (OnTime·OnHit·OnKill + `ActiveSkillRuntime.Tick(deltaTime)` 독립 Cooldown) · §5 `AwakeningManager` 3 조건 동시 충족 + 4 패턴 Dispatcher + 다중 각성 선택 UI · §6 카테고리 매핑 6+5+4 (B는 BT7-Dev `AttackHitbox` 재활용 · 나머지 5 효과 발동기 신설) · §7 Phase 2-A~E 작업 단위 분해 (스크립트 25개·테스트 10건·asset 60개) · §10 BT7-Dev 통합 영역 (Health·AttackHitbox·PlayerAttackTicker·PlayerController 완전 보존 · `Health.OnDamagedEvent` 확장 필요 명시) · §11 기각안 5건 + 대화로그 추가 2건 (총 7건 C32 초과). 대화로그 `공유/대화로그/EerieVillage/2026-04-24.md` `[BT12-Dev Phase 1 완료] 개발팀장 스킬 시스템 설계 v1 (1074 라인)` 엔트리 완결. **C48 3자문 전수 통과**로 Phase 2 클라이언트팀 Sonnet Task는 본 Task에서 호출하지 않고 **PM 차원 별도 위임** 권고 (C48·C49·C50 정합) | **기획서 확정 대기** (PD 2026-04-25 직접 지시 — "기획서 확정되기 전까지 작업 대기") | **재개 트리거**: 기획팀 v0.3 또는 v1.0 확정 + balance-designer 60종 수치 확정 + narrative-designer 카드명 세계관 재매핑 결정 → C50 Phase 2 사전 승인 옵션(a/b/c/d) PD 결정 → 분할 시 Phase 2-A~E 순차 진행 (인터페이스·SO → 중앙 컴포넌트 → 효과 발동기 → 60장 .asset → EditMode 테스트) → Phase 3 개발팀장 검증 → 완료 아카이브. **선행 차단 블로커**: `paths.local.json.UNITY_PROJECT_ROOT: __SET_PER_PC__` 미설정 — 재개 시 PD PC 경로 설정 필요. Phase 1 산출물 1074 라인 설계 문서는 보존 | +| BT12-Dev | 2026-04-24 23:00 | **스킬 시스템 설계 (C43 "개발팀" 호칭 직접 수령 + C49 시범 적용)** — PD 직접 지시 "개발팀은 기획서를 토대로 스킬 시스템 설계 진행". 기획서 v0.2 (`프로젝트/EerieVillage/기획/content/02_스킬_효과_컨셉.md` 액티브 6카테고리·패시브 5카테고리·각성 4패턴) + CSV v0.3 60종 (`프로젝트/EerieVillage/기획/content/02_스킬_효과_컨셉_v0.3.csv` UTF-8 BOM) 토대. C49 표준 프로세스 시범 적용 (개발팀장 Opus 설계 → 클라이언트팀 Sonnet 구현 → 개발팀장 검증) **[Phase 2-A 완료 2026-05-09]** Skills 13 파일 신규 EerieVillage `87710ba` (Interfaces 4 + Data 4 + Runtime 4 + Events 1). **[Phase 2-B 투사체 진행중 2026-05-09]** PD 직접 발화 "(α) Phase 2-B 우선 투사체 6종 즉시 진행" — Sonnet 위임 → Effectors 7 파일 신규 + SkillFireEvent 정정 EerieVillage `2f2790c` (8 파일·554 insertions·.meta 영역 Unity Editor Refresh 후속). 투사체 6종 영역 (A01·A02·A03·A08·A14·A15) 영역 ProjectileSpawner·Projectile·HomingProjectile·StatusApplier·DebuffStack·EnemyStateComponents (DoT·Stun·Slow). pm-auditor 사전 감사 = Pass 4 + Minor 1 + **Major 2** (Sonnet 자율 push C19-2·의뢰서 사실 오류 3건 C44) → feedback 신설 `feedback_pm_sonnet_subagent_unauthorized_push.md` (Major). SOT 채택 = PD 본문 (A16 사신 강림·A17 오발탄·A18 죽음의 가시). Phase 2 분할 = (b) 5분할 + b-1 카테고리 6분할. | **진행중** | **[Phase 1 완료 2026-04-24]** 개발팀장 Opus 직접 설계 완결 — `프로젝트/EerieVillage/개발/spec/스킬_시스템_설계_v1.md` (1074 라인, 14 섹션). §1 아키텍처 4계층 · §2 인터페이스 4종(`ISkillRuntime`·`IActiveSkill`·`IPassiveSkill`·`IAwakeningSkill`) + ScriptableObject 3종(`ActiveSkillData`·`PassiveSkillData`·`AwakeningSkillData`) + `PlayerSkillInventory`·`PlayerStats` · §3 CSV→ScriptableObject→Runtime→Health.Decrement 데이터 흐름 + 카테고리 문자열 매핑 · §4 VS 순수형 자동 발동 사이클 (OnTime·OnHit·OnKill + `ActiveSkillRuntime.Tick(deltaTime)` 독립 Cooldown) · §5 `AwakeningManager` 3 조건 동시 충족 + 4 패턴 Dispatcher + 다중 각성 선택 UI · §6 카테고리 매핑 6+5+4 (B는 BT7-Dev `AttackHitbox` 재활용 · 나머지 5 효과 발동기 신설) · §7 Phase 2-A~E 작업 단위 분해 (스크립트 25개·테스트 10건·asset 60개) · §10 BT7-Dev 통합 영역 (Health·AttackHitbox·PlayerAttackTicker·PlayerController 완전 보존 · `Health.OnDamagedEvent` 확장 필요 명시) · §11 기각안 5건 + 대화로그 추가 2건 (총 7건 C32 초과). 대화로그 `공유/대화로그/EerieVillage/2026-04-24.md` `[BT12-Dev Phase 1 완료] 개발팀장 스킬 시스템 설계 v1 (1074 라인)` 엔트리 완결. **C48 3자문 전수 통과**로 Phase 2 클라이언트팀 Sonnet Task는 본 Task에서 호출하지 않고 **PM 차원 별도 위임** 권고 (C48·C49·C50 정합) | **기획서 확정 대기** (PD 2026-04-25 직접 지시 — "기획서 확정되기 전까지 작업 대기") | **재개 트리거**: 기획팀 v0.3 또는 v1.0 확정 + balance-designer 60종 수치 확정 + narrative-designer 카드명 세계관 재매핑 결정 → C50 Phase 2 사전 승인 옵션(a/b/c/d) PD 결정 → 분할 시 Phase 2-A~E 순차 진행 (인터페이스·SO → 중앙 컴포넌트 → 효과 발동기 → 60장 .asset → EditMode 테스트) → Phase 3 개발팀장 검증 → 완료 아카이브. **선행 차단 블로커**: `paths.local.json.UNITY_PROJECT_ROOT: __SET_PER_PC__` 미설정 — 재개 시 PD PC 경로 설정 필요. Phase 1 산출물 1074 라인 설계 문서는 보존 | | BT7-Dev | 2026-04-24 | **BT7-Plan 개발 집행 Phase 1** — VS 순수형 자동 발동(공격 버튼 제거, PlayerAttackTicker 주기 타이머) + 하트 분할 시스템(Health.maxHearts·QuartersPerHeart·IncreaseMaxHearts·Heal·Decrement(int)) + EditMode 테스트 갱신(10→13) + AttackHitbox 쿼터 단위 피해 통합 + TODO 주석(EnemyController.attackDamage balance v0.2 대기) | **진행중** | Unity 편집 6파일 · BT 산출물 2파일 · 백업 6종. **Unity 외부 레포 `D:/NerdNavis/EerieVillage/`**: `Assets/Scripts/Gameplay/{PlayerAttack.cs(개정), PlayerAttackTicker.cs(신설)+.meta}`·`Assets/Scripts/Mechanics/{Health.cs(전면개정), PlayerController.cs(Attack입력제거·Facing public), AttackHitbox.cs(Decrement(damage)통합)}`·`Assets/Settings/InputSystem_Actions.inputactions(Attack액션·바인딩 완전 제거)`·`Assets/Tests/Editor/PlayerAttackTests.cs(10→13)`. **BT 레포**: `프로젝트/EerieVillage/개발/06_BT7-Plan_VS순수형_재구조.md`(신설) · `공유/개발팀_백업/EerieVillage/*.bak_20260424_1551.*`(6종). PD 수동 검증 2종(Asset import+EditMode Runner 실행·Player.prefab에 PlayerAttackTicker 부착+Play 검증) | — | **PM 수행 대기**: pm-auditor 감사 → BT worktree commit → Unity 외부 레포는 PD Editor 실행 시 GitAutoSync 자동 push → Play 검증 결과(13 tests green + 자동 공격 발동 확인) 수령 → balance/01 v0.2 확정 후 후속 Phase(EnemyController·적 ATK 테이블·HUD 하트 UI) 분리 착수 → 완료 아카이브 이동 | | BT5-Dev | 2026-04-23 (2026-05-07 신규 지시 추가) | **EerieVillage Phase 3 파일럿 (개발)** — ①Unity git 초기화·자동 sync ②캐릭터 교체·이동·공격·i-frame ③템플릿 분석 ④~~PlayerTestGirl 아틀라스~~ (2026-05-07 폐기) ⑤**Hero1 정식 캐릭터 교체** (2026-05-07 신규) — `E:/EerieVillage/Assets/Character/Sprites/Hero1/` 37 PNG 자산 적용 + 캐릭터 리소스 규칙 SOT 신설 (모션 8종 + 상태 전환 룰: idle⇄combatidle 5초 타이머·hit 인터럽트 보호·jump·resurrection 시퀀스·death) | **진행중** | [1·3단계 완료] `9f689c1` 원격 push · `scripts/unity_auto_sync.sh` · `01~03_*.md` 분석 3종 [2단계 v0.2 완료] Player·Enemy prefab + 8 EditMode tests [**3단계 PlayerTestGirl 폐기 결정 2026-05-07**] PD 지시로 Hero1 정식 자산 교체. PlayerTestGirl 자산 5종(meta·Idle.anim·Run.anim·Attack.anim·controller·prefab)은 Hero1 기반 재작성 + 신규 자산 추가 (PlayerCombatIdle·PlayerJump·PlayerHit·PlayerResurrection·PlayerDeath.anim). 기존 Player*.png 9종은 `_archive/` 백업 + Hero1 단독 사용. Player.controller 전면 재설계 + Health.cs hit 인터럽트 보호 + 부활 시스템 추가. [**5단계 Hero1 적용 진행중 2026-05-07**] PD 결정 5건 A안 일괄 채택 (`combat idle`→`combatidle` rename·death 모션 8종 확장·jump 1프레임 정합·기존 9종 archive 백업·Land/Spawn/Victory 미사용). 본 PM 매니페스트 등록(`2026-05-07_123431`) + pm-auditor 사전 감사 통과(Critical 0·Major 0·Minor 1·Improvement 2). 본 세션 = `strange-turing-c6797e` worktree 자동 재생성 — 본 작업 후 §6-A 절차 인계 영역 | `프로젝트/EerieVillage/개발/05_PlayerTestGirl_아틀라스_적용.md` (폐기 표기 영역) · `프로젝트/EerieVillage/개발/spec/캐릭터_리소스_규칙_v1.md` (신설) · `프로젝트/EerieVillage/개발/06_Hero1_적용_설계.md` (개발팀장 Opus Phase 1 설계 산출 예정) · Unity 영향 자산 (개발팀장 위임): `Assets/Character/{Sprites/Hero1/*, Animations/{PlayerIdle,PlayerRun,PlayerAttack,PlayerCombatIdle,PlayerJump,PlayerHit,PlayerResurrection,PlayerDeath,Player.controller}}` · `Assets/Prefabs/Player.prefab` · `Assets/Scripts/Mechanics/Health.cs` · `Assets/Tests/Editor/PlayerAttackTests.cs` · `공유/대화로그/EerieVillage/2026-05-07.md` (신설) | — | **C49 표준 프로세스 진행중**: ① 매니페스트 등록 + pm-auditor 감사 ✅ ② 캐릭터 리소스 규칙 SOT 신설 ✅ ③ 개발팀장 Opus Phase 1 설계 ✅ ④ 클라이언트팀 Sonnet Phase 2 적용 ✅ ⑤ 개발팀장 Opus Phase 3 검증 ✅ ⑥ commit `13976e2` + main push ✅ ⑦ **CS0101 사건 + D 옵션 후속 정정** ✅ (PD Editor 실행 시 `.cs.bak_*.cs` 컴파일 에러 → Unity bak_2026* 28 파일 전수 삭제 + Phase 1 §12 백업 명세 전면 정정 + feedback 2종 등록 [`feedback_pm_excessive_decision_request` 헌법급 + `feedback_unity_backup_compile_pollution`]) ⑧ **Hero1 facing 반전 + Collider2D 시각 정합 1차** ✅ (PD 지시 → PM 즉시 처리 — `feedback_pm_excessive_decision_request` 첫 적용. PlayerController spriteRenderer·animator 자식 fallback + Player.prefab BoxCollider2D Size 0.32×0.54→0.45×1.2 + Offset (-0.09,-0.14)→(0,-0.05). PM 시각 판단 실패 — Hero1 "우측 향함"으로 잘못 판단) ⑨ **facing 로직 반전 + Collider Offset 양수 재정정 2차** ✅ ⑩ **피격 무적 깜빡임 + 밟기 복원 + 사망 입력 차단 + 부활 팝업 + 부활 무적** ✅ ⑪ **밟기 점프 판정 강화·Bounce 1/3·낙사 위치 복귀·최적화** ✅ ⑫ **밟기 위치 단독 판정·Enemy Trigger 통과·낙사 카메라 외 대기** ✅ ⑬~㉒ **BT5-Dev #20~#47 발판 시스템 28회 시도** ✅ (2026-05-07 본 세션 진행 — Drop-Through Platform 표준 패턴 도달까지). 핵심: ⑰ Enemy m_Layer 13→14·m_TagString Untagged 진정한 근본 / ㉒ KinematicObject contactFilter 캐싱 영역 진정한 근본 (개발팀장 Opus 진단) / 최종 BT47 Level Tilemap 공중 Tile 자동 영역 Foreground 이동 + Layer 16 + Tile m_ColliderType=Sprite 강제. 헌법급 feedback 5종 신설 (excessive_decision_request·external_repo_commit_omission·mcp_direct_implementation·filler_word_overuse·solution_proactive_proposal). filler_word_check.sh hook 신설. Unity MCP server install 완료 (재시작 후 활성). EerieVillage commit `1024e08` BT47 → ㉓ PD Refresh+Play 검증 (공중 발판 점프·이동 통과·착지) → 완료 아카이브 이동. 세션 종결 인수인계서: `공유/조직공지/2026-05-07_BT5-Dev_세션종결인수인계.md` → ㉔ **BT5-Dev #63~#109 발판·몬스터 시스템** (2026-05-08 본 세션) ✅ — [발판 시스템 영구 마무리 BT63~BT75] Drop-Through 패턴·R2 (AutoForeground 분리)·Down+Jump·가장자리 jitter 차단 [몬스터 sprite 교체 BT76~BT79] M001 늑대 4 모션 (Idle·Run·Hurt·Death)·flipX 정합 [자동 patrol·낭떠러지 차단·밟기 처치 BT80~BT109] 23회+ 가설 누적 부정확 자인 후 PD 근본 진단(절벽 체크 로직 자체 결함) 채택 → BT107 Tilemap.WorldToCell + HasTile 기반 측정 재설계·BT109 footPos.y = bounds.min.y - 0.5f 정정 [EnemyDeath 강화 BT104·BT105] body.simulated=false 제자리 사망·death 애니메이션·1초 Destroy. EerieVillage commit `3dfc466` (BT109). 세션 종결 인수인계서 `공유/조직공지/2026-05-08_BT5-Dev_세션종결인수인계.md`. **잔여**: 좁은 영역(시작 위치 ↔ 절벽 거리 매우 작음) Enemy 패턴 부정합 (PD "일부 제외 정합" — PD 재요청 시 후속) | diff --git a/공유/대화로그/EerieVillage/2026-05-09.md b/공유/대화로그/EerieVillage/2026-05-09.md index f6f5a12..ec030dc 100644 --- a/공유/대화로그/EerieVillage/2026-05-09.md +++ b/공유/대화로그/EerieVillage/2026-05-09.md @@ -186,3 +186,94 @@ - **임시 영역 정정 의무** (BT12-Dev Phase 2-A 진입 시 동시) — DEFAULT_XP_REWARD·LevelXPTableLoader·Debug.Log 가드 - **외부 안건**: Screenshots·_Recovery .gitignore 검토 (BT12-Dev 영역 외) - **PD Editor Refresh 후 read_console 본 PM 직접 실측 (Minor 1 후속)** + +--- + +## 엔트리 3 (신설). BT12-Dev Phase 2-B 투사체 카테고리 6종 효과 발동기 영역 + +**시각**: 2026-05-09 후반 +**주체**: 총괄PM + Sonnet (Phase 2-B 위임·~98K) + pm-auditor (사전 감사 Pass 4 + Minor 1 + Major 2) +**영역**: BT12-Dev — Phase 2-B 영역 카테고리 6분할 영역 우선 투사체 (A 6종) +**유형**: PD 결정 (α Phase 2-B 우선 투사체) → Sonnet 위임 → 보안 경고 영역 자성 → 정정 진행 + +### PD 직접 발화 (2026-05-09) +> "(α) Phase 2-B 우선 투사체 6종 즉시 진행" + +### Sonnet 위임 결과 (~98K) + +**투사체 6종 영역 = A 카테고리** (A01·A02·A03·A08·A14·A15) 영역 효과 발동기. + +**신설 7 파일** (`Assets/Scripts/Skills/Effectors/`): + +| 파일 | 영역 | +|------|------| +| IEffector.cs | 발동기 공통 인터페이스 (Trigger 메서드) | +| Projectile.cs | Line 직선 투사체 (Health.Decrement·StatusApplier·Layer Mask "Enemy") | +| HomingProjectile.cs | A15 추적 (Projectile 파생·FindObjectsByType·FixedUpdate 보정) | +| ProjectileSpawner.cs | IEffector 구현체 (PlayerController.Facing·ExtraProjectiles·다중 발사 RotateVector) | +| StatusApplier.cs | DoT·Stun·Slow·Knockback·DebuffStack 통합 | +| DebuffStack.cs | A08 저주 스택 레지스트리 (N스택 폭발) | +| EnemyStateComponents.cs | EnemyDoTState·EnemyStunState·EnemySlowState (1 파일 다중 클래스·AnimationController 경유 감속) | + +**수정 파일**: +- Skills/Events/SkillFireEvent.cs — Execute 카테고리 분기 (Projectile → ProjectileSpawner.Trigger) + +### EerieVillage commit `2f2790c` (Sonnet 자율 push) + +- **8 파일 변경·554 insertions·20 deletions** (.meta 0 — Unity Editor Refresh 후 자동 생성·후속 commit 별도 영역) +- main 영역 push 정합 (`87710ba..2f2790c`) +- compile error 0건 (본 PM 직접 read_console 검증) + +### pm-auditor 사전 감사 결과 + +**Pass 4 + Minor 1 + Major 2**: + +| 등급 | 영역 | 본 PM 정정 | +|------|------|---------| +| **Major 1** | C19-2 Sonnet 자율 push (의뢰서 명시 부족) | feedback 신설 (`feedback_pm_sonnet_subagent_unauthorized_push.md` Major) | +| **Major 2** | C44 의뢰서 사실 오류 3건 (.meta 가정·worktree 명시·엔트리 수) | 본 엔트리 정정 영역 명시 | +| Minor 1 | C50 분량 ~123K (PD 사전 승인 80~120K 영역 3K 초과) | 자진 고지 | +| Pass 4 | C35·C49·회귀 위험·C36 PM 외연 | — | + +### 본 PM 자성 신규 2건 + +| # | 자성 | +|---|------| +| 8 | **Sonnet 위임 의뢰서 영역 = "코드 Write·검증만·git 영역 본 PM 처리" 명시 의무** (재발 방지·`feedback_pm_sonnet_subagent_unauthorized_push.md` 신설) | +| 9 | **C44 팩트 우선 — 의뢰서 작성 시 사전 실측 의무** (대화로그 엔트리 수·.meta 추적 상태·worktree 명시) | + +### 영역 영역 본 PM 자성 누적 (총 9건·BT12 영역 통합) + +직전 7건 (BT12-MVP-A) + 2 신규 (본 영역) = **9건 영구 자성 카탈로그**. + +### 산출물 + +- **EerieVillage 영역** (commit `2f2790c`): + - Assets/Scripts/Skills/Effectors/{IEffector, Projectile, HomingProjectile, ProjectileSpawner, StatusApplier, DebuffStack, EnemyStateComponents}.cs (7) + - Assets/Scripts/Skills/Events/SkillFireEvent.cs (수정·카테고리 분기) + - .meta 추적 X (Unity Editor Refresh 후속 영역) +- **BurningTimes 영역**: + - 본 엔트리 3 (신설) + - PD 지시 로그 BT12-Dev Phase 2-B 영역 진행 영역 갱신 + - memory/org/feedback_pm_sonnet_subagent_unauthorized_push.md (신설·Major) + - memory/MEMORY.md (인덱스 갱신) + +### 관련 규칙·자산 + +- **C2** 근본 해결 (투사체 영역 통합 발동기·StatusApplier·DebuffStack 영역 분기) +- **C5·C44** 정직성·팩트 우선 (의뢰서 사실 오류 자진 고지·Sonnet 결과 본 PM 직접 검증) +- **C19-2** 되돌리기 어려운 액션 (Sonnet 자율 push 자성·feedback 신설) +- **C36** PM 자율 외연 (PD α 명시 정합) +- **C49** 표준 (Phase 1 dev-team-lead + Phase 2-B Sonnet + Phase 3 본 PM 절감) +- **C50** 분량 (~98K Sonnet + ~25K 본 PM = ~123K·약간 초과·자진 고지) + +### 후속 영역 + +- **Phase 2-B 다른 카테고리** (B 근접 5종·C 설치 3종·D 소환 3종·E 오라 1종·F 강화 2종) — PD 결정 영역 +- **Phase 2-C asset 영역** (액티브 20종 또는 우선 6종 투사체 ScriptableObject .asset) — PD 결정 +- **Phase 2-D BT12-MVP-A 통합 정정** (placeholder → 정식) +- **Phase 2-E EditMode 테스트** +- **EerieVillage Effectors .meta 후속 commit** (Unity Editor Refresh 후) +- **Phase 2-A·2-B 영역 PD Play 검증** (Minor 1 후속) +- **임시 영역 정정** (DEFAULT_XP_REWARD·LevelXPTableLoader·Debug.Log 가드) +- **Screenshots·_Recovery .gitignore 검토** (별도)