What similarity search actually guarantees
A vector store answers every query. That is not a defect in any particular product — it is what the operation is. You embed the question, you compare it against the chunks you embedded earlier, and you return the closest ones. There is always a closest one. When the library genuinely contains the answer, the closest chunk is the right chunk and the system looks intelligent. When it does not, the closest chunk is whatever happened to be least far away, and the model is handed it as context with no signal distinguishing the two cases.
The model then does what it is good at: writing a fluent, confident paragraph from the material in front of it. The failure is invisible at exactly the moment it matters, because a wrong answer built from a real document in your library reads more credible than a right one, not less.
What we do instead
The library is a tree of documents with titles, and the agent is given a listing of it. It reads the listing, decides which page is likely to hold the answer, and asks for that page by name. If the page it opens does not answer the question, it can go back to the listing and open another, the way a person with a filing cabinet would.
The consequence is that every step is a named thing a human can check. The trace does not say "retrieved 5 chunks at cosine 0.82". It says which documents were opened, in what order. A reviewer reads that and knows what the agent was looking at, without having to trust a number whose scale means nothing to them.
What this costs, honestly
Navigation needs the model to make a decision at each step, so a turn takes more model calls than a single similarity lookup would. That is real and we do not hide it — a run is billed flat precisely so the cost of walking further is ours and not yours.
It also means the library has to be organised. A tree of well-titled documents navigates well; a dump of ten thousand untitled files does not. For most teams that structure already exists, because people had to find things in it before an agent did.