---
task_id: task-2167
type: plan
scope: task
created: 2026-04-25
updated: 2026-04-25
status: completed
---

# 계획서: task-2167

**task**: task-2167
**목표**: MediScan Phase 2 — FastAPI 서버 API 구축 + InsuRo 프론트엔드 연동
**승인**: 제이회장님 2026-04-25
**근거**: MediScan Phase 1(파서+분석+리포트) 252개 테스트 PASS 완료, 웹 연동 필요

---

## 목표

1. FastAPI 라우터(`mediscan_router.py`)를 InsuRo 서버에 마운트
2. 5개 API 엔드포인트 구현 (upload, analyze, result, history, delete)
3. InsuRo MediScan.tsx를 실제 기능 페이지로 교체
4. Supabase mediscan_jobs 테이블 마이그레이션 SQL 작성
5. 보안: JWT 인증, 히든 플랜 검증, AES-256 암호화, RLS

## 범위

### 포함
- `server/mediscan_router.py` — 별도 라우터 파일
- `server/main.py` — 라우터 마운트 1줄 추가
- `src/pages/MediScan.tsx` — 프론트엔드 교체
- `server/migrations/mediscan_jobs.sql` — DB 마이그레이션
- pytest 테스트 (`server/tests/test_mediscan.py`)

### 제외 (다음 페이즈 이후)
- 실제 Supabase 마이그레이션 실행 (DBA 승인 대기)
- 프로덕션 배포
- 건강검진 이상 수치 기반 고지의무 분류 로직

## 위임 계획

- 백엔드 API: **루(Lugh)** — FastAPI 라우터 + 테스트
- 프론트엔드: **브리짓(Brigid)** — MediScan.tsx 교체
- 테스트: **모리건(Morrigan)** — 통합 테스트 보강

## 검증 기준

- API: `curl POST /api/mediscan/upload` → 200 응답 + job_id 반환
- 프론트: MediScan 페이지 접근 → 히든 사용자는 업로드 UI, 비히든은 안내 표시
- 테스트: pytest PASS
