# Phase 5 Testing Checklist ## A. Unit Tests - [ ] RSS parser가 malformed item을 건너뛴다. - [ ] URL canonicalizer가 tracking query를 제거한다. - [ ] YouTube matcher가 approved alias만 매칭한다. - [ ] Wikimedia page map lookup이 없는 symbol을 안전하게 skip 한다. - [ ] Google Trends adapter가 disabled flag에서 no-op 한다. - [ ] robust z-score 계산이 constant series에서 안전하다. - [ ] overlay scorer가 missing source를 허용한다. ## B. Entity Resolution Tests - [ ] ambiguous ticker가 잘못 매칭되지 않는다. - [ ] company alias override가 적용된다. - [ ] manual denylist가 강제된다. - [ ] wiki page redirect 처리 후 canonical title이 저장된다. - [ ] video title과 description의 conflicting match를 review queue로 보낸다. ## C. Integration Tests - [ ] raw → normalized → feature → score 전체 체인이 동작한다. - [ ] trade candidate가 없을 때 overlay pipeline이 정상 종료된다. - [ ] 특정 source 실패 시 나머지 source로 partial score 생성 가능하다. - [ ] overlay score가 backtester config에 따라 반영된다. - [ ] live rerank job이 stale source를 탐지하고 degraded mode로 전환한다. ## D. Replay Tests - [ ] historical snapshot cutoff 이후 데이터가 사용되지 않는다. - [ ] 동일 cutoff로 재실행 시 동일 overlay score가 재생성된다. - [ ] source update 지연 시 fallback 결과가 일관적이다. ## E. Quality Tests - [ ] random sample 100건에서 symbol match precision 측정 - [ ] YouTube whitelist 외 채널이 잘못 포함되지 않는다. - [ ] duplicated Yahoo headlines가 burst를 과대추정하지 않는다. - [ ] wiki attention shock가 명백한 비종목 이벤트에서 과도하게 오르지 않는다. ## F. Strategy Impact Tests - [ ] overlay on/off ablation 리포트 생성 - [ ] tie-breaker only와 weighted-rank 결과 비교 - [ ] hold-extension only 결과 비교 - [ ] source별 incremental value 리포트 생성 ## G. Ops Tests - [ ] API quota exhaustion 시 경고 및 soft-fail - [ ] source freshness SLA 위반 알림 발송 - [ ] registry update 후 캐시 무효화 정상 동작 - [ ] feature store write retry가 idempotent 하다.