# InfoKeyword 키워드 우선순위 평가 기능 추가

## 태스크 ID: task-924.1
## 한정위임: 완료까지

---

## 배경

InfoKeyword에서 5개 키워드를 동시 평가할 때, 현재는 결과만 나열될 뿐 **어떤 키워드가 더 가치 있는지 우선순위**가 없다.
제이회장님이 직접 비교해야 하므로 불편함.

## 요구사항

5개 키워드 평가 결과를 **우선순위대로 정렬**하여 표시한다.

### 우선순위 로직

**1순위 기준: 정보성 키워드 → 조회수(검색량) 높은 순**
- Step 5 통과 + 최종 판정 INFORMATIONAL인 키워드가 가장 높은 우선순위
- 정보성 키워드가 여러 개면 검색량(step4의 total_volume) 높은 순으로 정렬

**2순위 기준: 정보성 키워드가 하나도 없을 경우 → Step 5 정보성 갯수가 많은 순**
- step5 결과의 `informational_count`가 많은 키워드가 우선 (예: 4개로 아쉽게 탈락한 키워드 > 2개인 키워드)
- 동일 갯수면 검색량 높은 순
- `informational_count`가 0인 키워드(10개 모두 홍보성)가 가장 마지막

### 표시 방식

- 키워드별로 **정보성/홍보성** 라벨을 함께 표시
- 우선순위 번호를 명시 (1위, 2위, 3위...)
- 기존 상세 분석 결과(step별 pass/fail)는 그대로 유지

## 관련 코드 위치

### Worker (백엔드)
- `/home/jay/projects/InfoKeyword/worker/pipeline/analyzer.py` — 7단계 분석 파이프라인
  - `_step4_search_volume()` → `total_volume` (검색량)
  - `_step5_promotional()` → `informational_count` (정보성 블로그 수)
  - 최종 판정: line 415-421, `verdict = "INFORMATIONAL" if all_pass else "NOT_INFORMATIONAL"`
- `/home/jay/projects/InfoKeyword/worker/main.py` — FastAPI 서버 (port 8100)
  - 여러 키워드 분석 엔드포인트 찾아서 응답에 priority 필드 추가

### Frontend
- `/home/jay/projects/InfoKeyword/src/components/keyword-card.tsx` — 키워드 결과 카드
- `/home/jay/projects/InfoKeyword/src/components/analysis-summary.tsx` — 요약 뷰
- `/home/jay/projects/InfoKeyword/src/app/analyze/` — 분석 플로우 페이지

## 구현 방향

1. **Worker 응답에 priority 필드 추가**: 다수 키워드 분석 시 각 키워드 결과에 `priority: int` (1부터), `priority_reason: str` 추가
2. **정렬 로직**: Worker에서 정렬하여 반환 (프론트는 받은 순서대로 표시)
3. **Frontend 표시**: 각 키워드 카드에 우선순위 번호 + 정보성/홍보성 라벨 배지 추가

## 수정 금지
- 7단계 분석 로직 자체는 변경 금지 (판정 기준 유지)
- step5 threshold(50%) 변경 금지

## 검증 기준
1. 정보성 키워드가 있는 경우: 검색량 높은 순으로 정렬됨
2. 정보성 키워드가 없는 경우: informational_count 높은 순으로 정렬됨
3. 각 키워드에 정보성/홍보성 라벨이 표시됨
4. 기존 분석 결과에 영향 없음 (step별 pass/fail 동일)
5. pyright/black/isort 통과