wip: phase_z2 evidence 파이프라인 + matching 실험(phase2~26) + 프론트 trace 패널 진행분 스냅샷
- src: phase_z2 composition/mapper/pipeline/placement_planner/retry, ai_fallback(prompts/schema/validate), mdx_text_atoms 신규 - Front: PipelineTracePanel 신규, FramePanel/SlideCanvas/Home/designAgentApi 등 갱신 + 테스트 4종 추가 - templates/phase_z2: catalog(component_expansion_registry, node_slot_mapping 신규), frames, families, slide_base 갱신 - tests/matching: phase2~26 매칭 실험 스크립트·리포트·온톨로지 전체 (미커밋 진행분) - tests: b4_v4 evidence, task5~28.5 시리즈, regression(imp95 baseline) 등 신규 테스트 대량 추가 - docs/reference: MDX 구조 인벤토리, MDX→Frame 구조 계약 문서 - scripts: mdx 계약/parity/coverage/viewport 체크, gitea comment, run sync 유틸 - .gitignore: tmp*.json, chromedriver, .orchestrator, *.pkl, Front_test* 등 임시/스냅샷 제외 미완성 작업의 보존용 스냅샷 커밋 (2026-07-02) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,147 @@
|
||||
# templates_v1 + _COMPAT 구조 기준 갭 감사
|
||||
|
||||
_V3 의 "대안 탐색" 역할이 현재 세팅에서 왜 약한지 수치/사례로 규명. C.2 taxonomy v2 설계의 근거 자료._
|
||||
|
||||
## 1. _COMPAT 커버리지 — V3 구분력의 근본 한계
|
||||
|
||||
- 전체 가능 쌍: **11 MDX layouts × 30 Figma layouts = 330 쌍**
|
||||
- _COMPAT 에 실제 정의된 쌍: **86 / 330 (26.1%)**
|
||||
- 정의 안 된 쌍 (fallback 0.15): **244 쌍 (73.9%)**
|
||||
|
||||
### MDX layout 별 커버리지
|
||||
|
||||
| MDX layout | _COMPAT 정의 쌍 | 커버 Figma 유형 | 총 유형 | 커버리지 | fallback 유형 수 |
|
||||
|---|---:|---:|---:|---:|---:|
|
||||
| `3col-parallel` **[섹션 03-1, 01-1, 02-1]** | 12 | 9 | 30 | 30.0% | 21 |
|
||||
| `cards-4` | 7 | 5 | 30 | 16.7% | 25 |
|
||||
| `compare-2banner` **[섹션 03-2]** | 12 | 10 | 30 | 33.3% | 20 |
|
||||
| `compare-2col` | 12 | 10 | 30 | 33.3% | 20 |
|
||||
| `compare-rows` **[섹션 01-2]** | 8 | 6 | 30 | 20.0% | 24 |
|
||||
| `multi-parallel` | 8 | 6 | 30 | 20.0% | 24 |
|
||||
| `multi-section` | 6 | 5 | 30 | 16.7% | 25 |
|
||||
| `persona-3col` **[섹션 02-2.2]** | 10 | 7 | 30 | 23.3% | 23 |
|
||||
| `single-column` **[섹션 02-2.1]** | 17 | 14 | 30 | 46.7% | 16 |
|
||||
| `table-2col` | 9 | 7 | 30 | 23.3% | 23 |
|
||||
| `table-3col` | 8 | 7 | 30 | 23.3% | 23 |
|
||||
|
||||
## 2. MDX layout 별 "대안 탐색" 풍부도
|
||||
|
||||
각 MDX layout 에 대해 _COMPAT 에서 compat ≥ 0.7 인 Figma layout 이 몇 개 있나.
|
||||
값이 작으면 그 MDX 구조에 "대안이 없음" — V3 가 대안을 제시할 재료가 부족한 상태.
|
||||
|
||||
| MDX layout | 고호환 (≥0.7) | 중 (0.4~0.7) | 저 (<0.4) |
|
||||
|---|---:|---:|---:|
|
||||
| `3col-parallel` | 4 | 7 | 1 |
|
||||
| `cards-4` | 4 | 3 | 0 |
|
||||
| `compare-2banner` | 7 | 2 | 3 |
|
||||
| `compare-2col` | 6 | 3 | 3 |
|
||||
| `compare-rows` | 4 | 4 | 0 |
|
||||
| `multi-parallel` | 4 | 4 | 0 |
|
||||
| `multi-section` | 3 | 3 | 0 |
|
||||
| `persona-3col` | 4 | 4 | 2 |
|
||||
| `single-column` | 5 | 12 | 0 |
|
||||
| `table-2col` | 5 | 3 | 1 |
|
||||
| `table-3col` | 4 | 4 | 0 |
|
||||
|
||||
## 3. structure_intent 분포
|
||||
|
||||
- 고유 intent 수: **10**
|
||||
- 전체 태그 수: 17
|
||||
- 1 프레임만 쓰는 고아 intent: 6 — 많음 (구조 재사용 약함)
|
||||
|
||||
| intent | 빈도 | 프레임 |
|
||||
|---|---:|---|
|
||||
| `multi_attribute_comparison` | 5 | 18, 23, 24, 30, 31 |
|
||||
| `concept_comparison` | 2 | 18, 23 |
|
||||
| `problem_diagnosis` | 2 | 28, 17 |
|
||||
| `industry_comparison` | 2 | 30, 31 |
|
||||
| `requirement_list` | 1 | 13 |
|
||||
| `persona_benefit` | 1 | 14 |
|
||||
| `process_product_split` | 1 | 29 |
|
||||
| `transformation_story` | 1 | 29 |
|
||||
| `category_comparison` | 1 | 24 |
|
||||
| `requirement_or_pillar` | 1 | 20 |
|
||||
|
||||
**판정**: 10개 intent, 32 프레임 — controlled vocabulary 느낌은 있으나 어휘 자체가 풍부하지 않음. 새 MDX 유형이 오면 기존 intent 에 억지로 매핑해야 할 가능성.
|
||||
|
||||
## 4. slot 체계
|
||||
|
||||
- 고유 slot id: **146**
|
||||
- 프레임당 slot 수: 평균 6.3 · 최소 2 / 최대 10
|
||||
|
||||
### 가장 자주 쓰이는 slot id (Top 10)
|
||||
|
||||
| slot id | 프레임 수 |
|
||||
|---|---:|
|
||||
| `title` | 30 |
|
||||
| `col_a_label` | 6 |
|
||||
| `col_b_label` | 6 |
|
||||
| `rows` | 5 |
|
||||
| `col_c_label` | 3 |
|
||||
| `pillar_1_label` | 2 |
|
||||
| `pillar_2_label` | 2 |
|
||||
| `pillar_3_label` | 2 |
|
||||
| `category_1_label` | 2 |
|
||||
| `category_2_label` | 2 |
|
||||
|
||||
## 5. V3 실패 사례 분해 (Holdout 평가 기준)
|
||||
|
||||
V3 가 비합리/애매 판정 받은 섹션: 3 건.
|
||||
|
||||
### 01-1 — 1. 용어 정의
|
||||
|
||||
- MDX layout (코드 추출): `3col-parallel`
|
||||
- V3 판정: **ambiguous** (30점)
|
||||
|
||||
| | V3 가 올린 Top-1 | V1 이 잡은 1위 |
|
||||
|---|---|---|
|
||||
| Frame | 20 | 1 |
|
||||
| fig_layout | `3col-cards` | `circular-nodes` |
|
||||
| structure_compat | **0.9** | **0.15** |
|
||||
| structure_intent | ['requirement_or_pillar'] | [] |
|
||||
|
||||
**진단**: V3 가 올린 Frame 20 의 구조 호환도가 V1 의 합리적 1위 Frame 1 과 같거나 높음. 즉 _COMPAT 만으로는 **의미적으로 더 맞는 프레임을 골라낼 근거 부족**. structure_intent 나 content_affinity 같은 **2차 신호** 가 없어서 동일 layout family 안에서 분별이 안 됨.
|
||||
|
||||
### 02-1 — 1. DX의 궁극적 목표
|
||||
|
||||
- MDX layout (코드 추출): `3col-parallel`
|
||||
- V3 판정: **irrational** (0점)
|
||||
|
||||
| | V3 가 올린 Top-1 | V1 이 잡은 1위 |
|
||||
|---|---|---|
|
||||
| Frame | 20 | 12 |
|
||||
| fig_layout | `3col-cards` | `cycle-3way` |
|
||||
| structure_compat | **0.9** | **0.15** |
|
||||
| structure_intent | ['requirement_or_pillar'] | [] |
|
||||
|
||||
**진단**: V3 가 올린 Frame 20 의 구조 호환도가 V1 의 합리적 1위 Frame 12 과 같거나 높음. 즉 _COMPAT 만으로는 **의미적으로 더 맞는 프레임을 골라낼 근거 부족**. structure_intent 나 content_affinity 같은 **2차 신호** 가 없어서 동일 layout family 안에서 분별이 안 됨.
|
||||
|
||||
### 02-2.1 — 2.1 업무 수행 과정(Process)의 변화
|
||||
|
||||
- MDX layout (코드 추출): `single-column`
|
||||
- V3 판정: **irrational** (0점)
|
||||
|
||||
| | V3 가 올린 Top-1 | V1 이 잡은 1위 |
|
||||
|---|---|---|
|
||||
| Frame | 3 | 11 |
|
||||
| fig_layout | `list-numbered` | `3-category` |
|
||||
| structure_compat | **0.85** | **0.15** |
|
||||
| structure_intent | [] | [] |
|
||||
|
||||
**진단**: V3 가 올린 Frame 3 의 구조 호환도가 V1 의 합리적 1위 Frame 11 과 같거나 높음. 즉 _COMPAT 만으로는 **의미적으로 더 맞는 프레임을 골라낼 근거 부족**. structure_intent 나 content_affinity 같은 **2차 신호** 가 없어서 동일 layout family 안에서 분별이 안 됨.
|
||||
|
||||
## 6. 결론 + taxonomy v2 설계 방향
|
||||
|
||||
### 주요 갭 3가지
|
||||
|
||||
1. **_COMPAT 커버리지 26.1% — 2/3 쌍이 fallback 0.15**. V3 의 "구분력" 자체가 약함. 수동 테이블이 아니라 **자동 계산 가능한 관계 그래프** 필요.
|
||||
2. **structure_intent 10개 — 어휘 얕음**. 같은 layout family 안에서 프레임 간 의미 구분 불가. **더 세분화된 의도 taxonomy + controlled vocabulary** 필요.
|
||||
3. **"대안 레이아웃" 필드 없음**. 현재 스키마는 "이 layout 은 무엇인가" 만 기술. "이 layout 이 못 담는 콘텐츠 유형 / 대체 가능한 layout" 을 추가해야 V3 가 대안 탐색을 할 수 있음.
|
||||
|
||||
### v2 taxonomy 에 추가할 필드 (제안)
|
||||
|
||||
- `content_affinity`: 이 layout 이 선호하는 콘텐츠 성격 enum (concept_definition / quantitative_compare / persona_benefit / process_steps / policy_requirements / ...)
|
||||
- `slot_semantic_role`: 각 slot 이 담는 의미적 역할 (주체/시점/원인/결과/예시/...)
|
||||
- `alternative_patterns`: 이 layout 의 대안 layout 목록 + 대체 조건
|
||||
- `structure_intent` controlled vocab 정의 (현재 free-form → enum)
|
||||
- layout 관계 그래프 (수동 _COMPAT → 필드 기반 자동 계산)
|
||||
Reference in New Issue
Block a user