# Agent 미팅: vibe.tip 벤치마크 vs ThreadAuto V2 심층 비교분석

**날짜**: 2026-03-06
**소집 이유**: V2 렌더러 첫 실전 테스트 후 벤치마크 대비 자체 평가 및 개선안 도출
**참여 페르소나**: 비너스(디자인), 아테나(UX/UI), 이리스(프론트엔드), 미미르(정보아키텍처)
**총 사이클 수**: 2

---

## Cycle 1

### 아누 분석
양쪽 이미지 비교 결과 3가지 핵심 갭: (1) 빈 공간 65~75%, (2) 5장 동일 레이아웃, (3) 슬라이드당 정보 1개

### 페르소나 의견

**비너스(디자인)**: 종합 점수 vibe.tip 8.75 vs V2 3.5 (격차 -5.25). 최대 갭: 레이아웃 다양성(-7.0), 시각장치(-6.0), 정보밀도(-6.0). "자동 생성 티 제거가 핵심. TOP 3: 레이아웃 다양성 → 정보밀도 → 시각장치"

**아테나(UX)**: 최대 이탈 지점은 slide01→02 전환. "커버 다음 첫 번째 콘텐츠 슬라이드가 기대치 이하면 나머지는 보지 않는다." 3대 구조적 문제: 빈 공간(치명), 레이아웃 변주 없음(치명), 정보 밀도(높음)

**이리스(프론트엔드)**: render_body()의 카드 높이 1050px 중 150px만 사용(85% 빈). 근본 원인: (A) content_generator가 1항목만 생성, (B) render_all()이 render_body()만 호출. **render_card_list(), render_detail() 이미 구현되어 있으나 미활용**. Quick Win: body→card_list 전환만으로 체감 2배 향상.

**미미르(정보아키텍처)**: 콘텐츠 생성기에서 80%, 렌더러에서 20% 해결해야. body 타입 폐기 → card_list/detail 대체. render_from_slides() 활용. 렌더러 단 description 자동 분할은 비추천(의미 단위 깨짐).

### 합의/결론
- 근본 원인은 콘텐츠 생성기의 "1슬라이드 1항목" 구조
- render_card_list(), render_detail() 이미 존재 → 활용
- 콘텐츠 구조 변경 + render_from_slides() 전환

---

## Cycle 2

### Devil's Advocate (아테나)
1. **실패 시나리오**: LLM이 card_list 복잡 스키마를 일관 준수 못할 위험. validation/retry 비용 1.5~2배
2. **후회 이유**: vibe.tip은 개발자 대상 → 보험설계사에 동일 밀도 부적합. "3개 불릿보다 하나의 강력한 메시지"
3. **더 단순한 대안**: 렌더러 단 키워드 하이라이트 + 숫자 강조 + 자동 불릿으로 콘텐츠 생성기 무수정

**반박**:
- LLM 비일관성 → 기존에도 10% 실패+retry 구조. items 2~3개 범위로 유연 허용 가능
- 타겟 불일치 → **수용**. 3포인트→2포인트로 하향, 설명 depth 유지
- 렌더러만으로 → 키워드 하이라이트는 P2로 채택, 근본적 빈 공간은 콘텐츠 구조 변경 필요

**판정**: 설계 부분 수정 (2포인트 기본, 5~7장 유연, 단계적 접근)

### 비관습적 대안 (미미르)
"슬라이드 제로" — 슬라이드 개념 제거, 연속 문서 생성 후 뷰포트 기반 동적 분할.
- 최강 지지: 생성기-렌더러 완전 관심사 분리, 멀티포맷 확장성
- 최강 반론: 카드별 시각적 완결성 보장 불가, 합의안과 결국 수렴
- **판정: 기각** (현재 단일 포맷에서 과잉). 단, 향후 멀티포맷 확장 시 재검토

---

## 최종 합의 사항

### 1. 2단계 개선 전략 (단계적 접근)

**Phase A (렌더러 개선) — 즉시 실행:**
- A-1: render_body() 제목 중복 제거 (슬라이드 제목 ≠ 카드 제목)
- A-2: 밝은 테마(GreenWhite) card_bg 투명도 보정 (#FFFFFF → #FFFFFFCC)
- A-3: 카드 높이 동적 조정 (콘텐츠 양에 비례, 85% 빈 공간 방지)
- A-4: 커버 하단 빈 공간에 시각 요소 추가 (장식 or 키워드 하이라이트)
- A-5: 다크 테마 출현 빈도 상향 (Threads 피드 대비 강화)

**Phase B (콘텐츠 구조 변경) — Phase A 완료 후:**
- B-1: prompts_v2.py 출력 형식을 card_list/detail 기반으로 변경
- B-2: 슬라이드당 items 2개 기본 (보험 타겟 맞춤, 3개는 선택)
- B-3: 총 슬라이드 5~7장 유연 범위 (고정 금지)
- B-4: content_generator_v2 validate 로직 업데이트
- B-5: 파이프라인에서 render_from_slides() 호출로 전환

### 2. 우선순위 정리
- **P0**: A-3 (카드 높이 동적 조정) — 빈 공간 해소 핵심
- **P0**: B-1+B-2 (콘텐츠 구조 변경) — 근본 원인 해결
- **P1**: A-1, A-2, A-4 (시각 품질 개선)
- **P2**: A-5 (테마 가중치), 키워드 하이라이트 시스템

### 3. 비너스 채점 기준 목표
현재 V2 **3.5/10** → Phase A+B 완료 후 목표 **6.5~7.0/10**

---

## 미해결 항목
- 아이콘 에셋 시스템 (난이도 상, 별도 이슈)
- 커버 일러스트/이미지 도입 (에셋 확보 문제)
- 멀티포맷 확장 설계 (미미르 비관습적 대안 → 장기 검토)

## 다음 단계
1. Phase A → 1팀 위임 (렌더러 개선 5건)
2. Phase B → 1팀 위임 (콘텐츠 구조 변경 5건)
3. Phase A+B 완료 후 재테스트 → vibe.tip 대비 재평가
