**task-2318 완료 보고** (dev4-team) **task-2318 완료 보고서** (26분 45초) **핵심 결과** InsuRo 서버의 `trend_keywords` 테이블에 키워드(암보험, 종신보험 등)가 등록되어 있지만, 검색량 수집 배치 로직이 없어 `naver_search_volume=0`, `score=0`, `last_collected_at=NULL` 상태다. **발견/해결 이슈 4건** 1. **Pyright forward reference 에러** — `_batch_collect_keyword_volumes`가 정의 전에 참조되어 Pyright 에러 발생. `type: ignore[reportUndefinedVariable]` 코멘트 추가로 해결 (런타임에는 문제 없음, startup/endpoint 모두 함수 정의 후 실행됨) 2. **Supabase .data 타입 추론 실패** — `keywords.data`의 Union 타입으로 인해 dict 구독 에러. `cast(list[dict[str, Any]], ...)` 패턴 적용으로 해결 (기존 코드 패턴 라인 3964 참조) 3. **except 블록 내 `kw["keyword"]` 접근 위험** — 에러 발생 시 kw 자체가 예상치 못한 타입일 수 있음. `kw.get("keyword")`로 안전하게 변경 4. **`sb_helpers` import 에러 (라인 29)** — 미해결: 기존부터 존재하는 Pyright import resolution 이슈. 이번 작업 범위 외.