The right passages were retrieved and the answer is still wrong
In short
When the correct passages were retrieved and the answer is still wrong, the defect is in synthesis, and there are 4 of them: conflation across sources, a dropped qualifier, silent averaging of passages that disagree, and a bridging inference no source supports. Each leaves a distinct mark in the output, so the answer text itself tells you which one you have.
Key takeaways
- Retrieval succeeded, so the repair is in the prompt, the passage set or the question — never in the index.
- The substitution test settles it: give a colleague the same 6 passages and see whether they reach the same answer.
- If the human also gets it wrong, the passages were insufficient and you have a coverage problem, not a synthesis one.
- A dropped qualifier is the most expensive defect because the answer stays plausible and stops being true.
- When 2 passages disagree the system must say so. A midpoint appearing in no source is the worst of the 3 outcomes.
- Wrong answers that cluster in peak hours are usually truncation under load, not a defect in reasoning.
If the passage containing the answer was in the context window and the answer is still wrong, retrieval is not your problem and tuning it will not help. The defect is in synthesis: what the model did with evidence it was given. That narrows the repair surface enormously — to the prompt, to the composition of the passage set, or to the question itself — and it rules out all 4 of the index, the embedding model, the chunker and k.
One boundary first, because it decides whether you are on the right page. If the answer contradicts the supplied passages outright and matches what the model would say with no context at all, the passages were not used, and the model answering from memory instead of context is the page you want. This page covers the harder case: the passages were used, and the answer built from them is wrong anyway.
The substitution test, before any theory about the model
The confirming check is embarrassingly low-tech and it is the only one that separates a synthesis defect from an evidence defect. Run it before you rewrite a prompt.
- Capture the exact passage set that was sent, in the order it was sent, with the character count of each. Not the retrieval results — the payload. Those differ more often than teams expect.
- Strip out the generated answer and hand a colleague only the question and the passages, with no other context.
- Give them 10 minutes, and ask them to point at the sentence each part of their answer came from.
- If they produce the right answer with citations, the evidence was sufficient and the defect is synthesis. Continue to the table below.
- If they produce the same wrong answer, the evidence was insufficient or misleading and no prompt engineering will save it. That is a coverage problem — go back to what is in the passage set and why.
- If they cannot answer at all, the question is under-specified or genuinely multi-hop, and the system is being asked for something a single retrieval pass cannot supply.
Four synthesis defects, and what each one leaves in the output
These are distinguishable from the answer text alone, which is what makes them usable. You do not need to know what the model was thinking; you need to know which of 4 shapes the wrong answer has.
| Defect | What you see in the answer | Confirming check | Repair |
|---|---|---|---|
| Conflation across sources | One fluent statement whose parts come from 2 documents that were never about the same thing | Attribute each clause to a passage. At least 1 clause spans 2 of them. | Force per-claim citation; separate passages by source in the prompt with explicit boundaries |
| Dropped qualifier | A true-sounding rule stated without the condition that limits it — 'within 30 days' survives, 'for accounts opened before the transition' does not | Diff the answer against the source sentence, clause by clause, and count the clauses lost | Instruct that conditions travel with the rule; keep chunks large enough that the qualifier is in the same chunk |
| Silent averaging | A confident value that appears in none of the passages, sitting between two that do | Search the passage set for the exact figure quoted. It is absent. | Make disagreement a reportable outcome; supply effective dates so one passage can win on recency |
| Bridging inference | A claim that follows plausibly from the passages but is stated in none of them, usually with a citation attached anyway | Ask which sentence supports it. There is none — only 2 that imply it. | Require a quoted span per claim and reject claims that cannot supply one |
The dropped qualifier is the one that costs real money
Conflation is usually caught, because a reader who knows one of the two documents notices the seam. A dropped qualifier is not caught, because what is left is a clean, quotable, entirely plausible sentence — it has simply stopped being true in most cases. A cut-off time that applies only to next-day service becomes the cut-off. A rate that applies to one contract tier becomes the rate. Operational domains are full of these: the gap between a rule and a rule-with-a-condition is the same gap discussed in AI in logistics operations, where nearly every commitment is conditional on service level, lane or equipment type.
The structural cause is usually chunking rather than prompting. If the rule sits at the end of one chunk and its exception at the start of the next, the model receives the rule and never sees the condition, and it is behaving correctly on the evidence it has. Before rewriting instructions, check whether the qualifier was in the payload at all. If it was not, this is a chunk-boundary problem wearing a synthesis costume.
Silent averaging: the answer that appears in no source
Give a model 1 passage saying 30 days and another saying 60 days, ask for the notice period, and the worst outcome is not that it picks wrong. It is 45 days: a number in neither passage, presented with the same confidence as a quoted one, and unfalsifiable by anyone who does not go back to the documents.
This happens because nothing in the request tells the model that disagreement is an allowed answer. Fix it in 3 places rather than 1: state explicitly that conflicting sources must be reported as conflicting, attach effective dates and source names to each passage so recency and authority can settle it, and check on the way out that every number in the answer appears verbatim in some passage. That last check is a regular expression, it adds under 1 millisecond, and it catches the invented midpoint every time.
An answer that splits the difference between two sources is worse than an answer that picks the wrong one, because picking wrong is traceable and splitting the difference is not.
Bridging inference, and the citation that comes with it
The fourth defect is the subtlest: the passages support step 1 and step 3, the model supplies step 2 from general knowledge, and the finished claim reads as though it were sourced. It usually arrives with a citation attached, because the model attaches the nearest plausible source to a claim it produced itself — which is why this defect and a citation pointing at the wrong paragraph are so often the same incident seen from two angles.
The check is to demand a quoted span rather than a document reference. A claim that can name the sentence it came from is grounded; a claim that can only name a document is a hypothesis with a footnote. Requiring the span costs perhaps 40 output tokens per claim and converts an unverifiable answer into one a reader can audit in 30 seconds.
When the passages were right and still not enough
The substitution test sometimes shows that a careful human fails on the same evidence. That is not a synthesis defect, and it has 3 common shapes worth checking before anyone redesigns a prompt.
- The qualifying passage used to be there and no longer is. Because k is a fixed budget, a new source that ranks moderately well across many queries evicts previously winning passages — the mechanism set out in a new source pushing good passages out. The answer degraded because the context got worse, not because the model did.
- The number is in a table and arrived without its header. A value separated from the row and column that give it meaning is worse than a missing value, and the reasons it happens are covered in numbers inside tables never surfacing.
- The question needs a second retrieval that depends on the first. No single-shot passage set can serve it, and the honest response is to route it differently rather than to hope a longer context compensates.
What to change, in the order that keeps the diagnosis intact
- Add per-claim citation with a quoted span. It fixes nothing on its own and it makes the other 3 defects visible, which is worth more.
- Add source name and effective date to each passage header in the prompt, so conflicts can be resolved by rule instead of by averaging.
- Add the output check that every figure in the answer appears verbatim in a passage. Cheap, mechanical, and it catches the defect no reviewer catches.
- Only then adjust chunk size or overlap, and only where the substitution test showed a qualifier missing from the payload.
- Re-run the substitution test on the same 20 questions after each change. Synthesis fixes trade against each other — a prompt that forbids inference also refuses questions it should answer — and without a fixed set you will not see the trade.
Most of this is guardrail work rather than model work, and it is the same discipline that makes any autonomous step in a workflow reviewable, which is what we build under AI agents and workflow automation. The neighbouring failures — passages that never arrived, citations that do not resolve, answers that changed without a deploy — sit beside this page in retrieval and grounding, inside the wider engineering library.
Frequently asked questions
Short answers to the follow-ups this page tends to raise.
How do I tell a retrieval failure from a generation failure?
Check whether the answer-bearing passage was in the payload sent to the model. If it was absent, the failure is retrieval and prompt changes cannot help. If it was present, the failure is synthesis and index changes cannot help. This single observable resolves the question in seconds, which is why logging the assembled context — not just the retrieval results — is the first instrumentation worth adding to a grounded answering system.
Why does the model conflate two sources into one answer?
Because nothing in the request marks them as separate authorities. Passages usually arrive concatenated with thin separators, so a document about one product line and a document about another read as one continuous body of evidence. Label each passage with its source, its scope and its date in the prompt, and require a citation per claim rather than per answer — conflation becomes visible the moment a single sentence has to name where it came from.
What should the system do when two retrieved passages contradict each other?
Say so, and show both. A grounded answering system should treat disagreement as a first-class outcome rather than something to resolve silently, because the silent resolution is either an arbitrary pick or an invented midpoint. Where one passage genuinely supersedes the other, that has to be decidable from data in the passage header — an effective date, a version, a document status — not from the model's impression of which sounds more current.
Does a larger context window fix answers that are wrong despite correct retrieval?
No, and it often makes them worse. All four synthesis defects are about how evidence is combined, not how much of it is present, and adding marginal passages increases the opportunity for conflation and bridging while pushing the answer-bearing text further from the edges of the context, where attention is most reliable. Fix the composition of the passage set before increasing its size.
- grounding
- synthesis
- answer quality
- evaluation
The work behind this page
Builds from our portfolio that this page draws on.
AskVault
An AI internal knowledge-search platform that answers employee questions from your own docs — grounded in citations, with knowledge gaps surfaced and deflection tracked.
Productivity AIBrief Forge
Contract review AI for solo lawyers and small firms — extract, score, and redline contracts in minutes.
Legal TechRead next
- You know the document is indexed and it still never comes backFour layers can quietly drop one document, and they look identical from the outside. Probe them in cost order — existence, filter, exact text, rank — and each probe eliminates exactly one.diagnostic
- The citation points at the wrong paragraphA misaligned citation is a pipeline bug with a deterministic cause; an invented one is a grounding failure. One exact-string search against the original file separates them in under 5 minutes.diagnostic
- It worked on five hundred documents and broke at fifty thousandNothing regressed when the corpus grew. A candidate budget that comfortably held the answer at 500 documents now competes against a hundred times as many near-neighbours, and k never moved.diagnostic
- The assistant quoted a policy that was replaced last quarterThe old version is still indexed, or it is gone and a cache is still serving it, or both versions are live and the old one ranks higher. One probe separates them.diagnostic
- "Dedicated team" defined by what it does not promiseThe phrase commits a supplier to almost nothing on its own. What it usually means in practice, and the three artefacts that turn it into something you can verify.definition
- Everything is now a change requestArguing about whether a change request is fair goes nowhere. Sorting the last 10 into 3 buckets says whether the bid was underscoped, the scope grew, or nobody decided.diagnostic
Working on something in this space?
Tell us where you are in a sentence or two. We'll tell you honestly whether we're the right team, and what a sensible first slice of the work looks like.
Start the conversation