# InfoKeyword 근거 리포트 캡처 내용 불일치 분석 + 개선

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

---

## 배경

InfoKeyword의 근거 리포트(evidence report)에서 **캡처한 내용이 실제 네이버 검색 결과와 다르게 보이는 현상**이 제이회장님에 의해 발견됨.
원인을 정확히 분석하고 개선해야 함.

## 분석 과제

### 1. 스크린샷 캡처 정확도 분석

`worker/reporter/screenshot.py`의 Playwright 스크린샷 캡처 흐름 점검:
- 캡처 시점: 분석 파이프라인 중 어느 시점에 캡처하는지
- 캡처 대상: 네이버 검색 결과의 어떤 영역을 캡처하는지
- 페이지 로딩 대기: 페이지가 완전히 로드된 후 캡처하는지, 아니면 미완성 상태에서 캡처하는지
- 셀렉터/뷰포트: 올바른 영역이 캡처되는지

### 2. 크롤링 데이터 vs 스크린샷 불일치 원인

분석 시 크롤링한 데이터(step 5에서 분석한 블로그 목록)와 스크린샷에 보이는 검색 결과가 다를 수 있는 원인:
- **시간차**: 블로그 크롤링과 스크린샷 캡처 사이 시간 차이
- **검색 탭 차이**: 크롤링은 "블로그" 탭, 스크린샷은 다른 탭일 가능성
- **로그인/비로그인**: Playwright 세션 상태에 따른 검색 결과 차이
- **개인화**: 네이버 개인화 검색 결과 영향
- **광고 영역**: 크롤링에서 제외한 광고가 스크린샷에는 포함

### 3. 관련 코드 위치

- **스크린샷 캡처**: `/home/jay/projects/InfoKeyword/worker/reporter/screenshot.py`
- **블로그 크롤링**: `/home/jay/projects/InfoKeyword/worker/crawler/blog_search.py`
- **블로그 내용 파싱**: `/home/jay/projects/InfoKeyword/worker/crawler/blog_content.py`
- **분석 파이프라인**: `/home/jay/projects/InfoKeyword/worker/pipeline/analyzer.py` (line 369-410, 스크린샷 관련)
- **리포트 생성**: `/home/jay/projects/InfoKeyword/worker/reporter/report_generator.py`
- **Evidence 프론트엔드**: `/home/jay/projects/InfoKeyword/src/app/report/[id]/evidence/page.tsx`

### 4. 개선 방안 도출

분석 결과를 바탕으로:
- 근본 원인별 구체적 개선 방안 제시
- 구현 가능한 수준의 코드 수정 제안
- 우선순위 정리

## 산출물

1. `memory/reports/task-925.1.md` — 분석 보고서 (근본 원인 + 코드 추적 + 개선 방안)
2. 근본 원인이 명확하고 수정이 간단한 경우, 직접 수정 가능 (단, 분석 결과 기반으로만)

## 수정 금지 (분석 우선)
- 7단계 분석 로직 변경 금지
- 기존 리포트 데이터 삭제 금지

## 검증 기준
1. 불일치 근본 원인이 코드 레벨에서 규명됨 (추측 아닌 코드 경로 추적)
2. 크롤링 시점 vs 스크린샷 시점의 차이가 수치로 확인됨
3. 개선 방안이 구체적이고 실행 가능한 수준으로 정리됨
4. 수정한 경우 pyright/black/isort 통과
