fired 필드 계약 반영 + e2e_latency_ms 를 로딩 UI로 대체

무엇을

서버 RecommendResponse.fired(필수 필드)가 프론트 RecommendationBatch 타입에 없어서 “검색 안 함”(fired:false)과 “검색했으나 결과 없음”(fired:true, cards:[], B-6)을 화면에서 구분하지 못하던 문제를 고쳤다. 함께, 안 쓰던 e2e_latency_ms 필드를 지우고 카드 응답을 기다리는 동안 로딩 인디케이터를 보여주도록 바꿨다.

왜

_project/decisions/401 참고 — 서버는 처음부터 이 구분을 보내고 있었는데(w3-recommendation-pipeline) 프론트 타입 쪽에서 누락돼 있었다. e2e_latency_ms는 화면 어디에도 실제로 쓰이지 않는 죽은 필드였다.

완료 조건

남은 것