diff --git a/docs/architecture/IMP-04-FRAME-SUITABILITY-MATRIX.md b/docs/architecture/IMP-04-FRAME-SUITABILITY-MATRIX.md index f939a72..8734efe 100644 --- a/docs/architecture/IMP-04-FRAME-SUITABILITY-MATRIX.md +++ b/docs/architecture/IMP-04-FRAME-SUITABILITY-MATRIX.md @@ -19,6 +19,27 @@ --- +## §0. Architecture context — 3-layer (Codex #15477 정정) + +본 matrix 의 모든 결정은 다음 3-layer 분리 위에 있음 : + +| layer | 역할 | 본 matrix 안 위치 | +|---|---|---| +| **V4** | matching basis / design-selection **authority**. keyword / content / structure / intent / frame suitability 평가 + 후보 ranking (use_as_is / light_edit / restructure / reject) | §1 V4 신호 / §3 frame ordering 의 기초 | +| **figma_to_html** | rich source / evidence layer. visual hierarchy / assets / layer structure / geometry / source intent / provenance | §1 resource inventory / §3 per-frame audit | +| **Phase Z** | runtime orchestration / assembly / recovery layer. V4 후보 consume → slide/zone/content flow assemble. fit / 가벼운 repair / resize / artifact / preview / reject routing / popup / AI fallback | §3 mapping proposal / §4 Track A activation | + +**핵심** : +- ❌ "Phase Z = matching basis" 는 **잘못된 framing** (자체 round 26 의 자체 정정 사항) +- ✅ "V4 = matching authority. figma_to_html = source evidence. Phase Z = runtime projection" 이 정확한 분리 +- IMP-04 의 작업 (catalog 등록 / partial 작성 / runtime activation) 은 Phase Z 영역. 단 *matching legitimacy* 는 V4 에서. *frame metadata* 는 figma_to_html 에서 + +→ 본 matrix 의 *비교/결정* 은 *3-layer 분리* 전제. 2-layer dichotomy 표현이 잔존하면 *wording fix 대상*. + +--- + +--- + ## §1. 요약 통계 | axis | count | @@ -161,6 +182,27 @@ priority 진행 순서 (자체 추천 — V4 신호 ↑ 우선, builder 재사 > > F1/F2/F3 = review escalation guide. *first refinement 차단 gate 아님*. trigger source = 보통 Codex review (Claude self-trigger 도 가능). +> **Fix 7** (Codex #15477 + #15485 — 4-class failure taxonomy as **primary**) : +> F1/F2/F3 는 *Phase Z 중심* 분류 (readiness / fit / scope conflate). Codex +> #15477 의 4-class 가 *V4 authority 보존 + readiness vs matching 분리* 측면에서 +> 더 정확 — 본 matrix 의 **primary 기술 분류**. +> +> | # | Codex 4-class | 의미 | 자체 F1/F2/F3 mapping | +> |---|---|---|---| +> | 1 | **adapter/runtime readiness issue** | partial / asset path / slot adapter / contract missing. *V4 ranking 유효*. runtime-not-ready 로 표기 + implementation issue 등록 | F1 의 일부 + F3 의 일부 | +> | 2 | **content-fit issue** | candidate plausible 단 overflow / 가벼운 edit 필요. `runtime_reject` / `fit_failed` / `needs_light_edit` reason 부여 | F1 의 일부 + F2 의 일부 | +> | 3 | **V4 ↔ figma_to_html mapping issue** | candidate metadata / source mapping 잘못. mapping correction issue 등록 | F2 의 일부 | +> | 4 | **popup/secondary content routing case** | main frame 강요 X. popup / secondary content 로 별도 routing 후 그 부분 따로 매칭/디자인 | (자체 prior frame 없음) | +> +> **사용 원칙** : +> - 새 runtime issue 발생 시 — 4-class 로 *primary classify*. F1/F2/F3 는 *secondary review/process severity* 로만. +> - V4 가 *틀린 게 아닌가* 같은 짐작 금지 — 먼저 4-class 분류해서 *V4 vs adapter vs fit vs routing* 분리. +> - 자체 prior history reclassification : +> - `556b448` (minimum viable persona) — class 1 (adapter readiness) +> - `2fcd8bb` (strict CSS-only refinement) — class 2 (content/asset policy fit) +> - `a1c06b7` (MDX02 chain dependency 발견) — class 1 (`construction_goals` catalog 미등록 = adapter readiness). *V4 logic 의 문제 아님*. construction_goals 등록 후 자연 해소 +> - 자체 round 26 "Phase Z = 실행 SoT" framing — wording error (matching authority = V4, *not* Phase Z) + ### Track B — visual-pending 12 frames > **Fix 2** (Codex #15345 — Track B wording 강화) : Track B 는 **exclusion / discard /