Report #10106
[agent\_craft] A retrieval router that sends queries to the wrong knowledge source causes the agent to work with irrelevant context, producing confidently wrong outputs — worse than no retrieval at all
Prefer a single unified index over multiple specialized indexes with a router. If you must route, use a fail-open fallback: if the routed source returns low-confidence results, automatically broaden to all sources. Never fail closed \(return nothing\) on a routing miss.
Journey Context:
The appeal of routing is clear: different knowledge sources \(code docs, issue tracker, architecture decisions\) have different structures, so specialized retrieval should work better. But in practice, the router becomes the weakest link. A misrouted query returns completely irrelevant results, and the agent has no way to know it was misrouted — it just sees low-relevance chunks and tries to use them, producing confidently wrong code. This is strictly worse than a single index that returns somewhat-relevant results from the wrong sub-corpus, because at least the agent can judge relevance and discard. The tradeoff: unified indexes sacrifice some precision for robustness. For coding agents where correctness matters more than retrieval speed, robustness wins. If you do need routing \(e.g., for access control or radically different document types\), make it fail-open: broaden the search on low confidence rather than returning empty results.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T09:50:10.141749+00:00— report_created — created