59e38d80b0
E.3 400→600자 튜닝 전후 비교 + 단계 5 failure mode 분석의 기준 필드 추가. - migrations/135: answer_length/covered_aspects/missing_aspects/model_name/prompt_version 컬럼 + prompt_version 인덱스 - ORM: ask_event.py에 동일 5개 필드 매핑 - prompt_versions.py: ASK_PROMPT_VERSION="search_synthesis.v1-400char" 상수 + resolve_primary_model() helper - search_telemetry.record_ask_event: 시그니처에 keyword-only 필드 5개 추가 (하위 호환) - search.py: refused + success 두 호출사이트에서 새 필드 전달. answer_length는 len(sr.answer or ""), model_name/prompt_version은 상수 모듈 기반 기존 호출 구조(이미 search_telemetry+background_tasks로 DB insert 중)는 유지. 순수 확장 커밋. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>