Files
C.E.L_Slide_test2/PHASE-X.md
kyeongmin 1f7579cf64 Phase W + V' 완료: before→filled→after 파이프라인 + 조립 로직 수정
Phase W:
- weight 비율 초기 배정 (space_allocator header 높이 반영)
- block_assembler 공통 조립 함수 (filled/assembled 통합)
- filled → Selenium 측정 → context 저장
- sidebar overflow 확장 + body 재배분
- sub_layouts 사전 계산 (이미지 누락 해결)

Phase V':
- 팝업 링크 우측상단 배치 (인라인 → position:absolute)
- 표 내용 Kei 판단 (공란 크기 계산 → 행/열 산출 → Kei 요약)
- 출처 라벨 삭제 + 이미지 아래 캡션 배치
- after 공란 제거 (결론 바로 위까지 body/sidebar 채움)

추가:
- V-10 bold 키워드: 기계적 추출 → Kei 문맥 판단
- ** 마크다운 → <strong> 변환
- [이미지:] 마커 제거 (bold 변환 전 처리)
- grid-template-rows AFTER 크기 반영 (Sonnet final)
- assemble_stage2 CSS font-size override, white-space fix
- 하드코딩 전수 검토 완료
- 본심 여러 topic 텍스트 합침

Phase X 계획 문서 작성 (동적 역할 구조)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 05:00:52 +09:00

1.5 KiB

Phase X: 콘텐츠 기반 레이아웃 판단 프로세스

배경

현재 파이프라인은 Kei의 role 태그(reference, flow 등)로 레이아웃 preset을 먼저 고정한 뒤, 그 안에서만 크기를 조정한다. 콘텐츠의 양이나 특성과 무관하게 구조가 결정되므로, 다른 MDX가 들어오면 커버되지 않는다.

현재 프로세스 (문제)

Kei role 태그 → select_preset() → 레이아웃 고정 → 그 안에서 weight 배분
  • reference 있으면 → sidebar-right (무조건)
  • 콘텐츠 양/특성 기반 판단 없음
  • 레이아웃이 콘텐츠에 맞는지 검증 없음

목표 프로세스

1. BEFORE: 100% 공간을 weight 비율로 세로 배정 (레이아웃 판단 없음)
2. FILLED: 콘텐츠 채움
3. 판단1: 측정 → 레이아웃 결정 ("이 역할은 옆으로 빼는 게 낫다" 등)
4. 판단2: 결정된 레이아웃에서 크기 재배분
5. AFTER: 최종 레이아웃 + 크기
  • 레이아웃 구조(body/sidebar 등)가 preset이 아니라 측정 후 판단의 결과
  • 어떤 MDX가 와도 콘텐츠에 맞는 최적 레이아웃이 동적으로 결정됨

관련 코드

  • src/design_director.py: LAYOUT_PRESETS, select_preset()
  • src/pipeline.py: Stage 1.5a에서 preset 선택
  • src/kei_client.py: Stage 1A에서 role 태그 부여
  • src/space_allocator.py: zone 기반 컨테이너 배분

상태

Phase W (before→filled→after 파이프라인) 완료 후 착수.