# 유튜브 요약 아키텍처 변경: Gemini 자동 요약 → 팀원(Sonnet) 직접 요약

## 배경
현재 유튜브 크롤링 파이프라인(`crawlYoutubeChannels.ts`)에서 Gemini 2.5 Flash가 자동으로 요약을 생성하고 있음.
제이회장님 지시: **Gemini 요약 제거, 우리 팀(Claude Sonnet)이 직접 요약**

## 변경할 아키텍처

### AS-IS (현재)
```
크롤링 → 자막/Whisper 추출 → Gemini 요약 → Drive에 요약 업로드
```

### TO-BE (변경)
```
[자동] 크롤링 → 자막/Whisper 추출 → Drive에 전문(_전문.md)만 업로드
[아누] Drive 전문 업데이트 감지 → 팀원(Sonnet)에게 전문 읽히고 요약 시킴 → 요약본(_요약.md) Drive 업로드
```

## 구현 범위

### 1. crawlYoutubeChannels.ts 수정
- Gemini 요약 호출 부분 제거 (또는 비활성화)
- 전문만 Drive에 업로드하도록 변경
- Firestore youtube_knowledge에 전문 데이터 저장은 유지
- 요약 필드(summary 등)는 빈 값으로 두거나 "요약 대기" 상태 표시

### 2. 전문 업데이트 감지 시스템 구축
- 아누(봇A)가 Drive 전문 업데이트를 감지할 수 있는 메커니즘 필요
- 방안 A: Firestore 트리거 — youtube_knowledge에 새 문서 생성 시 이벤트
- 방안 B: 로컬 체크 스크립트 — 크롤링 후 새 전문 목록을 파일로 남김 (예: `memory/events/new-transcripts.json`)
- 방안 C: 크롤링 완료 시 아누에게 cokacdir --cron으로 직접 알림
- **방안 C 권장**: 가장 간단하고 기존 인프라(cokacdir --cron) 활용 가능

### 3. 요약 위임 프로세스
- 아누가 알림 받으면: 새 전문 파일 읽기 → 팀원(Sonnet 서브에이전트)에게 요약 지시
- 요약 완료 후: Drive에 _요약.md 업로드 + Firestore youtube_knowledge 요약 필드 업데이트
- Drive 업로드는 Google Drive API 사용 (기존 googleapis 패키지 활용)

### 4. 요약 위임용 스크립트/도구
- 아누가 사용할 요약 위임 스크립트: `scripts/youtube-summarize.py`
  - 입력: 전문 파일 경로 (또는 Firestore document ID)
  - 동작: 전문 읽기 → Claude Sonnet API로 요약 생성 → Drive 업로드 + Firestore 업데이트
  - 또는: 아누가 dispatch.py 없이 직접 Task tool로 팀원에게 시키는 방식
- **핵심**: 아누가 "이 전문을 읽고 요약해" 라고 팀원에게 시킬 수 있는 인터페이스

## 참고 파일
- 크롤링 엔진: `/home/jay/projects/insuwiki/functions/src/crawlYoutubeChannels.ts`
- Whisper STT (task-187.1): `/home/jay/projects/insuwiki/functions/src/whisperStt.ts`
- task-187.1 보고서: `/home/jay/workspace/memory/reports/task-187.1.md`
- 프로젝트 구조맵: `/home/jay/workspace/memory/project-maps/insuwiki.md`

## 주의사항
- 기존 전문 저장 로직은 절대 건드리지 않음
- Gemini 요약 코드는 삭제하지 말고 비활성화 (환경변수 플래그로 ON/OFF 가능하게)
- Drive 업로드 인증 방식 유지 (Service Account)
- 요약 품질은 기존 Gemini 6섹션 요약과 최소 동등 이상이어야 함