Files
C.E.L_Slide_test2/docs/architecture/IMP-04-FRAME-SUITABILITY-MATRIX.md
kyeongmin 6d338846b2 docs(IMP-04): clarify matrix tracks and review gates
- Add active-frame resource status and clarify catalog-active versus resource-complete.\n- Clarify Track B as visual-resource-pending inside the 32-frame scope, not exclusion.\n- Clarify Track A priority as execution order, not scope filter.\n- Add Codex review granularity and calibration failure modes for the first refinement.\n- Mark minimal CSS from analysis/texts as temporary placeholder only.
2026-05-13 10:07:41 +09:00

15 KiB
Raw Blame History

IMP-04 Frame Suitability Matrix (32 frames)

Phase Z runtime catalog 확장 (IMP-04) 의 per-frame 진단 + Phase Z mapping proposal. Codex #15337 + #15340 의 추천 32-frame schema suitability matrix 답. impl 전 prerequisite 자료.

본 matrix scope : Phase Z runtime catalog (executable projection) 으로의 mapping. matching schema canonical decision (Codex #15340 의 architectural question) 은 별 axis (IMP-05+) 이양 — 본 doc 에 포함 X.

Source-of-truth :

  • V4 evidence : tests/matching/v4_full32_result.yaml (32 unique template_ids, 320 judgments)
  • per-frame analysis : figma_to_html_agent/blocks/{frame_id}/analysis.md
  • per-frame visual : figma_to_html_agent/blocks/{frame_id}/{index.html,flat.md,assets/}

Generated : 2026-05-13 / scope-lock = Gitea #4 round 6 (32 frame all-in, remaining 28).


§1. 요약 통계

axis count
V4 32 unique templates 32
Active (이미 Phase Z 등록) 4
Remaining (본 issue 작업 대상) 28
analysis.md 보유 32/32
texts.md 보유 32/32
index.html 보유 (visual base) 20/32 — 12 missing
flat.md 보유 21/32 — 11 missing
assets/ 디렉토리 보유 20/32

Decision 분류 (본 matrix 결과) :

  • ACTIVE (4) — 이미 Phase Z catalog 활성
  • reusable-now (16) — index.html 보유 → Track A visual activation 가능
  • visual-pending (12) — index.html 부재 → Track B (별도 처리 필요)

Family 분포 :

family count examples
cards 12 persona-3col, cards-3-category, paired-rows-2x2, quadrant-4, ...
table 5 table-2col, table-3col, compare-rows, ...
compare 4 2col-paired-list, central-split-synthesis, banner-top-2col-bottom, cards-3-compare
diagram 5 cycle-3way-intersection, quadrilateral-relations, radial-diagram-5, ...
list 3 list-numbered-4, list-stacked-vertical, 3-column
map 1 full-page-map-banner
composite 1 central-5-goals
compare (별 grouping) rest

Cardinality 분포 (ideal) :

ideal count comment
2 5 compare-2-way (table-2col, banner-top-2col-bottom, etc.)
3 11 cards-3col, cards-3-category, list-3-column, persona-3col, ...
4 8 quadrant-4, paired-rows-2x2, cards-4-grid, ...
5 3 radial-5, central-5-goals, list-stacked-5
6 1 circular-nodes-6
1 1 full-page-map-banner

§2. ACTIVE 4 frames (이미 Phase Z 등록)

template_id frame_id fn family / layout builder resource status (A/T/I/F/S) partial
three_parallel_requirements 1171281190 13 list / 3-column items_with_role + pillar_item A T I F - f13b (157 lines)
process_product_two_way 1171281210 29 compare / banner-top-2col-bottom process_product_pair A T I F S f29b (294 lines)
bim_issues_quadrant_four 1171281193 16 cards / quadrant-4 quadrant_flat_slots + quadrant_item A T I F S f16b (223 lines)
three_persona_benefits 1171281191 14 cards / persona-3col items_with_role + quadrant_item A T I F S f14b (110 lines, refinement 필요 — index.html base 안 씀)

Clarification: ACTIVE means catalog-registered / runtime-active. It does not mean every active frame is A+T+I+F+S resource-complete. F13 is active but has no assets/ directory.


§3. Remaining 28 frames — Phase Z mapping matrix

각 frame 의 :

  • figma_to_html 자원 status (A=analysis.md, T=texts.md, I=index.html, F=flat.md, S=assets/) — - = 부재
  • V4 신호 (use_as_is/light_edit/restructure/reject)
  • Phase Z mapping proposal (source_shape, builder)
  • decision (reusable-now / visual-pending)

§3.1 reusable-now (16 frames — index.html 보유)

template_id fid fn family / layout card (ideal) slots V4 (UAI/LE/RS/RJ) proposed source_shape proposed builder decision
app_sw_package_vs_solution 1171281203 23 table / table-2col 2 4 0/0/1/9 top_bullets new (compare_table_2col) reusable-now
bigroom_system_components 1171281178 7 compare / 2col-paired-list 2 5 0/0/0/10 top_bullets process_product_pair (재사용?) or new reusable-now
bim_adoption_central_split 1171281208 27 compare / central-split-synthesis 2 5 0/0/2/8 top_bullets new (split-synthesis) reusable-now
bim_current_problems_paired 1171281194 17 cards / paired-rows-2x2 4 9 0/0/1/9 top_bullets quadrant_flat_slots 변형 or new reusable-now
bim_dx_comparison_table 1171281195 18 table / compare-rows 2 4 1/0/0/9 top_bullets new (compare_table_2col) reusable-now
construction_bim_three_usage 1171281182 11 cards / cards-3-category 3 7 1/0/1/8 top_bullets items_with_role + quadrant_item (재사용) reusable-now
construction_goals_three_circle_intersection 1171281189 12 diagram / cycle-3way-intersection 3 5 1/1/1/7 top_bullets new (cycle-intersect-3) reusable-now
dx_sw_necessity_three_perspectives 1171281198 20 cards / cards-3-header 3 7 0/2/1/7 top_bullets items_with_role + quadrant_item (재사용) reusable-now
engn_sw_three_types 1171281204 24 table / table-3col 3 5 0/1/0/9 h3_subsections new (compare_table_3col) reusable-now
info_management_what_how_when 1171281179 8 cards / 3-section-framework 3 7 0/0/0/10 top_bullets items_with_role + quadrant_item (재사용) reusable-now
model_specialized_engn_sw 1171281202 22 diagram / split-panel-numbered 3-4 5 0/0/1/9 top_bullets new (split-panel) reusable-now
overseas_bim_numbered_list 1171281174 3 list / list-numbered-4 4 5 0/0/0/10 top_bullets items_with_role 변형 (numbered) reusable-now
pre_construction_model_info_stacked 1171281180 9 list / list-stacked-vertical 5 (min 4 max 6) 3 0/0/0/10 top_bullets items_with_role (재사용, flexible card) reusable-now
solution_engn_split_diagram 1171281201 21 diagram / split-panel-diagram 4 (min 3 max 5) 4 0/0/3/7 top_bullets new (split-panel) reusable-now
sw_development_cycle_six_nodes 1171281172 1 diagram / circular-nodes-6 6 7 0/0/0/10 top_bullets new (circular-6) reusable-now
sw_reality_three_emphasis 1171281209 28 cards / title-plus-3-emphasis 3 7 0/0/0/10 top_bullets items_with_role + quadrant_item (재사용) reusable-now

§3.2 visual-pending (12 frames — index.html 부재)

template_id fid fn family / layout card (ideal) slots V4 (UAI/LE/RS/RJ) resource status decision
commercial_sw_four_categories 1171281205 25 cards / left-categories-right-logos 4 6 0/0/0/10 A T - - - visual-pending
compensation_complaint_map 1171281177 6 map / full-page-map-banner 1 2 0/0/0/10 A T - - - visual-pending
compensation_complaint_side_card 1171281176 5 cards / side-card-with-list 3 (min 3 max 5) 4 0/0/0/10 A T - - - visual-pending
design_method_distortion_three_col 1171281197 19 compare / cards-3-compare 3 7 0/0/0/10 A T - - - visual-pending
domestic_bim_actor_relations 1171281175 4 diagram / quadrilateral-relations 4 6 0/0/1/9 A T - - - visual-pending
engn_sw_development_domain_knowledge 1171281173 2 cards / bullet-cards-4-plus-center 4 7 0/0/0/10 A T - - - visual-pending
field_effectiveness_five_elements 1171281181 10 diagram / radial-diagram-5 5 6 0/0/0/10 A T - - - visual-pending
industry_characteristics_three_col 1171281212 31 table / table-3col 3 5 0/0/0/10 A T - - - visual-pending
industry_current_status_three_col 1171281211 30 table / table-3col 3 5 0/0/0/10 A T - - - visual-pending
policy_achievement_five_goals 1171281213 32 composite / central-5-goals 5 9 0/0/0/10 A T - - - visual-pending
policy_goals_plus_execution_requirements 1171281192 15 cards / policy-4card-plus-list 4 10 0/0/0/10 A T - - - visual-pending
sw_dependency_four_problems 1171281206 26 cards / cards-4-grid 4 9 0/1/1/8 A T - F - visual-pending (index 부재, flat 있음)

§4. Track 분리 (matrix 기반)

Track A — Visual activation (16 reusable-now + 1 active refinement)

priority 진행 순서 (자체 추천 — V4 신호 ↑ 순서) :

Clarification: this priority list is an execution ordering, not a scope filter. All 16 reusable-now frames remain activation targets. The 11 weaker-V4-signal frames are still in scope; they are not dropped or deprioritized out of IMP-04. After the first refinement is reviewed, builder-family grouping may be used as secondary ordering when it reduces churn safely.

  1. three_persona_benefits refinement (active 1, V4 use_as_is=1) — index.html base 재작성
  2. dx_sw_necessity_three_perspectives (LE=2 가장 높음, persona builder 재사용 가능)
  3. construction_goals_three_circle_intersection (UAI=1+LE=1+RS=1, V4 신호 강함, 단 새 builder 필요 — cycle-intersect)
  4. construction_bim_three_usage (UAI=1, persona builder 재사용)
  5. bim_dx_comparison_table (UAI=1, 새 builder — compare_table_2col)
  6. 잔여 11 reusable-now (V4 신호 0 — 단순 catalog 확보 목적, 진행 순서 임의)

Codex review granularity:

  • Required: first refinement (three_persona_benefits), any new builder pattern, ambiguous mapping, and shared catalog/builder logic.
  • Allowed later: small grouped commits for low-risk repeated frames only after the pattern is proven by prior review.

Calibration failure modes for the first refinement:

  • F1 small styling/wording issue: same-frame follow-up commit, then Codex re-review.
  • F2 approach-level problem: pause Track A, run an approach re-lock round, then retry refinement.
  • F3 scope/resource problem: reopen the relevant scope/resource axis, possibly route to IMP-04b, and block bulk activation until resolved.

These are review escalation paths, not an extra pre-implementation gate.

Track B — visual-pending 12 frames

option (a/b/c) 결정 필요 (user 확인) :

  • (a) figma_to_html agent 재실행 → 별 issue (IMP-04b "visual extraction")
  • (b) analysis.md + texts.md 만으로 minimal CSS partial 작성 (시각 디테일 손실 인정). Main path X; only an explicit temporary placeholder if separately approved.
  • (c) 본 issue 의 즉시 활성 범위는 visual base 있는 16 frame 으로 진행. 12 frame 은 IMP-04b 별 axis 에서 visual base 확보 후 활성.

자체 추천 = (c) — Track B 는 exclusion / discard / scope reduction 이 아님. 12 visual-pending frames remain inside the 32-frame scope; only the visual-resource acquisition timing moves to a separate axis. scope 명확 + 진행 속도 ↑.

Track C — Matching schema canonical decision (Codex #15340)

본 matrix scope 외. IMP-05 또는 별 architectural axis 로 이양. 본 doc 에 권장 사항 surface 만 :

  • figma_to_html / matching metadata = canonical matching knowledge source
  • Phase Z frame_contracts + partial builders = runtime executable projection
  • bridge/mapping layer = explicit conversion

§5. Builder 재사용 vs 새 builder 분석

§5.1 기존 4 builder

  • items_with_role (F13) — array of items with role_order mapping. pillar_item parser uses sub-sections.
  • process_product_pair (F29) — 2 named columns with sections, column_with_transform + column_plain parsers.
  • quadrant_flat_slots (F16) — flat keyed positional slots (quadrant_N_label / quadrant_N_body).
  • quadrant_item parser — {label, body:[{text,indent}]} flat list.

§5.2 재사용 가능 (Track A 안 builder 재사용 candidates)

pattern example frames builder parser
3 cards parallel (단순 label + body) persona, dx_sw_necessity, construction_bim_usage, info_mgmt, sw_reality items_with_role quadrant_item (재사용)
4 quadrant flat bim_current_problems (4 grid), sw_dependency (4 grid — visual-pending) quadrant_flat_slots 변형 (4-card grid) quadrant_item (재사용)
numbered list (1..N) overseas_bim, pre_construction_model_info items_with_role (no role) pillar_item 또는 new

§5.3 새 builder 필요

pattern example frames proposed builder
2-col compare table app_sw_package_vs_solution, bim_dx_comparison_table compare_table_2col
3-col compare table engn_sw_three_types (+ visual-pending: industry_*) compare_table_3col
cycle/circle diagram construction_goals_three_circle_intersection cycle_intersect_3
split-panel diagram model_specialized_engn_sw, solution_engn_split split_panel
circular nodes sw_development_cycle_six_nodes circular_nodes_n
paired 2x2 bim_current_problems_paired paired_rows_2x2
central split synthesis bim_adoption_central_split central_split_synthesis

새 builder 7+ 필요 (Track A 안). 일부 generic 화 가능성 — implementation 시 구체화.


§6. min_height_px derivation method

기존 catalog : F13=230, F29=345, F16 = (no visual_hints — default zone size 사용?)

본 matrix 의 frame 별 min_height_px 추정 method :

  • figma_to_html_agent/blocks/{frame_id}/flat.mdframe 원본 height × Phase Z slide-body scale = derived min height
  • 예 : persona frame_id 1171281191 = 1927 px × (1280/2601) = 1927 × 0.49213 = 949 px (그러나 Phase Z slide-body 는 585 px 한계 — zoom 또는 scale 추가 적용 필요)
  • 실제 measurement = impl 시 partial render 후 검증 (smoke harness 가 char count 측정)

→ 각 frame impl 시 index.html 의 R19 zoom 값 또는 flat.md 의 frame 원본 height 에서 derive. handoff #15321 §4 의 8-step 의 1 단계로 추가.


§7. Resource completeness summary

status count template_ids
Full (A+T+I+F+S) 19 (16 reusable-now + active 4 중 3; F13 active lacks assets)
index 있음, assets 없음 1 three_parallel_requirements (F13 active)
A+T+F (index 부재) 1 sw_dependency_four_problems (visual-pending, flat 만 있음)
A+T (visual 모두 부재) 11 위 §3.2 의 나머지 11 visual-pending

→ visual-pending 12 frame 중 1 (sw_dependency_four_problems) 은 flat.md 보유 — 약간 head-start. 나머지 11 은 figma_to_html agent 재실행 필요.


§8. 다음 단계 — user 확인 후 ㄱ

  1. 본 matrix 가 prerequisite 자료 로 충분한가? 추가 추출 필요 정보?
  2. Track B option (a/b/c) 합의 — 자체 추천 = (c) 본 issue 외 분리
  3. Track A 진행 순서 — §4.1 의 priority list 합의?
  4. Track C (matching schema canonical) IMP-05+ 분리 합의?
  5. impl 시 build 순서 — frame 별 sequential commits + Codex per-frame review 또는 batch review?

100% 합의 후 step 6 (Track A 진입 — three_persona_benefits refinement 부터) 시작.