Evaluating Retrieval Coverage Before RAG Launch: How to Find Corpus Gaps, Metadata Blind Spots, and Unanswerable Query Classes

A team I worked with once spent six weeks tuning prompts, swapping embedding models, and building a polished answer formatting layer for an internal support assistant. Offline demos looked good. A handful of carefully chosen questions worked. Leadership approved a pilot.
Then real traffic arrived.
The assistant failed on basic questions that mattered to the support organization: region-specific refund policies, legacy product SKUs, contract exceptions for a single enterprise segment, and escalation rules that only applied when a case had both a regulated-customer tag and a nonstandard shipping path. The generation model was not the core problem. Retrieval was not even obviously broken in the narrow technical sense. The system often returned semantically similar documents. It just did not return the right evidence because the corpus was incomplete, key policy documents were missing from ingestion, metadata fields needed for filtering were absent, and several common user questions required joins across documents that were never linked.
The painful part was that the team had evaluation numbers. They had prompt evals, answer style checks, and a retrieval benchmark built from 50 handpicked questions. What they did not have was a serious answer to a more basic launch question: can our knowledge base actually answer the classes of questions users will ask?
That is the pre-launch problem most RAG teams underinvest in.
Before launch, many organizations focus on model choice, chunking, reranking, and prompt structure. Those matter. But if the corpus does not contain the necessary facts, if the indexing pipeline misses important documents, if metadata does not support the filtering logic implied by user requests, or if entire query classes are inherently unanswerable from available sources, no amount of prompt engineering will save the system. At best, you get polished nonsense. At worst, you get confident answers that pass superficial demos and fail in production.
The practical job before a RAG launch is not merely to ask “how accurate is retrieval?” It is to establish retrieval coverage: for the expected distribution of user questions, what fraction are answerable from the corpus, what evidence is missing, what metadata blocks retrieval, and what unanswerable classes must be explicitly handled?
This article lays out a production-focused way to do that. The goal is not academic elegance. The goal is to help engineering leaders and applied teams answer a hard readiness question honestly: are we ready to ship this knowledge system, or are we mistaking prompt quality for knowledge readiness?
The pattern: RAG failures that are really corpus readiness failures
Teams usually experience one or more of these symptoms before they recognize the underlying pattern:
- Retrieval looks decent on generic semantic search checks but fails on operationally important questions.
- The system answers broad “what is X?” questions well but fails on conditional, exception-based, or segment-specific questions.
- Accuracy collapses when users mention dates, geographies, product variants, account tiers, or compliance constraints.
- Model swaps produce only marginal gains despite significant effort.
- Teams discover after launch that high-volume queries are not represented in evaluation data.
- The system appears inconsistent because some answers require metadata filters or document joins the retrieval layer cannot perform.
When you zoom out, these are coverage problems, not just ranking problems.
A ranking problem means the answer exists in the corpus and retrieval could, in principle, find it, but the retriever orders results poorly. A coverage problem means one or more of the following is true:
- The needed document is missing.
- The needed fact exists but is not accessible due to chunking, permissions, parsing, or indexing failures.
- The needed fact is present but lacks the metadata necessary to narrow retrieval.
- The question requires combining sources that are not linked or jointly retrievable.
- The question is fundamentally unanswerable from approved sources.
- The query class itself was not represented in testing, so the team never measured it.
If you do not separate these failure modes, you end up tuning retrieval and prompts against the wrong problem.
Why the naive approach fails
The most common naive pre-launch process looks roughly like this:
- Ingest all available documents.
- Chunk and embed them.
- Create a small gold set of questions from subject-matter experts.
- Measure hit rate or answer correctness on that set.
- Adjust prompts and maybe add reranking.
- Launch.
This fails for several reasons.
1. The eval set is too small and too curated
Most hand-built eval sets overrepresent easy, canonical questions. SMEs naturally write questions they know are answerable. They tend to phrase them in terminology close to source documents. They underrepresent ambiguous wording, incomplete user phrasing, cross-document reasoning, exception handling, and operational edge cases.
So teams get numbers that mostly measure whether the system can retrieve obvious policy text for obvious policy questions. Production traffic rarely stays in that lane.
2. Teams evaluate retrieval quality without evaluating answerability
A retrieval benchmark that assumes every test query has an answer in the corpus creates a false sense of readiness. In practice, some queries will be unanswerable because the source content does not exist, is not yet ingested, or is outside system scope.
If you do not label answerability explicitly, failure analysis becomes muddled. A system may be penalized for not answering a question the corpus cannot answer. Or worse, a generation model may fabricate an answer, and evaluators treat the result as “partially correct.”
3. Metadata is treated as a secondary implementation detail
In many enterprise knowledge systems, the difference between a correct and incorrect answer is not semantic relevance alone. It is filtered relevance:
- “for enterprise customers in Germany”
- “for orders placed before the policy change”
- “for product line B, not B2”
- “for admin users with SSO enabled”
These are retrieval constraints encoded in metadata, access control, or document structure. If metadata fields are missing, inconsistent, or unavailable to the retriever, the corpus may contain the answer text but the system still cannot retrieve the right evidence reliably.
4. Coverage is not modeled by query class
Not all questions matter equally. A launch is rarely blocked because the system misses obscure one-off trivia. Launches fail when coverage is weak for high-volume or high-risk query classes. For example:
- refund and return policies
- enterprise contract exceptions
- regulated workflow steps
- pricing eligibility rules
- security or compliance procedures
An aggregate retrieval metric hides this. You need coverage by query class and business criticality.
5. Teams conflate generation fluency with knowledge readiness
Strong LLMs are excellent at producing plausible summaries from partial evidence. That makes demos look better than the underlying system deserves. If the corpus is missing the critical exception, a polished answer can still sound competent.
This is exactly why retrieval coverage must be evaluated separately before optimizing answer generation.
A better approach: treat retrieval coverage as a launch gate
The better pattern is to run a retrieval coverage review before launch, with explicit goals:
- Model the real query distribution by class.
- Measure answerability for each class.
- Map queries to required evidence.
- Identify corpus gaps and indexing failures.
- Detect metadata blind spots and filtering failures.
- Distinguish missing knowledge from ranking issues.
- Define release criteria by class, not only overall metrics.
Think of this as a readiness assessment for the knowledge layer.
The core artifact is not just an eval score. It is a coverage map that tells you:
- which query classes are well supported
- which are partially supported with caveats
- which require metadata fixes
- which require document acquisition or ingestion work
- which should be explicitly declared out of scope at launch
The architecture for pre-launch coverage evaluation
A practical architecture has six components.
1. Query inventory layer
Build a dataset of expected user questions from multiple sources:
- historical tickets or chat logs
- support macros and help-center searches
- CRM case notes
- internal search analytics
- SME-authored representative questions
- synthetic variations generated from known workflows and policies
Normalize these into query records with attributes such as:
- raw query text
- normalized intent
- query class
- product/region/segment tags
- expected answerability status if known
- business criticality
- source of the query example
This inventory should be broad enough to represent production reality, not just idealized FAQ usage.
2. Corpus registry
Maintain an explicit registry of what sources are included in the RAG corpus:
- source system
- document type
- owner
- freshness SLA
- ingestion status
- access tier
- metadata schema
- indexing timestamp
- parser/version info
Most teams have this information scattered across pipeline configs and internal docs. Put it in one place. Coverage analysis is almost impossible if you cannot answer “what should be in the corpus?”
3. Evidence mapping layer
For a subset of queries, especially high-value classes, create evidence maps that define:
- the source documents needed to answer the question
- whether one document is sufficient or multiple are required
- what metadata constraints matter
- what constitutes minimally sufficient evidence
This is the bridge between user question space and corpus space. Without it, every failure looks like generic retrieval miss.
4. Retrieval evaluation pipeline
Run the full retrieval stack against your query inventory:
- query rewriting if used
- metadata extraction and filters
- dense retrieval
- sparse retrieval or hybrid search
- reranking
- context assembly
Log top-k candidates, scores, filters applied, and chunk/document IDs. Preserve enough detail for debugging.
5. Answerability and failure labeling workflow
For each query, assign labels such as:
- answerable from corpus
- answerable in source systems but missing from corpus
- partially answerable
- answerable only with metadata filter not currently supported
- answerable only through multi-document join
- out of scope / unanswerable
Then label the retrieval result:
- sufficient evidence retrieved
- relevant document retrieved but not enough evidence
- correct document exists but not retrieved
- no supporting document exists in corpus
- blocked by metadata/filtering issue
- blocked by parsing/chunking/indexing issue
6. Coverage dashboard and release gates
Aggregate results by:
- query class n- business criticality
- source system
- metadata field dependency
- region/product/segment
- answerability status
- retrieval stage failure mode
This becomes the pre-launch truth source.
Step 1: Build a realistic query class model
The single most important design choice is how you classify questions.
A weak taxonomy like “billing / support / product” is too coarse. You need classes that reflect retrieval behavior and business risk. For example:
- factual definition questions
- procedural “how do I” questions
- policy eligibility questions
- exception/edge-case policy questions
- account- or segment-specific rules
- temporal/versioned questions
- compliance/regulatory questions
- troubleshooting by symptom
- comparison/selection questions
- status or transactional questions requiring live data
Why this level of detail matters: each class stresses retrieval differently.
- Factual definition questions often work with generic semantic retrieval.
- Procedural questions require complete step sequences and sometimes latest-version preference.
- Policy eligibility questions need constraint matching and metadata.
- Exception questions often require finding a specific clause buried in a long document.
- Temporal questions require recency and effective-date awareness.
- Status questions may be fundamentally unanswerable from a static corpus.
If you do not model these separately, the easy classes will inflate your overall metrics and hide the hard ones.
A practical method is to define 10 to 20 query classes, then estimate expected traffic share and business risk for each. A high-quality launch decision weighs both.
For example:
| Query class | Expected traffic | Risk if wrong | Coverage target |
|---|---|---|---|
| Basic product facts | 20% | Low | 90% answerable, 85% evidence@5 |
| Standard procedures | 25% | Medium | 90% answerable, 80% sufficient evidence@5 |
| Policy eligibility | 18% | High | 95% answerable, 90% sufficient evidence@5 |
| Exceptions / overrides | 10% | Very high | 95% answerable, 90% sufficient evidence@10 |
| Compliance steps | 8% | Very high | 98% answerable, 95% sufficient evidence@5 |
| Live account status | 12% | High | Must be routed out of RAG |
| Long-tail misc | 7% | Low | Best effort |
That table is more useful for launch governance than one global retrieval score.
Step 2: Separate answerability from retrieval quality
Before you score retrieval, determine whether the corpus should be expected to answer the query.
This sounds obvious, but many teams skip it because it requires judgment and manual labeling. It is still worth doing.
Use a two-layer label:
Query answerability label
- A1: Fully answerable from corpus — required evidence exists in current indexed sources.
- A2: Partially answerable — some evidence exists, but important qualifiers or exceptions are missing.
- A3: Answerable in enterprise systems but not in corpus — source content exists elsewhere or is not ingested.
- A4: Requires live/transactional data — should not be handled by static RAG alone.
- A5: Out of scope / unanswerable — no approved knowledge source exists.
Retrieval outcome label
- R1: Sufficient evidence retrieved
- R2: Relevant but insufficient evidence retrieved
- R3: Correct evidence exists but missed by retrieval
- R4: Correct evidence blocked by metadata/filtering issue
- R5: Correct evidence blocked by parsing/chunking/indexing issue
- R6: No correct evidence in corpus
This creates a clean analysis framework. For example:
- A3 + R6 means corpus expansion problem.
- A1 + R3 means retrieval/reranking problem.
- A1 + R4 means metadata design problem.
- A4 means product routing problem, not retrieval tuning problem.
This one distinction prevents weeks of wasted optimization.
Step 3: Find missing-document gaps systematically
Missing documents are usually not discovered by top-line retrieval metrics. They emerge during corpus-to-query mapping.
Here is a practical workflow.
Start from high-value query classes
Pick the classes that combine high volume and high business risk. For each, sample real queries and ask SMEs or analysts to identify the authoritative evidence source needed for a correct answer.
Build a document expectation list
For each class, create a table:
- query class
- expected canonical documents
- alternate authoritative documents
- owning team
- source system
- should be indexed? yes/no
- currently indexed? yes/no
- freshness requirement
This often reveals surprising omissions. Teams discover that critical policy appendices, exception memos, regional addenda, or archived-but-still-active documents never made it into ingestion.
Validate ingestion completeness
Do not assume “source connected” means “content retrievable.” Check:
- document count parity between source and index
- missing folders/spaces/collections
- permissions exclusions
- parser failures on PDFs, tables, or scanned docs
- stale snapshots
- duplicate or superseded versions dominating retrieval
A lot of enterprise coverage loss comes from ingestion edge cases rather than retrieval logic.
Metrics to track
Useful corpus completeness metrics include:
- expected authoritative documents indexed / expected authoritative documents total
- % of high-risk query classes with at least one canonical source missing
- freshness compliance by source system
- parse success rate by document type
- effective document coverage by business segment or geography
The phrase “effective document coverage” matters. A corpus may be large but still weak for a particular region, product line, or exception type.
Step 4: Detect metadata blind spots before users do
Metadata failures are some of the most expensive RAG issues because they produce subtle inaccuracies. The right answer may exist, but the system returns a generic policy instead of the policy for the correct region, date range, entitlement tier, or product version.
Common metadata blind spots
- Effective date missing or not normalized
- Region/country absent or inconsistent
- Product taxonomy drift across source systems
- Customer segment not encoded
- Document status missing: draft vs approved vs deprecated
- Exception documents not linked to parent policies
- Access-control metadata unavailable at retrieval time
- Feature/version applicability not represented
How to test for them
For each query class, enumerate the attributes that disambiguate answers. Then ask two questions:
- Does the corpus store this attribute for the relevant documents?
- Can the retrieval system filter, boost, or reason over this attribute?
Example for policy eligibility questions:
| Attribute | Present in source docs? | Indexed? | Filterable? | Reliable? |
|---|---|---|---|---|
| Country | Yes | Yes | Yes | Medium |
| Effective date | Yes | Partial | No | Low |
| Customer segment | Sometimes | No | No | Low |
| Product edition | Yes | Yes | Partial | Medium |
| Contract override | Separate docs | No link | No | Low |
That table tells you more about production readiness than another embedding benchmark.
Synthetic adversarial testing for metadata
Generate controlled query sets that differ only by metadata constraints:
- “What is the refund window?”
- “What is the refund window for enterprise customers?”
- “What is the refund window for enterprise customers in Germany?”
- “What was the refund window before March 2024?”
If retrieval returns the same core documents for all of them, you likely have metadata blindness. This is one of the fastest ways to surface hidden coverage risk.
Step 5: Use both real and synthetic queries for gap discovery
Real query logs tell you what users actually ask. Synthetic generation helps you probe underrepresented but important combinations.
You need both.
Real queries
Best for:
- true phrasing variation
- realistic ambiguity
- actual traffic weighting
- discovering unexpected intents
Weaknesses:
- may underrepresent future workflows or new product launches
- often noisy and hard to label
- may not cover safety-critical edge cases sufficiently
Synthetic queries
Best for:
- combinatorial coverage across products/regions/tier/date/version
- stress-testing metadata handling
- generating paraphrases far from document wording
- probing exception and boundary cases systematically
Weaknesses:
- can reflect designer bias
- can become too clean or too formal
- may overstate user clarity
The right pattern is:
- use real logs to estimate distribution and identify dominant intents
- use synthetic generation to fill coverage gaps in the test matrix
- keep the two sets separate in reporting
Do not hide weak real-query performance behind strong synthetic-query numbers.
Step 6: Build corpus-to-query mapping, not just query-to-answer labels
One of the most useful artifacts in a mature RAG team is a corpus-to-query coverage map. This reverses the normal evaluation perspective.
Instead of only asking “for this query, did retrieval find evidence?” also ask:
- which documents support which query classes?
- which high-volume query classes depend on only one brittle document?
- where do multiple classes rely on stale or low-quality sources?
- which documents are never retrieved despite being authoritative?
- which source systems have disproportionate influence on important answers?
This map helps with prioritization. If a single policy appendix supports 15% of expected launch queries and it is not indexed correctly, you know exactly where to focus.
A practical implementation is a bipartite mapping:
- left side: normalized intents or query classes
- right side: canonical documents or document families
- edges: evidence dependency strength, with attributes such as mandatory/optional, metadata requirements, and freshness sensitivity
This can be represented simply in a relational table at first. You do not need a graph database to get value from it.
Step 7: Evaluate multi-document answerability explicitly
Many RAG teams assume answerability means “one document contains the answer.” In production, a meaningful fraction of enterprise questions require combining:
- policy + exception addendum
- procedure + environment-specific note
- core product doc + release note
- pricing rule + eligibility matrix
- legal policy + regional appendix
If your coverage review ignores this, you will overestimate readiness.
Label which query classes require:
- single-document evidence
- multi-chunk same-document evidence
- multi-document same-source evidence
- multi-document cross-source evidence
Then test whether your retrieval/context assembly pipeline can actually gather sufficient evidence within latency and context constraints.
This is where architecture choices matter.
Architecture tradeoffs
- Simple top-k dense retrieval is fast and cheap but weak on dispersed evidence.
- Hybrid retrieval plus reranking improves recall for terminology-heavy enterprise content with moderate latency increase.
- Hierarchical retrieval can help long documents: retrieve document first, then relevant sections.
- Metadata-constrained retrieval is essential for eligibility and exception classes but requires trustworthy schema.
- Agentic multi-hop retrieval may improve cross-document synthesis but raises latency, cost, and evaluation complexity.
A common production pattern is to reserve expensive multi-hop or broader retrieval for query classes known to require it, instead of applying it globally.
Model and tool choices for coverage work
Coverage evaluation is not just a modeling problem. Tooling and architecture influence what you can measure.
Dense-only vs hybrid retrieval
If your corpus contains product names, codes, legal phrases, version identifiers, or internal jargon, dense-only retrieval often hides coverage issues because semantically similar but wrong documents look plausible.
Hybrid retrieval usually gives better failure visibility and operational performance for enterprise corpora. Sparse search catches exact identifiers and clause language. Dense retrieval handles paraphrase. Reranking then improves precision.
Tradeoff:
- Dense-only: lower implementation complexity, often lower infra complexity
- Hybrid: better recall and debugging transparency, somewhat higher index/storage/ops overhead
For pre-launch coverage measurement, hybrid is often worth it because it helps distinguish “not present” from “present but not found.”
Rerankers
Cross-encoder rerankers often improve evidence precision significantly on policy and procedure corpora. They are especially useful when retrieval returns near-duplicates or broad parent docs instead of the exact applicable section.
Tradeoff:
- Better precision@k
- Additional latency per query
- Cost scales with number of candidates reranked
For coverage testing, reranking logs are useful because they show whether the right document was in the candidate set but demoted or promoted incorrectly.
LLM judges for labeling
LLMs can accelerate answerability and evidence sufficiency labeling, but do not let them be the sole judge on high-risk classes. Use them for triage and SME review prioritization.
Good use cases:
- clustering queries into classes
- proposing likely evidence docs
- identifying possible missing constraints in a question
- preliminary sufficiency scoring
Bad use cases without human review:
- final determination of policy correctness
- deciding whether a query is truly answerable in a compliance-sensitive domain
Cost and latency tradeoffs in pre-launch evaluation
Teams often hesitate to run large-scale coverage studies because they seem expensive. In practice, the cheaper path is usually to evaluate thoroughly before launch rather than debug trust failures after launch.
Still, you should be deliberate.
Where cost accumulates
- embedding large corpora repeatedly during iteration
- reranking many candidates for every query
- using frontier LLMs for exhaustive labeling
- running agentic retrieval in eval loops
- human SME review time
Practical cost controls
- Freeze a corpus snapshot for each eval cycle.
- Sample heavily from low-risk classes and densely from high-risk classes.
- Use weaker/cheaper models for triage labeling, then escalate uncertain cases.
- Cache retrieval outputs and judge prompts aggressively.
- Run staged evals: retrieval-only first, generation second.
- Use document-family deduplication to avoid wasted review on near-identical chunks.
Latency implications for architecture decisions
Pre-launch coverage often reveals that the architecture needed for acceptable recall on hard classes is slower than the product can tolerate globally. That is not a reason to avoid measuring it. It is a reason to route selectively.
A common pattern:
- Fast path: low-risk factual and procedural queries use standard hybrid retrieval + reranking.
- Slow path: policy exceptions or compliance questions use metadata-heavy or broader retrieval.
- Out-of-scope path: live status or transactional questions are routed to tools, structured systems, or graceful refusal.
Coverage analysis should inform this routing design.
A concrete implementation plan
Here is a practical 6-week pre-launch plan for a team with an existing corpus and prototype retriever.
Week 1: Define scope and query taxonomy
Deliverables:
- 10 to 20 query classes
- traffic and risk weighting per class
- corpus registry baseline
- initial out-of-scope policy
Inputs:
- support and search logs
- SMEs from operations, policy, and product
- source system inventory
Week 2: Build the evaluation dataset
Deliverables:
- real-query sample stratified by class
- synthetic edge-case set for metadata combinations
- label guide for answerability and retrieval outcomes
Targets:
- 100 to 300 real queries per important class if available
- 20 to 50 synthetic probes per key metadata dimension
Week 3: Create evidence maps for priority classes
Deliverables:
- canonical evidence documents for high-risk classes
- metadata dependency matrix
- expected authoritative document list
This week usually uncovers the first serious corpus gaps.
Week 4: Run retrieval and label failures
Deliverables:
- top-k retrieval logs
- answerability labels
- failure mode labels
- initial class-level coverage dashboard
At this stage, separate issues into:
- corpus acquisition/ingestion
- metadata schema/indexing
- retriever/reranker tuning
- routing/scope design
Week 5: Fix the highest-leverage gaps
Typical fixes:
- ingest missing policy sets or appendices
- normalize product and region metadata
- mark deprecated docs and boost approved current versions
- add hybrid retrieval or reranking
- change chunking for long structured documents
- add routing for live-data queries
Week 6: Re-run eval and apply release gates
Deliverables:
- updated coverage by class
- unresolved risks with owners
- launch recommendation: go / partial go / no-go
- post-launch monitoring plan
What release criteria should look like
A real launch gate should combine coverage, answerability, and operational safeguards.
Here is an example.
Minimum release criteria
-
High-risk classes
- At least 95% of sampled queries labeled A1 or explicitly routed out of scope
- At least 90% sufficient evidence retrieved within top-5 or top-10 depending on workflow
-
Metadata-critical classes
- Required attributes present and reliable for 98% of authoritative documents
- Filter logic validated on adversarial synthetic probes
-
Corpus completeness
- 100% of identified canonical documents for high-risk classes indexed
- Freshness SLA met for all launch-critical sources
-
Unanswerable handling
- A4/A5 queries reliably refused or routed
- No generation path that encourages unsupported answers
-
Failure transparency
- Retrieval logs, source citations, and fallback analytics in place
-
Business signoff
- Source owners agree corpus is authoritative enough for intended scope
Notice what is absent: a single average answer score. That metric is not enough.
Common failure patterns you will find
If you run this process seriously, you will likely discover some combination of the following.
“We have the docs, but not the right docs”
The corpus is broad but missing the specific appendices, exception sheets, and latest overrides that matter operationally.
“We retrieve relevance, not applicability”
The system finds semantically related policies but cannot reliably apply region, date, or segment constraints.
“The answer exists across documents, but our pipeline assumes single-source evidence”
Users ask compound questions that require policy plus exception plus procedure.
“Our eval set reflected SME phrasing, not user phrasing”
Real users ask with shorthand, symptoms, incomplete constraints, and internal slang absent from the benchmark.
“A large portion of traffic should never have been sent to static RAG”
Transactional status, account-specific details, and changing operational data require tools or structured backends.
These findings are not bad news. They are exactly what you want before launch.
Post-launch monitoring should continue the same framework
Pre-launch coverage work is not one-and-done. Corpus drift begins immediately.
You need monitoring for:
- new query classes emerging in traffic
- rising unanswerable rates by class
- source freshness failures
- metadata null-rate increases
- retrieval misses concentrated in newly launched products or regions
- citation patterns showing overreliance on stale documents
A strong practice is to maintain a rolling “coverage debt” queue just like tech debt. Every week, review:
- newly observed unanswered or poorly answered intents
- documents repeatedly needed but not indexed
- metadata fields causing fallback to broad retrieval
- classes where users reformulate queries multiple times before success
This turns RAG maintenance into an observable operational function rather than an anecdotal prompt-tuning exercise.
The leadership takeaway
For engineering leaders, the message is simple: before you approve a RAG launch, ask for a coverage report, not just a demo and not just an answer-quality average.
Ask:
- What are the top query classes by expected traffic and business risk?
- For each, what fraction is answerable from the current corpus?
- Which classes depend on metadata we cannot yet filter on reliably?
- What authoritative sources are still missing or stale?
- Which questions require live data or cross-system joins outside static RAG scope?
- What are the explicit no-go criteria?
If the team cannot answer those questions, they do not yet know whether they have a model problem or a knowledge readiness problem.
The practitioner takeaway
If you are building the system, the practical lesson is to stop treating retrieval evaluation as just search relevance testing. Before launch, you need a broader discipline:
- model the real query distribution
- classify by retrieval behavior and business risk
- label answerability separately from retrieval quality
- map query classes to authoritative evidence
- audit missing documents and ingestion completeness
- test metadata constraints adversarially
- distinguish static-corpus questions from live-data questions
- set class-level release gates
Do this, and your team will surface the hard truths early: which gaps are in the corpus, which are in metadata, which are in retrieval, and which are in product scope.
That honesty is what makes a RAG launch durable.
Because in production, users do not care whether your prompt is elegant. They care whether the system knows enough to answer, knows when it does not, and reliably finds the evidence that should already be there.