3탄 권1 제1장
3탄 권1 Phase 0
제1장 — TSV SPEC v1 작성
7항목 + 4 페르소나 + Position C 인식 — "무엇을 만들 것인가"의 자리
📑 이 챕터에서 다룰 내용

권1 제0장에서 빈 5파일 + Position C 첫 인식 LogOnTable이 박혔습니다. 이제 5파일+ 사이클의 단계 ① SPEC v1 작성 (1탄 v2 새 4장 4-1) 입니다.

📚 사전 지식 체크🎯 이 장의 목적✅ 완료 후 결과물
권1 제0장 / 1탄 v2 새 5장 SPEC.md 작성법 + 2탄 v2 권1 제1장 사례 인지 TSV SPEC v1 — 7항목 + 4 페르소나 + Day 14 가설 검증 게이트 예고 + Position C 인식 (E1 본격 권1 제3장) SPEC.md v1 (8~10KB, 의도적으로 불완전 5~7개)
📘 1탄 v2 새 5장 5-1 절 복기 — SPEC.md 7항목
  1. 앱 이름
  2. 해결하는 문제
  3. 사용자 정의
  4. Phase 1 핵심 기능
  5. 성공 기준 ★
  6. 수익화 ★
  7. 기술 스택

+ (해당 시) § 회색지대 결정 — 본 장 "인식" 만, 권1 제3장 본격

1-1 SPEC v1 작성 준비 — Opus + high + TSV 도메인 🔗
💻 Phase 0 Day 1 시작
claude

/model claude-opus-4-6    # SPEC.md 작성은 Opus
/effort high
/context                  # 5파일 모두 + MCP 활성 확인

TSV의 도메인 분류 (1탄 v2 새 5장 5-2 절)

시나리오TSV 적용 정도
B2C 앱△ (글로벌 사용자)
B2B SaaS△ (Phase 2 B2B 데이터)
마켓플레이스
교육 앱
콘텐츠 앱본질
미디어 플랫폼본질
💡 도메인 분류의 중요성

콘텐츠·미디어 플랫폼 분류가 "수익화 모델 선택"과 직결됩니다 (광고 + 프리미엄 구독 + B2B 데이터, 1탄 v2 새 18장 18-2 표 참조).

결론: "5~19 리그 모든 경기 자동 분석 콘텐츠 발행" — B2C 인터페이스이지만 본질은 "미디어 플랫폼"입니다.

1-2 SPEC v1 — 7항목 작성 🔗

작성 요청 프롬프트

💻 Claude Code (Opus + high) 에 입력하세요
SPEC.md를 작성해줘. TSV는 5~19 스포츠 리그 다관점 분석 자동 미디어
플랫폼이야. 아래 정보를 기반으로 7항목 모두 채워줘:

앱 이름: TotalSportsView (TSV)
한 줄 정의: "5~19 스포츠 리그의 모든 경기를 다관점 페르소나가 자동
  분석하는 미디어. Position C — 베팅 사이트 연결 X."
해결하는 문제: 스포츠 분석 콘텐츠는 '한 시각'이 대부분. 다관점
  (정량·균형·전술·트레이딩) 분석이 일반 사용자에게 도달하지 않음.
  TSV는 5~19 리그 모든 경기에 대해 다중 페르소나 자동 분석 = 정보
  격차 해소.

사용자 정의:
  - 일반 스포츠 팬 (한 시각만 알고 싶음 → STAT 또는 OBSERVER 충분)
  - 깊이 있는 분석 추구자 (Phase 1.2+ COACH·INSIDER 프리미엄)
  - B2B 스포츠 미디어 회사 (Phase 2 데이터 리포트)

Phase 1.0 (33일) 핵심 기능 3가지:
  1. 5 리그 (EPL·라리가·세리에·분데스·리그앙) 시작 — 페르소나 STAT·
     OBSERVER 자동 분석 (각 경기 글 1개씩, 일 10글)
  2. ⭐ Day 14 CRITICAL 게이트 — 다관점 가설 검증
  3. SSOT 인터페이스 (lib/match_facts.ts) + 자동 일관성 테스트

성공 기준 (Phase 1.0 종료 시):
  - 일 10글 자동 발행 7일 무장애
  - 페르소나 일관성 자동 테스트 5/5 통과
  - Day 14 가설 검증 통과 (다관점 클릭률 > 단일 시각 클릭률)
  - SEO 자연 유입 시작 (월 100+ 유입)

수익화: Phase 1.0 무수익 (의도적). Phase 1.1 (Day 34~90) AdSense
  광고 + 운영비 충당. Phase 1.2 (Day 91~180) 프리미엄 구독 ($4.99/월).
  Phase 2.0 (Day 181~) B2B 데이터 리포트.

Claude (Opus + high) 가 생성한 SPEC.md v1 — 주요 항목 발췌

§1 한 줄 정의

TSV는 5~19 스포츠 리그의 모든 경기를 페르소나 (STAT·OBSERVER·나아가 COACH·INSIDER) 가 다관점으로 분석하는 자동 콘텐츠 미디어 플랫폼입니다.

§2 해결하는 문제

스포츠 분석 콘텐츠 시장에서 "한 시각" (예: 단순 뉴스 또는 단일 분석가 의견) 이 대부분입니다. 사용자가 한 경기에 대한 "여러 관점"을 보려면 5~10개 사이트를 돌아야 하는 불편함이 있습니다. TSV는 5~19 리그 모든 경기에 대해 "동시에 여러 페르소나의 분석"을 한 자리에 자동 생성·노출합니다.

§3 사용자 정의

A
일반 스포츠 팬 (Phase 1.0 핵심)

글로벌, 영어 사용. 경기 전 "5분 안에 미리보기" 욕구. STAT (통계) 또는 OBSERVER (균형) 한 페르소나로 충분합니다.

B
깊이 있는 분석 추구자 (Phase 1.2+)

경기 전 "30분 깊은 분석" 욕구. COACH (전술) + INSIDER (이적·트레이딩) 프리미엄. $4.99/월 지불 의향이 있습니다.

C
B2B 스포츠 미디어 (Phase 2.0+)

페르소나 분석 트렌드 데이터 필요. $299/회 리포트 대상입니다.

§4 Phase 1.0 (33일) 핵심 기능 3가지

1
5 리그 자동 분석 콘텐츠

EPL·라리가·세리에·분데스·리그앙. 페르소나 STAT (통계학자) + OBSERVER (균형 관찰자). 각 경기에 대해 두 페르소나 각각 글 1개씩 (일 5경기 × 2 = 10글). Sonnet 4.6 + cache_control (system prompt 캐시).

2
⭐ Day 14 CRITICAL 게이트 — 다관점 가설 검증

14일 동안 사용자 행동 데이터 수집: 같은 경기의 STAT vs OBSERVER 클릭률 비교 / 두 페르소나 모두 본 사용자 비율 / 단일 페르소나 사이트 대비 체류 시간. 다관점 클릭률 > 단일 시각 = ✅ Phase 1.1 진행.

3
SSOT 인터페이스 + 자동 일관성 테스트

lib/match_facts.ts — 단일 출처 (모든 페르소나가 같은 사실 참조). 페르소나 system prompt에 "입력에 없는 사실 추정 X" (환각 방지). 자동 일관성 테스트: 같은 경기 두 페르소나 노출 시 사실 일치 검증. fail 시 cron/publish.ts 자동 정지.

§5 성공 기준 (Phase 1.0 종료 — Day 33)

지표기준
일 10글 자동 발행7일 무장애
페르소나 일관성 테스트5/5 통과
Day 14 가설 검증 통과다관점 클릭률 > 단일 시각
SEO 자연 유입월 100+ 유입
운영자 시간일 평균 2.5h 이하 (자동화 효과)

§6 수익화 — Phase별

Phase수익화목표
Phase 1.0 (Day 1~33)의도적 무수익Day 14 가설 검증이 본질
Phase 1.1 (Day 34~90)Google AdSense 광고월 운영비 ($18) 충당 + α
Phase 1.2 (Day 91~180)프리미엄 구독 ($4.99/월)광고 제거 + COACH·INSIDER
Phase 2.0 (Day 181~365)B2B 데이터 리포트 ($299/회)스포츠 미디어 회사 대상

§7 기술 스택

영역기술
백엔드Rust (Axum + SQLx) — 5~19 리그 동시 처리 + 메모리 효율
프론트Next.js 14 + TypeScript + Tailwind
DBPostgreSQL (Oracle Free Tier 4GB)
LLMClaude Sonnet 4.6 (페르소나 분석) + cache_control + Opus (Day 14 가설 검증 + Phase 1.2 COACH·INSIDER)
외부 APITheSportsDB (무료) + SportsRadar (Phase 1.1+)
인증Phase 1.0 X / Phase 1.2 Stripe + 이메일 OAuth
배포Vultr ($6/월) + Cloudflare WAF (무료)
모니터링Sentry (무료 tier)

DB 스키마 초안 (3 테이블)

💻 DB 스키마 초안
[matches]
- id (UUID, PK), league, home_team, away_team, kickoff_at,
- score_home, score_away, status (UPCOMING/LIVE/FINISHED),
- created_at

[articles] — SSOT 적용
- id (UUID, PK), match_id (FK), persona (STAT/OBSERVER/COACH/INSIDER),
- title, body (markdown 1500자), seo_keywords,
- published_at, view_count, click_count

[click_events] — Day 14 가설 검증용
- id, article_id, user_session, clicked_at,
- referrer, dwell_time_sec

§8 회색지대 인식 (권1 제3장 본격 — E1)

⚠️ Position C — 분석 미디어, 베팅 미연결 (인식 단계)

이 SPEC v1에는 한 가지 회색지대가 인식됩니다:

  • 스포츠 미디어 시장 = 베팅 사이트 인접
  • TSV는 분석 콘텐츠만 + 베팅 link X + 배당 변환 X + 픽 추천 X
  • → 권1 제3장 E1 4단계 결정 프레임으로 본격 결정

본 SPEC v1은 의도적으로 불완전합니다. Gemini 1차 검토 (권1 제2장) 에서 5~7건 발견 + 사용자 직관 (권1 제3장) + 두 검토자 (권1 제4장) 를 거쳐 SPEC v4가 완성됩니다.

1-3 v1의 "의도적 불완전" 6개 명시 🔗
💡 1탄 v2 새 5장 5-3 절 복기

v1은 일부러 완성도가 낮습니다. 이유는 검토자가 보고 발견하는 자리이기 때문입니다. 완벽 추구 시 영원히 못 끝납니다.

#의도적 불완전 항목발견 예상 자리
1cache_control 적용 정확한 위치 — 미명시Gemini 검토 (권1 제2장)
2페르소나 system prompt 환각 방지 정확한 표현 — 미명시Gemini 검토
3자동 일관성 테스트의 "실패 시 cron 정지" 메커니즘 — 미명시Gemini 검토
4SEO 키워드 분리 (cannibalization 방지) — 미명시Gemini 검토
5Day 14 게이트 결과 기록 + 회고 의식 — 미명시Gemini 검토
6SportsRadar API 호출 한도 + fallback — 미명시Gemini 검토
💻 SPEC.md v1 저장 + git commit
git add SPEC.md
git commit -m "SPEC.md v1: 7항목 + 4 페르소나 + Day 14 가설 검증 + Position C 인식"
💻 BUILD.md Day 1 entry 추가
## Phase 0 Day 1

[계획]
- SPEC v1 작성 (Opus + high + 7항목 + Position C 인식)

[실행]
- /model claude-opus-4-6 + /effort high
- 7항목 + 4 페르소나 시스템 + Day 14 CRITICAL 게이트 + Position C 인식 (8KB)

[LogOnTable 트레이스 — 의도적 불완전 v1 결정]
> 결정: SPEC v1 의도적 불완전 — 6개 누락 (cache_control 위치·환각
       방지 표현·일관성 테스트 메커니즘·SEO 분리·Day 14 회고·API 한도)
       인지하면서 미반영
> 근거: v1은 검토자가 보고 발견하는 자리. 완벽 추구 시 영원히 못 끝냄.
       2탄 v2 권1 제1장과 동일 패턴 (줍줍 SPEC v1도 6개 의도적 불완전).
> 부작용: Gemini 검토에서 5~7건 발견 예상 (권1 제2장).

[누적 시간] 약 1.5h
[E2 페이스] 60h 트리거 58.5h 여유. 1주차 1일차 안전.
1-4 SPEC v1 체크리스트 점검 🔗

1탄 v2 새 5장 5-6 절의 7+1 체크리스트를 적용합니다:

체크항목내용통과
앱 이름"TotalSportsView (TSV)"
해결하는 문제한 문장으로 명시
사용자 A·B·C 구분일반 팬 / 분석 추구자 / B2B
Phase 1.0 기능 3가지 이하5리그 자동·Day 14 CRITICAL·SSOT
성공 기준 숫자 명시7일·5/5·100+·2.5h
수익화 Phase별 명시1.0 무·1.1 광고·1.2 구독·2 B2B
DB 스키마 초안3 테이블
⭐ § 회색지대 결정 인식Position C 인식 (본격은 권1 제3장)
🎉 8개 모두 통과 — SPEC v1 완성

SPEC v1이 완성됐습니다. 약 8~10KB의 "의도적으로 불완전한 헌법"입니다. 줍줍 SPEC v1과 같은 패턴 + TSV 도메인 본질 (다관점 + Day 14 CRITICAL + Position C).

1-5 ⭐ 두 도메인 SPEC v1 비교 — 일관 패턴 🔗
자리줍줍 (2탄 v2 권1 제1장)TSV (3탄 권1 제1장, 본 장)
모델Opus + highOpus + high (동일)
7항목 + DB7항목 + 4 테이블7항목 + 3 테이블
회색지대 인식표현 ① + 개인정보 ② (2건)Position C (1건, 깊음)
의도적 불완전6개 (LLM·UNIQUE·검수·JSON·행정·null)6개 (cache·환각·일관성·SEO·게이트·API)
핵심 게이트G1·G2·G3·G4·G5 (10주)Day 14 CRITICAL ★ + Phase별 게이트
📘 차이의 본질 — Day 14 CRITICAL 게이트

줍줍은 "점진적 누적", TSV는 "14일 안에 가설 검증 → 통과 시만 진행"입니다. 도메인 본질 차이예요.

  • 게이트 분포 — 줍줍: 균등 (1주 단위) / TSV: Day 14 CRITICAL 집중
  • 핵심 가설 — 줍줍: 단계적 기여 부담 곡선 / TSV: 다관점 가치 검증
  • 위험 자리 — 줍줍: 신청 결과 보장 (E1) / TSV: 베팅 미디어 인식 (E1 Position C)

📌 제1장 정리

  • 1️⃣ 핵심 한 줄: TSV SPEC v1 = Opus + high + 7항목 + 4 페르소나 + Day 14 CRITICAL 게이트 + Position C 인식. 의도적 불완전 6개.
  • 2️⃣ 5파일+ 사이클 단계: 단계 ① SPEC v1 작성 ✅ — 본 장 / 다음: 단계 ② Gemini 1차 검토 (권1 제2장)
  • 3️⃣ TSV SPEC v1 7항목 요약: 앱 이름: TSV / 문제: 다관점 분석의 정보 격차 / 사용자: 일반 팬 + 분석 추구자 + B2B / 핵심 기능: 5리그 자동·Day 14 CRITICAL·SSOT / 성공 기준: 7일·5/5·100+·2.5h / 수익화: Phase별 / 기술: Rust + Next.js + Oracle + Sonnet/Opus + Position C 인식
  • 4️⃣ 의도적 불완전 6개: cache_control 위치·환각 방지·일관성 테스트·SEO 분리·Day 14 회고·API 한도 → Gemini 검토 (제2장) + 두 검토자 (제4장) 에서 보완
  • 5️⃣ 5확장 등장: E4 LogOnTable: BUILD.md Day -1·1 트레이스 ✅ / E1 회색지대: 인식 (권1 제3장 본격) / E2 1인 페이스: 누적 시간 추적 시작 (1.5h)
  • 6️⃣ 다음 장: 권1 제2장 — Gemini 1차 검토 (E3 첫 라운드, 5~7건 예상)
📕
3탄 권1 도우미
질문하기 OK
안녕하세요! 3탄 권1 제1장 — TSV SPEC v1 작성에 대해 무엇이든 물어보세요. 👇