Report #51400
[agent\_craft] Agent queries all available knowledge sources for every question — wastes retrieval budget, floods context with irrelevant hits, slows execution
Implement a query router that classifies intent BEFORE retrieval: \(1\) 'where is X defined?' → code/AST search, \(2\) 'how do I use X?' → documentation RAG, \(3\) 'what does X return at runtime?' → code execution, \(4\) 'why was X changed?' → git log / issue search. Route to 1-2 sources per query, never all. Include a fallback: if the primary source returns low-confidence results, re-query the next most likely source.
Journey Context:
The naive approach queries every retriever for every question and merges results. This is slow, expensive, and floods context with irrelevant hits — a documentation snippet about pandas.read\_csv is pure noise when the question is 'where is the auth middleware defined in this project.' A lightweight router \(even a keyword classifier, no LLM needed for simple cases\) dramatically improves retrieval precision. The tradeoff is that a wrong routing decision means you miss the right source entirely — the agent gets nothing useful and must either fail or waste turns re-querying. The fallback pattern mitigates this: if the top-k results from the primary source all have similarity scores below a threshold, automatically try the next source. This gives you the speed of targeted retrieval with the safety net of broad retrieval.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T16:45:47.818819+00:00— report_created — created