Inferensys

Prompt

Claim-to-Evidence Traceability Matrix Prompt

A practical prompt playbook for using the Claim-to-Evidence Traceability Matrix Prompt in production AI workflows.
Developer doing prompt engineering on laptop, prompt variations visible on screen, casual coding session.
PROMPT PLAYBOOK

When to Use This Prompt

Defines the job-to-be-done, ideal user, required context, and boundaries for the Claim-to-Evidence Traceability Matrix Prompt.

This prompt is for audit, compliance, and governance teams who need to prove that every factual claim in a document has been checked against evidence. It produces a traceability matrix mapping each discrete claim to its evidence sources, verification status, and coverage gaps. Use this when you need a complete verification coverage map, not just a list of supported or contradicted claims. This prompt assumes claims have already been extracted from the source content. If you need claim extraction first, pair this with a claim decomposition prompt from the Claim Extraction and Decomposition content group.

The ideal user is a verification pipeline operator or compliance analyst who has a list of atomic claims and a set of evidence documents, and needs to demonstrate exhaustive coverage to an auditor or internal reviewer. The required context includes the full set of claims with unique identifiers, the evidence corpus with source metadata, and any domain-specific evidence standards that define what counts as sufficient support. The output is a structured matrix—not a narrative summary—that shows every claim, its matched evidence, verification status (supported, contradicted, insufficient, or not checked), and explicit gap flags for claims that could not be verified.

Do not use this prompt when you need a simple supported/unsupported binary label, when you lack claim identifiers for traceability, or when the evidence corpus is too large to fit in context without retrieval augmentation. For those cases, use the Evidence Sufficiency Assessment Prompt for binary decisions or pair this prompt with a retrieval step that pre-filters evidence per claim. Also avoid this prompt when the goal is to generate a prose audit report; the matrix output is a structured artifact meant for downstream processing or human review, not a final narrative deliverable. For narrative reports, chain this prompt's output into a Verification Report and Audit Trail Generation prompt.

PRACTICAL GUARDRAILS

Use Case Fit

Where the Claim-to-Evidence Traceability Matrix prompt works and where it does not. This prompt is designed for audit and compliance workflows requiring complete verification coverage documentation, not for real-time RAG answer generation.

01

Good Fit: Audit and Compliance Workflows

Use when: you need a complete, auditable record showing every extracted claim mapped to its supporting or contradicting evidence with verification status. Guardrail: the output is a documentation artifact, not a real-time answer. Schedule batch runs and store matrices for reviewer sign-off.

02

Bad Fit: Real-Time RAG Answer Generation

Avoid when: the primary goal is generating a fluent answer with inline citations for an end user. This prompt produces a structured matrix for review, which adds latency and token overhead unsuitable for interactive chat. Guardrail: use the Claim-to-Evidence Pairing or Source Attribution with Inline Citation prompts instead.

03

Required Inputs: Extracted Claims and Evidence Set

What to watch: the prompt requires a pre-extracted list of discrete, atomic claims and a pre-retrieved set of evidence passages. It does not perform extraction or retrieval itself. Guardrail: run a Claim Extraction prompt first, then a Retrieval step, before invoking this matrix prompt. Validate claim atomicity before matrix generation.

04

Operational Risk: Coverage Gap Blind Spots

What to watch: the matrix can only map claims you provide. Unasked questions, implicit claims, or claims missed during extraction will not appear as gaps. Guardrail: pair this prompt with a Missing Evidence Gap Analysis prompt to identify what was never extracted. Review the claim extraction step for recall before trusting matrix completeness.

05

Operational Risk: Evidence Contamination Across Claims

What to watch: when the same evidence passage is used for multiple claims, the model may incorrectly cross-apply evidence or fail to distinguish which claim component is supported. Guardrail: include explicit instructions to match evidence to specific claim components, not entire claims. Add a post-processing validation check for duplicate evidence citations with different verdicts.

06

Scale Limit: Token Budget and Claim Count

What to watch: a full traceability matrix with many claims and evidence passages can exceed context windows, causing truncation or degraded matching at the boundaries. Guardrail: batch claims into groups of 10-20 with overlapping evidence windows. Stitch batch outputs together and run a cross-batch consistency check for claims near batch boundaries.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A single-turn prompt that produces a complete claim-to-evidence traceability matrix with verification status, coverage gaps, and audit-ready structure.

This prompt is designed for audit and compliance workflows where every extracted claim must be explicitly mapped to supporting or contradicting evidence, and any unaddressed claims must be surfaced as coverage gaps. The prompt expects all claims and all evidence to be provided in context—it does not perform retrieval. Use this when you already have a set of extracted claims and a corpus of source documents, and you need a structured matrix showing exactly which evidence addresses which claim, with verification status and gap detection.

text
You are a verification auditor producing a claim-to-evidence traceability matrix. Your output must be complete, structured, and suitable for compliance review.

## INPUT

### Claims
[CLAIMS]

### Evidence Sources
[EVIDENCE_SOURCES]

## TASK

For each claim in [CLAIMS], determine whether the provided [EVIDENCE_SOURCES] contain information that supports, contradicts, or fails to address the claim. Produce a traceability matrix that maps every claim to its relevant evidence with verification status.

## CONSTRAINTS

- Every claim in [CLAIMS] must appear in the output matrix. No claim may be omitted.
- If a claim has no matching evidence in [EVIDENCE_SOURCES], mark it as "UNVERIFIED" and document the gap.
- If evidence partially addresses a claim, mark it as "PARTIAL" and specify which components are covered and which are not.
- Do not infer evidence beyond what is explicitly present in [EVIDENCE_SOURCES].
- Quote the specific passage from the evidence source that supports or contradicts each claim.
- If multiple evidence sources address the same claim, include all of them with their individual statuses.
- If evidence sources contradict each other on the same claim, flag the conflict explicitly.

## OUTPUT SCHEMA

Return a JSON object with the following structure:

{
  "matrix": [
    {
      "claim_id": "string",
      "claim_text": "string",
      "verification_status": "SUPPORTED | CONTRADICTED | PARTIAL | UNVERIFIED | CONFLICT",
      "evidence_matches": [
        {
          "source_id": "string",
          "source_reference": "string",
          "quoted_evidence": "string",
          "match_type": "SUPPORTS | CONTRADICTS | PARTIAL",
          "match_explanation": "string"
        }
      ],
      "coverage_gap": "string | null"
    }
  ],
  "summary": {
    "total_claims": "number",
    "supported_count": "number",
    "contradicted_count": "number",
    "partial_count": "number",
    "unverified_count": "number",
    "conflict_count": "number",
    "coverage_gaps": ["string"]
  }
}

## RULES

- "claim_id" must match the identifier provided in [CLAIMS].
- "source_id" must match the identifier provided in [EVIDENCE_SOURCES].
- "coverage_gap" must be null if verification_status is SUPPORTED or CONTRADICTED. For UNVERIFIED claims, describe what evidence would be needed. For PARTIAL claims, describe which claim components lack evidence.
- "quoted_evidence" must be a verbatim excerpt from the evidence source, not a paraphrase.
- If [EVIDENCE_SOURCES] is empty or contains no relevant evidence for any claim, all claims must be marked UNVERIFIED with appropriate gap descriptions.

To adapt this prompt, replace [CLAIMS] with a structured list of claims including unique identifiers and full claim text. Replace [EVIDENCE_SOURCES] with a structured list of source documents including identifiers, references, and full text. The prompt expects both inputs to be pre-processed and formatted before insertion. If your claims or evidence sources lack identifiers, generate them in your preprocessing step. For high-stakes audit workflows, add a [RISK_LEVEL] parameter that adjusts the strictness of partial-match handling and the verbosity of coverage gap descriptions. Always validate the output JSON against the schema before accepting results, and route any matrix with UNVERIFIED claims exceeding your risk threshold to human review.

IMPLEMENTATION TABLE

Prompt Variables

Variables required to execute the Claim-to-Evidence Traceability Matrix prompt. Validate each input before sending to prevent silent failures, hallucinated citations, or incomplete coverage maps.

PlaceholderPurposeExampleValidation Notes

[CLAIMS_LIST]

Array of extracted, atomic claims to be verified. Each claim must be a single verifiable assertion with a unique ID.

[{"claim_id": "C1", "text": "Revenue grew 14% YoY in Q3.", "source_context": "Executive summary, paragraph 2"}]

Schema check: array of objects with claim_id, text, source_context. Reject if claims are compound or unverifiable. Null not allowed.

[EVIDENCE_CORPUS]

Retrieved or provided evidence documents with unique identifiers and full text content.

[{"source_id": "DOC-001", "title": "Q3 Earnings Report", "text": "...", "date": "2024-09-30"}]

Schema check: array of objects with source_id, text. Reject if text field is empty or source_id is missing. Minimum 1 source required.

[VERIFICATION_STANDARD]

Domain-specific rules defining what constitutes sufficient evidence, acceptable sources, and required match types.

{"domain": "financial_reporting", "authority_threshold": "audited_financials", "recency_cutoff_days": 90, "require_direct_quote": false}

Schema check: object with domain, authority_threshold, recency_cutoff_days. Validate enum values for domain against allowed list. Null not allowed.

[OUTPUT_SCHEMA]

Expected structure for the traceability matrix output, including required fields and enum constraints.

{"matrix": [{"claim_id": "string", "evidence_matches": [{"source_id": "string", "match_type": "support|contradict|insufficient|partial", "quote": "string", "confidence": 0.0-1.0}], "verification_status": "verified|contradicted|unverified|partially_verified", "coverage_gap": "string|null"}]}

Schema check: valid JSON Schema object. Verify match_type and verification_status enums are defined. Reject if schema allows ambiguous status values.

[COVERAGE_THRESHOLD]

Minimum acceptable percentage of claims that must have at least one evidence match before flagging coverage gaps.

0.85

Range check: 0.0 to 1.0. Reject if below 0.5 or above 1.0. Default to 0.8 if not specified. Warn if threshold is 1.0 (unrealistic for production).

[CONFIDENCE_CALIBRATION]

Rules for mapping evidence quality to confidence scores, including penalty factors for source authority, recency, and corroboration.

{"base_confidence": 0.9, "authority_penalty": 0.2, "recency_penalty": 0.1, "single_source_penalty": 0.15, "min_confidence": 0.3}

Schema check: object with numeric penalty values. Validate all values are between 0.0 and 1.0. Reject if min_confidence exceeds base_confidence. Null allowed (use defaults).

[HUMAN_REVIEW_TRIGGERS]

Conditions that force a claim into human review queue instead of auto-verification.

{"confidence_below": 0.6, "contradiction_detected": true, "no_evidence_found": true, "high_risk_domains": ["clinical", "legal_liability"]}

Schema check: object with boolean and array fields. Validate high_risk_domains against allowed domain list. At least one trigger condition required. Null not allowed for production use.

[MAX_MATRIX_SIZE]

Maximum number of claims allowed in a single prompt call to prevent context overflow and cost overruns.

50

Integer check: minimum 1, maximum 200. Reject if exceeded and require batching. Warn if above 100 due to potential context window constraints. Default to 50 if not specified.

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the Claim-to-Evidence Traceability Matrix prompt into a production verification pipeline with validation, retries, logging, and human review routing.

This prompt is typically the final stage in a multi-step verification workflow. The upstream pipeline should handle claim extraction, evidence retrieval, and deduplication before this prompt runs. The prompt expects a structured input containing a list of claims with unique IDs and a set of evidence sources with identifiers. It produces a matrix mapping every claim to its evidence, verification status, and gap flags. Do not use this prompt for initial claim extraction or evidence retrieval—it assumes those steps are complete and focuses solely on traceability mapping and coverage documentation.

In production, wrap this prompt in a validation layer that checks every claim ID from the input appears in the output matrix. Missing claim IDs in the output indicate a model truncation or attention failure, especially with large claim sets. Implement a post-processing validator that extracts all claim IDs from the input, extracts all claim IDs from the output matrix, and computes the set difference. If any input claims are missing from the output, log the mismatch and retry with a reduced batch size or explicit instruction to include all claims. For high-stakes audit workflows, route any claim with INSUFFICIENT status or gap_flag: true to a human review queue with the full evidence context attached—do not auto-resolve these claims downstream. Log the complete prompt, output, and validation results for audit trail purposes. Consider running this prompt with temperature=0 and a strict JSON mode to maximize output consistency across runs. If your model provider supports structured output constraints, supply the expected JSON schema directly rather than relying on prompt-level format instructions alone.

When integrating this into a pipeline, set a maximum claim batch size based on your model's context window and observed attention reliability. Claims with long evidence passages may require smaller batches. Implement a retry strategy: if validation detects missing claims or malformed JSON, retry once with the same input and a stronger format reminder. If the second attempt fails, split the batch in half and retry each half separately. For audit and compliance use cases, store the full prompt, raw model output, validation results, and any human review decisions in an append-only log with timestamps and model version identifiers. Never silently drop claims that fail verification—every claim must appear in the output matrix or be explicitly flagged as unprocessed with a documented reason.

IMPLEMENTATION TABLE

Expected Output Contract

Fields, format, and validation rules for the traceability matrix output. Use this contract to build a parser and validator before deploying the prompt.

Field or ElementType or FormatRequiredValidation Rule

traceability_matrix

JSON array of objects

Top-level key must be an array. Fail if missing or not an array.

traceability_matrix[].claim_id

string

Must match a claim_id from the input claims array. Fail if unmatched or missing.

traceability_matrix[].claim_text

string

Must exactly reproduce the claim text from the input. Fail on truncation, paraphrase, or alteration.

traceability_matrix[].evidence_sources

array of objects

Must contain at least one object if status is 'verified' or 'contradicted'. May be empty if status is 'unverified'.

traceability_matrix[].evidence_sources[].source_id

string

Must match a source_id from the input evidence set. Fail if hallucinated or missing.

traceability_matrix[].evidence_sources[].quote

string

Must be a verbatim substring from the referenced source. Fail if fabricated or paraphrased beyond minor whitespace normalization.

traceability_matrix[].verification_status

enum: verified | contradicted | unverified | partial

Must be one of the four allowed values. Fail on any other string.

traceability_matrix[].coverage_gap_note

string or null

Required when status is 'unverified'. Must describe what evidence is missing. Null allowed for verified or contradicted claims.

PRACTICAL GUARDRAILS

Common Failure Modes

What breaks first when generating claim-to-evidence traceability matrices and how to guard against it in production.

01

Silent Coverage Gaps

What to watch: The model reports a complete matrix but omits claims that lack evidence, creating a false sense of verification coverage. This happens when the prompt implies all claims must be mapped, and the model fills gaps with fabricated or misattributed evidence rather than flagging them as unverified. Guardrail: Explicitly require an 'Unmapped Claims' section in the output schema and validate that the total claim count matches the sum of mapped and unmapped entries before accepting the result.

02

Evidence-to-Claim Misattribution

What to watch: The matrix links a claim to a source that discusses a related but different assertion, creating a false traceability path. This is common when claims share keywords or when the model over-generalizes evidence relevance. Guardrail: Require a direct quote from the source alongside each evidence mapping, and run a secondary verification prompt that checks whether the quoted text actually supports the specific claim rather than a related topic.

03

Verification Status Inflation

What to watch: The model marks claims as 'Verified' when evidence is partial, circumstantial, or only tangentially related. This overstates verification coverage and undermines audit credibility. Guardrail: Define explicit status tiers—Confirmed, Partially Supported, Contradicted, Insufficient Evidence, Not Checked—with clear criteria for each. Require the model to justify the status selection with a one-sentence rationale per claim.

04

Source Identifier Drift

What to watch: Source references in the matrix become ambiguous or inconsistent, using different identifiers for the same document across rows. This breaks downstream audit trails and makes it impossible to trace evidence back to originals. Guardrail: Pre-assign canonical source IDs before matrix generation and include them in the prompt as a fixed reference table. Validate that every source reference in the output matches one of the provided IDs exactly.

05

Claim Boundary Collapse

What to watch: Compound claims containing multiple factual assertions are treated as a single unit, causing the matrix to show 'verified' when only one sub-claim has evidence. This hides verification gaps inside complex statements. Guardrail: Decompose claims into atomic, single-fact units before matrix generation. If decomposition happens in the same prompt, require the model to output the decomposed claim list first, then build the matrix from those atomic units.

06

Audit Trail Incompleteness

What to watch: The matrix shows final verification statuses but omits the reasoning path, making it impossible for auditors to understand why a claim was marked as verified or unverified. This fails compliance requirements for explainable verification. Guardrail: Include an 'Evidence Rationale' field for every claim row that captures the specific reasoning connecting the quoted evidence to the verification decision. Validate that no row has a status without a corresponding rationale.

IMPLEMENTATION TABLE

Evaluation Rubric

Run these checks on a golden dataset with known claim-to-evidence mappings before shipping the Claim-to-Evidence Traceability Matrix Prompt. Each criterion validates a specific failure mode observed in production traceability pipelines.

CriterionPass StandardFailure SignalTest Method

Claim Coverage Completeness

Every claim from [CLAIMS_LIST] appears in the output matrix with a non-null status

Missing claims in output; claims present in input but absent from matrix rows

Parse output JSON; extract all claim IDs; compute set difference against input claim IDs; assert difference is empty

Evidence Link Validity

Every evidence reference in the matrix resolves to an actual source in [EVIDENCE_SET] with matching source_id

Hallucinated source_id values; evidence quotes that do not appear in the referenced source document

For each evidence reference, substring-search the quoted text in the source document identified by source_id; flag any reference with zero matches

Verification Status Accuracy

Status labels (verified/contradicted/insufficient/unaddressed) match ground-truth labels in the golden dataset for at least 95% of claims

Status mismatch rate exceeds 5%; systematic bias toward verified when ground truth is insufficient

Compute confusion matrix between output status and golden label; measure per-class precision and recall; flag any class with recall below 0.90

Coverage Gap Detection

Output includes an explicit coverage_gaps array listing every claim with status unaddressed or insufficient, with a reason string

Claims with insufficient evidence are silently omitted from gap analysis; gap array is empty when unaddressed claims exist

Extract coverage_gaps array; collect all claim IDs with status unaddressed or insufficient; assert every such claim ID appears in coverage_gaps with a non-empty reason field

Traceability Chain Completeness

For every claim with status verified or contradicted, the output includes a traceability_path array with at least one evidence node containing source_id, quote, and match_type

Verified claims with empty traceability_path; missing match_type field; evidence node present but quote field is null or truncated

Iterate verified and contradicted claims; assert traceability_path is non-empty array; assert each node has non-null source_id, quote, and match_type fields; validate match_type is one of [support, contradict, partial_support]

Schema Compliance

Output parses as valid JSON matching the [OUTPUT_SCHEMA] without extra or missing required fields

JSON parse failure; required fields missing; unexpected fields present that violate schema contract

Validate output against JSON Schema using a schema validator; assert no parse errors; assert all required fields present; assert no additional properties unless schema permits

No Cross-Contamination

Evidence assigned to one claim does not leak into another claim's evidence list unless the evidence genuinely supports both claims

Same evidence quote appears in multiple claim rows without justification; evidence from one source attributed to a different source_id

Group evidence quotes by source_id; detect duplicate quotes across claim rows; for each duplicate, verify that the quote genuinely appears in both claim contexts in the golden dataset

Confidence Score Calibration

Confidence scores in the output correlate with ground-truth verification difficulty ratings (Spearman ρ ≥ 0.7)

High confidence assigned to claims the golden dataset marks as ambiguous; low confidence on straightforward verified claims

Extract confidence scores from output; compute Spearman rank correlation against golden difficulty ratings; flag if correlation below 0.7 or if mean confidence for ambiguous claims exceeds mean for straightforward claims

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Start with the base prompt and a small set of 5-10 claims. Use a single source document. Skip the full matrix schema initially—ask for a simple list of claim-evidence-status tuples first. Validate manually before adding automation.

Prompt snippet

code
For each claim in [CLAIMS_LIST], check [SOURCE_DOCUMENT] and return:
- claim text
- evidence found (quote or 'none')
- status: verified | contradicted | unverified

Watch for

  • Model inventing evidence when none exists
  • Skipping claims without explanation
  • Inconsistent status labels across runs
Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.