# 스레드오토 렌더러 글박스 내부 여백 불일치 분석 + 통일 + 재발 방지

## 프로젝트 경로
- `/home/jay/projects/ThreadAuto/`

## 문제
card_list 슬라이드(01/02번)와 detail 슬라이드(03번)의 글박스 내부 왼쪽 여백 세팅값이 다름.
동일한 UI 패턴(좌측 accent bar + 제목 + description)인데 값이 제각각.

## 현재 코드 분석 (아누 사전 조사 결과)

### card_list — `_draw_info_box()` (L540~)
- accent bar width: **6px**
- bar → text gap: **16px**
- `text_x_offset = 6 + 16 = 22px` (박스 왼쪽 끝 → 텍스트)
- 내부 패딩(pad): **32px**
- desc_indent: **30px**

### detail — `_render_detail_slide()` (L880~)
- accent bar width: **5px**
- bar → text gap: **16px**
- card_pad: **32px**
- `text_x_off = 32 + 5 + 16 = 53px` (카드 왼쪽 끝 → 텍스트)
- desc_indent: **30px**

### 차이점
1. accent bar 두께: 6px vs 5px
2. 텍스트 시작 위치 계산 방식이 완전히 다름
3. card_list는 box edge에서 bar 시작, detail은 card_pad(32) 안쪽에서 bar 시작

## 작업 절차

### 1단계: 에이전트 미팅 (필수)
아래 인원을 Task tool로 소집하여 미팅 진행:

**참석자:**
- 불칸(백엔드): 코드 구조 분석 — 왜 두 메서드가 다른 값을 쓰게 되었는지 근본 원인
- 아테나(UX/UI): 시각적 일관성 관점 — 어떤 값으로 통일해야 자연스러운지
- 아르고스(테스터): 통일 시 사이드이펙트 — 다른 슬라이드 타입(BODY, SUMMARY_CTA 등)에도 영향 있는지

**미팅 안건:**
1. **근본 원인**: card_list와 detail이 왜 별도 메서드로 분리되면서 값이 달라졌는지
2. **통일 방안**: accent bar 두께, gap, padding을 어떤 값으로 통일할지
3. **영향 범위**: 통일 시 다른 슬라이드 타입(COVER, BODY, SUMMARY_CTA)에 영향 있는지
4. **재발 방지**: 앞으로 같은 UI 패턴인데 값이 달라지는 것을 구조적으로 어떻게 방지할지
   - 상수 추출? (ACCENT_BAR_WIDTH, TEXT_GAP 등 공통 상수)
   - 공통 메서드 추출? (_draw_card_content 같은 공통 렌더링 함수)
   - 코드 리뷰 체크리스트 추가?

**미팅 기록**: `/home/jay/workspace/memory/meetings/2026-03-06-padding-consistency.md`에 저장

### 2단계: 구현
미팅 결론에 따라 코드 수정:
1. 공통 상수 정의 (ACCENT_BAR_W, CARD_TEXT_GAP 등)
2. card_list, detail 모두 동일 상수 참조하도록 수정
3. 가능하다면 공통 렌더링 로직 추출

### 3단계: 전 슬라이드 타입 점검
- COVER, CARD_LIST, DETAIL, BODY, SUMMARY_CTA 전체에서 유사 패턴의 값 불일치 체크
- 불일치 발견 시 함께 수정

## 테스트
1. 5개 테마 렌더링 테스트 → 여백 통일 확인
2. 이미지 크기 1080x1350
3. 오버플로우 없음
4. pyright 에러 0건

## 완료 기준
- [ ] 미팅 기록 저장
- [ ] accent bar 두께/gap/padding 통일
- [ ] 공통 상수 또는 공통 메서드 추출
- [ ] 전 슬라이드 타입 값 일관성 확인
- [ ] 재발 방지 방안 문서화
- [ ] 렌더링 테스트 정상
- [ ] pyright 에러 0건