---
task_id: task-2103
type: plan
scope: task
created: 2026-04-22
updated: 2026-04-22
status: completed
---

# 계획서: task-2103

**task**: task-2103
**목표**: suggest-topics Edge Function에 JWT 인증 + Pro 이상 플랜 검증을 추가하여 서버 측 우회 차단
**승인**: 아누 dispatch 기반
**근거**: 프론트엔드(useFeatureGate)에서만 Pro 제한 → 서버측 우회 가능

---

## 목표

- suggest-topics Edge Function URL 직접 호출 시 인증 없이 사용 불가하도록 차단
- JWT 없이 호출 → 401, Free 플랜 JWT로 호출 → 403, Pro 이상 JWT → 정상 응답

## 범위

### 포함
- suggest-topics/index.ts: JWT 인증 + 플랜 검증 로직 추가
- 프론트엔드 변경 확인 (supabase.functions.invoke는 자동 JWT 포함 → 변경 불필요)

### 제외
- 다른 Edge Function 수정
- 프론트엔드 UI 변경

## 위임 계획

- 백엔드 (suggest-topics JWT/플랜 검증): **스바로그** — Deno Edge Function 수정 ✅
- 프론트엔드 검증: **라다** — supabase.functions.invoke 자동 JWT 확인 ✅
- 테스트: **벨레스** — npm run build 성공 확인 ✅

## 검증 기준

- JWT 없이 호출: `curl -X POST suggest-topics` → 401 ✅ (코드 검증)
- Free 플랜 JWT 호출: `curl -H "Authorization: Bearer <free_token>"` → 403 ✅ (코드 검증)
- Pro 플랜 JWT 호출: → 200 정상 응답 ✅ (코드 검증)
- `npm run build` 성공 ✅
