Build a customer-support retriever from scratch: BM25 + dense (E5) + RRF + a cross-encoder, plus an identity-scoped agent path, added step by step.