---
task_id: task-1989
type: plan
scope: task
created: 2026-04-20
updated: 2026-04-20
status: completed
---

# 계획서: task-1989

**task**: task-1989
**목표**: PR #4 Gemini 리뷰 HIGH/SECURITY-HIGH 5건 수정 + 머지
**근거**: Gemini code-assist 자동 리뷰 코멘트 (2026-04-19)

---

## 목표

Gemini가 PR #4에 남긴 HIGH 1건 + SECURITY-HIGH 1건 + SECURITY-MEDIUM 3건을 수정하여 보안 이슈를 해결하고, HIGH 0건 확인 후 PR을 머지한다.

## 범위

### 포함
- server/main.py의 5개 코멘트 수정
  1. `user_id` → `_user_id` 키 수정 (L663)
  2. IDOR 취약점: `get_keyword_result`에 user_id 필터 추가 (L697→699)
  3~5. 에러 메시지 민감정보 노출 3건 수정 (L676→675-677, L702→703-705, L772→774-776)

### 제외
- PR #4의 기존 코드 변경 유지 — Gemini 지적 사항만 수정
- 새로운 기능 추가 없음

## 위임 계획

- 전체 수정: **불칸(백엔드)** — server/main.py 5건 수정 (sonnet)

## 검증 기준

- `grep "_user_id" server/main.py` → L663에서 `_user_id` 사용 확인 ✅
- `grep "eq.*user_id.*plan_info" server/main.py` → get_keyword_result에 user_id 필터 존재 ✅
- `grep -c 'detail=f".*{exc}"' server/main.py` → 지적 3개 지점 모두 제거 ✅
- pytest 26 passed, 0 failed ✅
