# Current Code Map

## 목적
이 문서는 현재 `design_agent`의 주요 코드 파일이 위키 2/위키 3의 어떤 단계와 연결되는지 정리한다.

## 주요 코드 파일과 역할
### src/main.py
- FastAPI 진입점
- `/api/generate` SSE 처리
- 파이프라인 호출과 응답 흐름 관리

### src/pipeline.py
- 현재 실제 실행 흐름의 중심
- 단계별 진행 관리
- 중간 산출물 저장
- 렌더, 측정, 품질 게이트까지 연결

### src/kei_client.py
- `Kei API` 호출 담당
- classify_content
- refine_concepts

### src/space_allocator.py
- page structure 기반 공간 제약 계산
- height budget, text budget 계산

### src/html_generator.py
- 영역별 HTML 생성
- body/sidebar/footer 생성
- 일부 MDX 정규화 관련 변경 진행 중

### src/content_verifier.py
- 텍스트 보존 검증
- 금지 텍스트 검증
- 구조 검증
- 실패 영역 부분 재시도

### src/renderer.py
- HTML 렌더링

### src/slide_measurer.py
- 실제 브라우저 측정
- 높이/overflow 확인

## 위키 2와 코드의 연결
### Step 1 입력 확인
- 코드 직접 책임보다는 작업 시작 전 준비 단계
- 실제 입력은 main/pipeline으로 전달됨

### Step 2 Kei 기준 해석
- 현재는 `src/kei_client.py` 의존이 큼
- 이후 문서 기반/에이전트 기반으로 대체 대상

### Step 3 콘텐츠 구조화
- 현재는 Kei 응답과 일부 generator 로직에 분산됨
- 이후 분리 필요

### Step 4 실행 계획 수립
- 현재는 명시적 문서 없이 pipeline과 내부 로직에 암묵적으로 존재
- Phase T에서는 더 명확히 분리될 필요가 있음

### Step 5 실제 수행
- `src/pipeline.py`
- `src/space_allocator.py`
- `src/html_generator.py`
- `src/content_verifier.py`
- `src/renderer.py`
- `src/slide_measurer.py`

### Step 6 검증 및 기록
- `src/content_verifier.py`
- `src/slide_measurer.py`
- pipeline의 결과 저장 및 품질 게이트

## 위키 3와 코드의 연결
### Stage 0 입력 로드 및 MDX 정규화
- 현재 일부는 `src/html_generator.py`에서 WIP 형태
- 향후 분리 필요

### Stage 1A Topic Extraction
- 현재 `src/kei_client.py`의 classify_content

### Stage 1B Concept Refinement
- 현재 `src/kei_client.py`의 refine_concepts

### Stage 1.5a / 1.7 / 1.5b
- 현재는 완전히 분리되어 있지 않음
- `src/space_allocator.py`, `src/html_generator.py`, 문서 설계에 걸쳐 있음

### Stage 2 HTML 생성
- `src/html_generator.py`

### Stage 2 검증 및 재시도
- `src/content_verifier.py`

### Stage 3 렌더와 측정
- `src/renderer.py`
- `src/slide_measurer.py`

### Stage 4 품질 게이트와 최종화
- `src/pipeline.py` 중심

## 1단계에서 얻은 중요한 관찰
- 후반부는 이미 코드 자산이 충분하다.
- 가장 큰 전환 포인트는 `src/kei_client.py` 의존 구간이다.
- `Phase T`는 초기 단계와 제약 계산 단계를 더 잘게 분해하고 명시화하려는 방향이다.
