# AI 주제 추천 기능 점검 + 채널 제한 에러 원인 확인

## 작업 레벨: Lv.2 (기능 점검 + Edge Function 배포 상태 확인)

## 배경
AI 콘텐츠 작성 페이지에서 두 가지 문제가 보고됨:
1. "AI 주제 추천" 버튼 클릭 시 주제가 입력란에 자동으로 안 들어감
2. "현재 플랜에서 지원하지 않는 채널입니다" 에러 (Hidden 플랜에서 Threads 선택 시)

## 작업 1: AI 주제 추천 기능 점검

### 현재 구현 상태 (코드 분석 완료)
- 프론트: `Generate.tsx` 라인 101-127 (handleSuggestTopics) — 완전 구현됨
- 서버: Supabase Edge Function `suggest-topics/index.ts` — 완전 구현됨
- 플랜 제한: Pro 이상 (planFeatureMap.ts 라인 13, featureKey: "ai_topic_suggest")
- DB: 모든 플랜에 ai_topic_suggest: true

### 점검 사항
1. **suggest-topics Edge Function 배포 여부 확인**
   - `supabase functions deploy suggest-topics` 실행 필요 여부
   - 또는 Supabase 대시보드에서 함수 목록 확인

2. **실제 API 호출 테스트** (Hidden 유저 토큰으로)
   - curl로 suggest-topics 엔드포인트 호출
   - 응답이 정상적으로 topics 배열을 반환하는지
   - 에러가 나면 에러 메시지 확인

3. **프론트엔드 useFeatureGate("ai_topic_suggest") 동작 확인**
   - Hidden 유저에서 canUseSuggest가 true인지
   - 버튼이 표시되는지 vs "Pro 이상 이용 가능" 잠금이 뜨는지

4. **suggest-topics의 getUserPlan 구현 확인**
   - `/home/jay/projects/InsuRo/supabase/functions/suggest-topics/index.ts`
   - organization_subscriptions 조회 로직이 올바른지 (generate-content와 동일 패턴인지)
   - 만약 잘못된 패턴이면 수정

## 작업 2: 채널 제한 에러 근본 원인 확인 (코드 수정은 하지 말 것!)

### 현재 분석 상태
- Edge Function `generate-content/index.ts`의 채널 체크 로직 (라인 392-402)
- PLAN_CHANNEL_MAP에 Hidden(level 4)은 threads 포함 → 통과해야 함
- getUserPlan은 올바르게 구현 (profiles → org_id → org_subscriptions)

### 확인 사항 (코드 수정 금지, 원인만 파악)
1. **Edge Function 배포 상태 확인**
   - generate-content 함수가 최신 코드로 배포되어 있는지
   - 구버전이 돌고 있으면 재배포 필요
   
2. **실제 API 호출로 디버깅**
   - Hidden 유저 JWT로 generate-content 호출 시 정확한 에러 응답 확인
   - 서버 로그에서 planName, planLevel 값 확인 가능한지

3. **결과를 보고서에 기록** — 수정은 task-2156 머지 후 별도 태스크로 진행

## 주의사항
- ★ generate-content/index.ts는 현재 task-2156(2팀)이 수정 중. **절대 수정하지 말 것!** 원인 파악만.
- suggest-topics/index.ts만 필요 시 수정 가능 (task-2156과 파일 충돌 없음)
- InsuRo main 브랜치에서 작업할 것 (worktree 불필요)

## 검증 시나리오
1. Hidden 유저 로그인 → AI 콘텐츠 작성 → "AI 주제 추천" 버튼 클릭 → 주제 목록 6개 표시되고, 클릭 시 입력란에 채워짐
2. Edge Function 배포 상태 리스트 출력
3. 채널 에러 재현 시도 및 서버 응답 상세 로그

## 참고 파일
- 프론트: `/home/jay/projects/InsuRo/src/pages/Generate.tsx` (라인 101-127, 425-474)
- Edge Function: `/home/jay/projects/InsuRo/supabase/functions/suggest-topics/index.ts`
- Edge Function: `/home/jay/projects/InsuRo/supabase/functions/generate-content/index.ts` (★ 수정 금지)
- 플랜 설정: `/home/jay/projects/InsuRo/src/config/planFeatureMap.ts`