This prompt is for verification engineers and pipeline developers who need to assess multi-source agreement on a set of claims. It takes a list of claims and their associated evidence from multiple sources and produces a structured corroboration report. The report identifies corroboration patterns, builds a source agreement matrix, flags outlier evidence, and detects false consensus where multiple sources repeat the same unverified claim. Use this prompt after claim extraction and evidence matching steps are complete. It is not a substitute for those upstream processes. The output is designed to feed into audit trails, human review queues, and confidence scoring systems.
Prompt
Evidence Corroboration Report Prompt

When to Use This Prompt
Defines the job-to-be-done, required inputs, and boundaries for the Evidence Corroboration Report Prompt.
The ideal user has already run claim extraction against source content and evidence matching against a knowledge base or document set. You should have a structured input containing at minimum: a unique claim ID per assertion, the claim text, and a list of evidence records with source identifiers and relevance scores. This prompt assumes the evidence has already been retrieved and paired with claims. It does not perform retrieval, claim decomposition, or source authority assessment. If you need those capabilities, use the upstream prompts for claim extraction, evidence matching, and source authority documentation before invoking this corroboration step.
Do not use this prompt when you have fewer than two sources per claim, when evidence has not been matched to claims, or when you need a binary true/false verdict. This prompt analyzes agreement patterns, not individual claim truth values. It is also not a replacement for human judgment in high-stakes domains. The false-consensus detection logic can identify when multiple sources echo the same unverified claim, but it cannot verify the underlying facts independently. Always route outputs through human review for claims with regulatory, legal, or safety implications. The report should be treated as an analytical input to decision-making, not a final determination.
Use Case Fit
Where the Evidence Corroboration Report Prompt delivers reliable multi-source agreement analysis and where it introduces risk.
Strong Fit: Multi-Source Verification Pipelines
Use when: you have 3+ independent sources for the same claim and need a structured agreement matrix. Guardrail: The prompt excels at surfacing corroboration patterns and outlier evidence when sources are pre-retrieved and clearly demarcated.
Strong Fit: Audit-Ready Corroboration Documentation
Use when: compliance or governance stakeholders require a traceable report showing which sources agreed, which contradicted, and why. Guardrail: Pair with the Evidence Chain Assembly Prompt to ensure every agreement or conflict in the report links back to a specific source passage.
Poor Fit: Single-Source Verification
Avoid when: only one source is available for a claim. Corroboration analysis requires multiple sources to detect agreement patterns. Guardrail: Route single-source claims to the Evidence Sufficiency Assessment Report Prompt instead, which handles 'not enough evidence' classification properly.
Poor Fit: Real-Time or Low-Latency Applications
Avoid when: sub-second response is required. Multi-source comparison and agreement matrix generation is computationally intensive. Guardrail: Use this prompt in batch or async verification pipelines with appropriate timeout budgets and retry logic.
Required Inputs: Pre-Retrieved Evidence with Provenance
Risk: The prompt cannot retrieve sources itself. Feeding it unlabeled or unprovenanced text produces unreliable agreement matrices. Guardrail: Always provide sources with unique identifiers, retrieval timestamps, and authority metadata. Validate source completeness before invoking the prompt.
Operational Risk: False Consensus Detection
Risk: Multiple sources may agree because they all cite the same original source, creating an illusion of independent corroboration. Guardrail: Include source-origin metadata in the input and instruct the prompt to flag circular citation patterns. Pair with the Source Authority Documentation Prompt for origin tracking.
Copy-Ready Prompt Template
A reusable prompt template for generating an evidence corroboration report from a set of claims and their associated evidence sources.
This prompt template is the core instruction set for generating an Evidence Corroboration Report. It is designed to be copied directly into your application or testing environment. The template uses square-bracket placeholders, such as [CLAIMS_AND_EVIDENCE], which you must replace with your actual data before sending it to the model. The prompt instructs the model to analyze multi-source agreement, construct a source agreement matrix, and identify outlier evidence, all while adhering to a strict output schema.
textYou are a meticulous verification engineer. Your task is to analyze a set of claims and their associated evidence to produce a structured Evidence Corroboration Report. **INPUT DATA** [CLAIMS_AND_EVIDENCE] **INSTRUCTIONS** 1. **Analyze Corroboration:** For each claim, analyze the provided evidence sources to determine the level of agreement. Categorize the evidence as 'Supporting', 'Contradicting', or 'Contextual/Neutral'. 2. **Construct Agreement Matrix:** Create a matrix mapping each claim to its evidence sources and their support status. 3. **Identify Outliers:** Flag any evidence that is a significant outlier, either strongly contradicting a consensus or being the sole source for a critical point. Explain why it is an outlier. 4. **Detect False Consensus:** Check for patterns where multiple sources appear to agree but are likely citing the same single origin or are not independent. Flag this as a potential false consensus. 5. **Generate Report:** Compile your findings into the final report, adhering strictly to the [OUTPUT_SCHEMA]. **CONSTRAINTS** - Do not introduce new information not present in the [CLAIMS_AND_EVIDENCE]. - If evidence for a claim is missing or insufficient, explicitly state that corroboration could not be determined. - For each claim, provide a concise 'Corroboration Summary' (e.g., 'Strongly Corroborated', 'Partially Corroborated', 'Contradicted', 'Insufficient Evidence'). - The report must be a valid JSON object matching the [OUTPUT_SCHEMA]. **OUTPUT SCHEMA** ```json { "report_title": "Evidence Corroboration Report", "generated_at": "[TIMESTAMP]", "claims_analyzed": [ { "claim_id": "string", "claim_text": "string", "corroboration_summary": "Strongly Corroborated | Partially Corroborated | Contradicted | Insufficient Evidence", "agreement_matrix": [ { "source_id": "string", "source_excerpt": "string", "support_status": "Supporting | Contradicting | Contextual/Neutral" } ], "outlier_evidence": [ { "source_id": "string", "reason_for_outlier_status": "string" } ], "false_consensus_flag": { "is_potential_false_consensus": true, "rationale": "string" } } ], "overall_assessment": "string" }
To adapt this template, replace the [CLAIMS_AND_EVIDENCE] placeholder with a structured data object containing your claims and evidence. The [OUTPUT_SCHEMA] is provided inline as a JSON block for the model to follow. For high-stakes verification, always implement a post-generation validation step to check the JSON structure and confirm that every 'Supporting' or 'Contradicting' status in the agreement matrix is directly traceable to a source excerpt provided in the input. A human review step is required before using this report for compliance or regulatory purposes.
Prompt Variables
Required inputs for the Evidence Corroboration Report Prompt. Each placeholder must be populated before execution. Validation notes describe how to verify the input is well-formed and safe.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[CLAIMS_LIST] | Array of discrete, atomic claims to verify for corroboration | ["Product X reduces latency by 40%", "Competitor Y entered market in Q3 2023"] | Schema check: non-empty array of strings. Each claim must be a single verifiable assertion. Reject compound claims or null entries. |
[EVIDENCE_SOURCES] | Array of evidence objects with source text, identifier, and metadata | [{"source_id":"src-01","text":"...","date":"2024-01-15","authority":"primary"}] | Schema check: array of objects with required fields source_id and text. Authority field must be from allowed enum. Empty array triggers insufficient-evidence flag. |
[CORROBORATION_THRESHOLD] | Minimum number of independent sources required to classify a claim as corroborated | 2 | Type check: positive integer. Values below 1 are invalid. Values above available source count should trigger a warning. Default 2 if not specified. |
[SOURCE_INDEPENDENCE_RULES] | Criteria for determining whether two sources are independent or derivative | {"same_author":false,"same_publication":false,"shared_parent_org":false,"citation_overlap_max":0.3} | Schema check: object with boolean and numeric fields. Citation overlap must be between 0.0 and 1.0. Missing fields default to strict independence requirements. |
[OUTPUT_SCHEMA] | Expected JSON structure for the corroboration report output | {"claim_id":"string","verdict":"corroborated|contradicted|insufficient_evidence","corroboration_count":"integer","agreement_matrix":"object","outlier_evidence":"array"} | Schema check: valid JSON Schema or example structure. Must include verdict enum, corroboration_count, and agreement_matrix fields. Reject schemas missing required output fields. |
[FALSE_CONSENSUS_CHECKS] | Rules for detecting when multiple sources agree due to shared origin rather than independent verification | {"check_circular_citation":true,"check_press_release_origin":true,"check_syndication_patterns":true} | Schema check: object with boolean flags. At least one check must be enabled. All false triggers a warning that false consensus detection is disabled. |
[CONTRADICTION_WEIGHTING] | How to weight contradictory evidence versus corroborating evidence in final verdict | {"single_contradiction_overrides":false,"authority_weighted":true,"recency_bias_days":90} | Schema check: object with boolean and numeric fields. Recency bias must be positive integer or null. Authority weighted requires source authority fields in evidence. |
Implementation Harness Notes
How to wire the Evidence Corroboration Report Prompt into a production verification pipeline with validation, retries, and human review gates.
The Evidence Corroboration Report Prompt is designed to operate as a mid-pipeline component that receives pre-extracted claims and matched evidence from upstream retrieval and matching steps. Do not feed raw documents directly into this prompt. The input should already contain structured claim objects with associated evidence records, source identifiers, and any preliminary confidence scores from earlier pipeline stages. This separation ensures the corroboration analysis focuses on agreement patterns rather than duplicating extraction or retrieval work.
Wire this prompt into your application by constructing a request payload with the following required fields: [CLAIMS] as an array of claim objects each containing claim_id, claim_text, and evidence_sources (an array of source objects with source_id, excerpt, and relevance_score). Include [CORROBORATION_THRESHOLD] to define the minimum number of agreeing sources required for a 'corroborated' label, and [OUTPUT_SCHEMA] specifying the expected JSON structure with fields for corroboration_matrix, agreement_clusters, outlier_evidence, and false_consensus_flags. After receiving the model response, validate the output against the schema immediately. Check that every claim_id in the input appears in the output matrix, that agreement clusters contain at least two sources, and that outlier evidence entries include explicit reasoning for their exclusion. If validation fails, retry once with the validation errors appended to the prompt as [PREVIOUS_ERRORS]. If the second attempt also fails, route the batch to a human reviewer with the partial output and error context.
For high-stakes verification workflows, implement a human review gate after successful validation. Flag reports where the false-consensus detection check identifies potential echo-chamber patterns—multiple sources agreeing but all deriving from a single origin source. Also flag reports where the corroboration-accuracy score falls below a configurable threshold (we recommend starting at 0.7 and calibrating based on domain requirements). Log every report generation event with the model version, input hash, output hash, validation status, and reviewer decision. This audit trail is essential for governance use cases. Avoid using this prompt for real-time or latency-sensitive applications; the multi-source comparison logic benefits from models with strong reasoning capabilities (GPT-4o, Claude 3.5 Sonnet, or equivalent) and typical response times range from 3-10 seconds depending on claim volume. For batch processing, implement a queue with configurable parallelism and a dead-letter queue for reports that exhaust retry budgets.
Expected Output Contract
Defines the required fields, types, and validation rules for the Evidence Corroboration Report. Use this contract to parse, validate, and store the model's response before surfacing it to users or downstream systems.
| Field or Element | Type or Format | Required | Validation Rule |
|---|---|---|---|
report_id | string (UUID v4) | Must parse as a valid UUID v4. Reject on format mismatch. | |
claim_id | string | Must match the [CLAIM_ID] from the input. Reject if missing or mismatched. | |
corroboration_status | enum: corroborated | contradicted | insufficient_evidence | false_consensus | Must be exactly one of the four enum values. Reject on unknown status. | |
source_agreement_matrix | array of objects (source_id, agrees_with_claim, agrees_with_source_ids) | Array must contain at least 2 entries. Each entry must have a non-empty source_id and boolean agrees_with_claim. Reject if fewer than 2 sources. | |
outlier_evidence | array of objects (source_id, divergence_reason) | If present, each entry must have a non-empty source_id and a divergence_reason string. Null allowed if no outliers detected. | |
corroboration_accuracy_score | number (0.0 to 1.0) | Must be a float between 0.0 and 1.0 inclusive. Reject if out of range or non-numeric. | |
false_consensus_detected | boolean | Must be true or false. If true, the false_consensus_explanation field is required. | |
false_consensus_explanation | string or null | Required if false_consensus_detected is true. Must be a non-empty string explaining the suspected false consensus. Null allowed if false_consensus_detected is false. |
Common Failure Modes
What breaks first in evidence corroboration reports and how to guard against it before the report reaches a reviewer or downstream system.
False Consensus from Correlated Sources
What to watch: The model treats multiple sources as independent when they actually derive from the same upstream origin (syndicated reports, shared press releases, mirrored datasets). This inflates corroboration scores and hides real evidentiary weakness. Guardrail: Add a source-independence check step before the corroboration matrix. Require the prompt to flag shared provenance, identical phrasing, or common authorship. If independence cannot be confirmed, downgrade the corroboration weight and note the dependency in the report.
Silent Evidence Omission
What to watch: The model reports only confirming or contradicting sources it found but fails to disclose the search scope, retrieval gaps, or evidence types that were expected but missing. This creates an illusion of completeness. Guardrail: Include a mandatory 'evidence coverage statement' section in the output schema. Require the prompt to list what was searched, what was not found, and what evidence types remain unaddressed. Validate that the section is non-empty before accepting the report.
Overconfident Agreement Language
What to watch: The model uses absolute language ('all sources confirm,' 'fully corroborated,' 'no disagreement') when the underlying evidence is partial, dated, or low-authority. This misleads downstream consumers who trust the summary without inspecting the matrix. Guardrail: Enforce calibrated language rules in the prompt. Map evidence sufficiency levels to specific phrasing ('strongly corroborated by 3 independent sources' vs 'partially supported by 2 sources with overlapping provenance'). Add an eval check that flags absolute claims when the source count or independence score is below a threshold.
Outlier Evidence Suppression
What to watch: The model minimizes or omits contradictory outlier evidence to produce a cleaner consensus narrative, especially when the outlier is a single source against a majority. This hides critical dissent that may be the most important signal. Guardrail: Require a dedicated 'outlier and dissent' section in the output schema. Instruct the prompt to surface every source that contradicts the majority, regardless of authority, and explain the nature of the disagreement. Validate that the outlier count matches the number of contradicting sources in the raw evidence set.
Temporal Drift in Evidence
What to watch: The model treats all evidence as equally current, mixing recent and outdated sources without surfacing recency conflicts. A claim that was true six months ago may be false today, but the report presents a blended picture. Guardrail: Add a temporal alignment check to the prompt. Require each source to be tagged with its publication or observation date. Instruct the model to flag claims where the evidence window spans a known change event or where the most recent source contradicts older ones. Include a 'recency conflict' flag in the output schema.
Matrix-to-Narrative Mismatch
What to watch: The corroboration matrix shows one pattern (e.g., mixed support with one strong contradiction), but the narrative summary tells a different story (e.g., 'generally supported'). This disconnect erodes trust when reviewers cross-check. Guardrail: Add a self-consistency validation step. After generating the report, run a secondary check that compares the narrative summary claims against the matrix data. Flag any summary statement that cannot be directly traced to a matrix cell. In automated pipelines, reject reports where the mismatch rate exceeds zero.
Evaluation Rubric
Criteria for testing the quality of an Evidence Corroboration Report before deployment. Use these checks in an automated eval harness or manual QA review.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Schema Compliance | Output is valid JSON matching the [OUTPUT_SCHEMA] exactly | JSON parse error or missing required fields | Schema validator with strict mode; reject on additional properties |
Source Attribution | Every corroboration finding cites at least one specific source ID from [SOURCE_SET] | Finding lacks source reference or uses placeholder like 'various sources' | Regex check for source ID pattern; null-check on citation field |
Corroboration Accuracy | Agreement/disagreement labels match the actual evidence content in [SOURCE_SET] | Label says 'corroborated' but cited sources contradict each other | Human spot-check on 10% sample; automated check via LLM-as-judge with evidence snippets |
False Consensus Detection | Report flags when multiple sources agree but derive from the same upstream origin | Multiple sources cited as independent corroboration but share identical phrasing or author | Deduplication check on source metadata; origin-tracking field populated |
Outlier Evidence Flagging | Report explicitly identifies sources that contradict the majority view | Contradictory source present in [SOURCE_SET] but not mentioned in report | Cross-reference: every source in [SOURCE_SET] appears in report with a finding label |
Uncertainty Communication | Confidence scores are calibrated and low-confidence findings include explicit caveats | High confidence assigned to single-source or low-authority evidence | Confidence threshold check: single-source findings must have confidence <= 0.7 |
Completeness | Report covers every claim in [CLAIM_LIST] and every source in [SOURCE_SET] | Claim or source present in input but absent from report output | Count comparison: len(report.claims) == len([CLAIM_LIST]); len(report.sources_consulted) == len([SOURCE_SET]) |
No Fabricated Evidence | All cited evidence text is verbatim or faithfully paraphrased from [SOURCE_SET] | Report contains evidence snippet not found in any provided source | Substring match or embedding similarity check against [SOURCE_SET] content; flag similarity < 0.85 |
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Adapt This Prompt
How to adapt
Start with the base prompt and a single claim-evidence pair. Remove strict schema requirements initially; ask for a structured but forgiving JSON block. Use a frontier model with a high context window to test the full corroboration logic before optimizing.
code[SYSTEM]: You are a verification analyst. Given a [CLAIM] and [EVIDENCE_SET], produce a JSON report with fields: claim, corroboration_status (corroborated | contradicted | insufficient), source_agreement_matrix, outlier_evidence, and confidence_score.
Watch for
- The model inventing sources not in [EVIDENCE_SET]
- False consensus when all sources derive from the same origin
- Overly verbose outlier descriptions that bury the key disagreement

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.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us