전체 26 files (20 추가 + 6 수정), 10507 insertions. Phase Z 문서 : - docs/architecture/PHASE-Z-CHANGE-LOG.md (신설) — axis-by-axis 의사결정 history (newest-on-top). Step 7-A 부터 6 entry 박힘 + 2026-05-08 / 2026-05-08 #2 (compat 매트릭스 폐기 / 6-B 폐기 / F14 표현 정정 / label gate policy 분리). - docs/architecture/PHASE-Z-PIPELINE-OVERVIEW.md (수정) — Step 5/6/9 Gap note append (구조 무변, append-only). 6-B 폐기 사실 + Refinement F. - docs/architecture/PHASE-Z-PIPELINE-STATUS-BOARD.md (수정) — snapshot date 2026-05-08 갱신. §3 핵심 missing item 5 (Step 5/6/9 boundary axis breakdown + 폐기 기록). §6 한 줄 갱신 — 다음 axis 후보 A~F. Project root docs : - PLAN.md / PROGRESS.md / README.md (수정) — 토큰 체계 / 폴더 구조 / 설계 문서 / 역할 분리 반영. - IMPROVEMENT-REDESIGN.md (신설) — Phase Z 설계 핵심 문서. - PROCESS_OVERVIEW.html (신설) — 파이프라인 개요 시각. - docs/tasks/* (신설) — Phase Z task 문서. V4 catalog (Phase Z runtime 필수 의존성) : - tests/matching/v4_full32_result.yaml (신설, 4888 줄) — V4 매칭 결과 32 frame × 10 MDX section. lookup_v4_match() / lookup_v4_candidates() 가 본 파일 read. Phase Z runtime 이 *없으면 즉시 abort* — clone 후 즉시 동작 가능 보장. Samples : - samples/mdx_batch/04.mdx (신설) — MDX04 기본 sample. - samples/mdx/04. DX 지연 요인.mdx (신설) — MDX04 원본. Phase Q legacy 보존 (별 axis "Phase Q audit & salvage" 영역) : - src/block_matcher_tfidf.py / catalog_blocks.py / frame_extractor.py / pipeline_v2.py — Phase Q (옛 파이프라인) src 신규 untracked 파일들. Phase Z runtime 와 의존성 0. Phase Q audit axis 에서 검토 예정. - scripts/eval_block_matcher.py / fetch_all_frame_screenshots.py / match_17_units_my_matcher.py / match_mdx_strict.py / match_mdx_to_frames_tfidf.py / ocr_augment_texts.py / run_pipeline_v2.py / previews/ — Phase Q 작업 시 사용한 옛 script. 같이 보존. - run_mdx03_pipeline.py (수정) — Phase Q 진입점 (no flag) + Phase Z 진입점 (--phase-z2 flag) 동시 wrapper. Phase Z 만 사용 시 `python -m src.phase_z2_pipeline samples/mdx_batch/03.mdx <run_id>` 직접 호출. 비-scope : - tests/matching/ (v4_full32_result.yaml 외 ~63MB) — V4 진화 history / reports / DECK / ATTACH. Phase Q audit axis 에서 검토. - tests/pipeline/ (~15MB) — pipeline data. Phase Q audit 영역. - templates/catalog/blocks.yaml — 옛 block catalog. Phase Q audit. - templates/phase_z2/frames/ — 옛 frame partial 위치. Phase Q audit. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
78 lines
2.0 KiB
Markdown
78 lines
2.0 KiB
Markdown
# 요청: Figma 전체 프레임 texts.md 추출
|
|
|
|
## 목표
|
|
|
|
Figma 파일의 **모든 프레임**에서 texts.md를 추출한다.
|
|
HTML, CSS, 이미지 등은 불필요. **텍스트만** 추출.
|
|
|
|
## Figma 파일
|
|
|
|
- URL: https://www.figma.com/design/9S6LsQyO6zlRxtiqZccOUM/Untitled?node-id=29-373&t=DjVfH90i8r4YiiM6-1
|
|
|
|
## 이미 완료된 프레임 (14개)
|
|
|
|
아래 프레임들은 이미 texts.md가 있으므로 **건너뛴다**.
|
|
|
|
```
|
|
1171281172, 1171281178, 1171281180, 1171281189,
|
|
1171281190, 1171281191, 1171281193, 1171281194,
|
|
1171281195, 1171281201, 1171281202, 1171281203,
|
|
1171281204, 1171281208
|
|
```
|
|
|
|
## 작업 내용
|
|
|
|
1. Figma 파일에서 **최상위 프레임 전체 목록** 조회
|
|
2. 이미 완료된 14개를 제외한 **나머지 프레임들**에 대해
|
|
3. 각 프레임별로 `figma_to_html_agent/blocks/{frame_id}/texts.md` 생성
|
|
|
|
## texts.md 포맷
|
|
|
|
기존과 동일한 구조:
|
|
|
|
```markdown
|
|
# Frame {frame_id} — 텍스트 (TF-IDF 매칭용)
|
|
|
|
> 프레임 안의 모든 텍스트를 빠짐없이 추출.
|
|
|
|
## 타이틀
|
|
프레임의 메인 제목
|
|
|
|
## 서브헤더 (있으면)
|
|
서브 제목
|
|
|
|
## 열1: 라벨 (열 구조인 경우)
|
|
### 소제목
|
|
텍스트 내용
|
|
|
|
## 행1 (행 구조인 경우)
|
|
라벨
|
|
본문 텍스트
|
|
|
|
## 결론 (있으면)
|
|
결론 텍스트
|
|
```
|
|
|
|
### 핵심 규칙
|
|
|
|
- 프레임 안의 **모든 텍스트 노드**를 빠짐없이 추출
|
|
- 위치/크기 기준으로 **타이틀/서브/본문** 구분
|
|
- 큰 텍스트(상단) → 타이틀
|
|
- 중간 텍스트 → 서브헤더/라벨
|
|
- 작은 텍스트(본문) → body
|
|
- 열/행 구조가 보이면 `## 열1`, `## 행1` 등으로 구분
|
|
- MCP `get_metadata` + `get_design_context`로 텍스트 전수 대조
|
|
|
|
## 저장 위치
|
|
|
|
```
|
|
figma_to_html_agent/blocks/{frame_id}/texts.md
|
|
```
|
|
|
|
프레임 폴더가 없으면 새로 생성.
|
|
|
|
## 용도
|
|
|
|
이 texts.md는 나중에 **MDX 중목차/소목차와 TF-IDF 매칭**할 때 사용됩니다.
|
|
그래서 텍스트가 빠지면 매칭이 안 되므로, **빠짐없이** 추출하는 것이 중요합니다.
|