This prompt is for verification engineers and AI pipeline builders who need to determine whether multiple sources independently confirm a factual claim or merely echo a single origin. The core job-to-be-done is detecting echo chambers, circular citations, and syndication chains that inflate perceived corroboration. Use this when your fact-checking pipeline has already extracted a claim and retrieved multiple sources that appear to support it—before you assign a high confidence score based on 'multiple sources' that are actually one source republished. The ideal user operates an automated verification system and needs a programmatic independence score to weight evidence correctly, route claims for human review, or prevent false corroboration from propagating into final reports.
Prompt
Independent Source Agreement Scoring Prompt

When to Use This Prompt
Define the job, ideal user, and constraints for the Independent Source Agreement Scoring Prompt.
Do not use this prompt for initial source retrieval, claim extraction, or single-source credibility assessment. It is not designed to evaluate source authority, recency, or factual accuracy in isolation—those are separate upstream prompts. This prompt assumes you already have a target claim and a list of candidate sources with extracted text. It is also not a replacement for full provenance chain reconstruction when investigating deliberate disinformation; for that, pair it with the Source Provenance Chain Reconstruction Prompt. The prompt works best when sources include publication dates, author bylines, and explicit attribution statements. Performance degrades when sources are stripped of metadata, lack timestamps, or come from platforms that systematically obscure origin (e.g., aggregator sites without clear syndication labels).
Before wiring this into production, define your independence threshold: what score triggers 'independent confirmation' versus 'echo chamber' versus 'uncertain—human review'? The prompt produces a structured score and explanation, but your application must decide the action. For high-stakes domains (legal, medical, financial), always route uncertain and echo-chamber classifications to human review with the full source set and the prompt's reasoning attached. The next section provides the copy-ready template with placeholders for your claim, sources, and output schema.
Use Case Fit
Where the Independent Source Agreement Scoring Prompt works, where it fails, and what you must provide before using it in a production verification pipeline.
Good Fit: Multi-Source Corroboration
Use when: you have three or more sources making the same factual claim and need to detect whether they independently confirm it or merely echo a single origin. Guardrail: Always require at least two sources beyond the primary to calculate a meaningful independence score; single-source verification should use a different prompt.
Bad Fit: Single-Source Verification
Avoid when: only one source is available for a claim. Independence scoring requires comparison across sources, and running it on a single source produces misleadingly high or undefined scores. Guardrail: Route single-source claims to the Evidence Sufficiency Scoring prompt instead, and flag them as 'insufficient corroboration' rather than 'independently verified.'
Required Inputs
Must provide: the target claim text, a list of source documents with full content and metadata (publication date, author, publisher, URL), and the expected independence threshold for your domain. Guardrail: Missing publication dates or author attribution makes echo-chamber detection unreliable; validate source metadata completeness before scoring.
Operational Risk: Syndication False Positives
What to watch: wire services, press release republication, and content syndication networks can make dependent sources appear independent. The prompt may score syndicated content as corroboration if publication metadata is identical or absent. Guardrail: Pre-process sources through the Source Provenance Chain Reconstruction Prompt before independence scoring, and flag same-day, identical-text sources for human review.
Operational Risk: Circular Citation
What to watch: sources that cite each other in a loop (A cites B, B cites C, C cites A) can produce a false independence signal. The prompt may miss circular chains longer than two hops. Guardrail: Run the Source Provenance Chain Reconstruction Prompt first to map citation relationships, then feed the chain graph into independence scoring with explicit circularity detection rules.
Not a Replacement for Human Judgment
What to watch: the independence score is a signal, not a verdict. High scores can still miss coordinated disinformation campaigns where sources deliberately obscure their connections. Guardrail: Route claims above a risk threshold (high-stakes domains, disputed topics, coordinated behavior patterns) to human review regardless of the independence score, and log the score as one input among several in the verification audit trail.
Copy-Ready Prompt Template
A reusable prompt template for scoring the independence of source agreement, with placeholders for claims, evidence sets, and output schema.
This prompt template is the core instruction set for the Independent Source Agreement Scoring workflow. It is designed to be copied directly into your prompt management system, IDE, or orchestration layer. The template uses square-bracket placeholders for all dynamic inputs, constraints, and configuration parameters. Before using it in production, you must replace each placeholder with the actual values for your verification run. The prompt instructs the model to analyze a set of sources that appear to corroborate a claim, determine whether they represent independent confirmation or echo-chamber repetition, and produce a structured independence score with a detailed rationale.
textYou are an expert verification analyst. Your task is to evaluate whether multiple sources independently confirm a claim or merely echo each other. ## CLAIM TO VERIFY [CLAIM_TEXT] ## SOURCES TO EVALUATE [SOURCE_SET] ## EVALUATION INSTRUCTIONS 1. For each source, extract the core evidence supporting or contradicting the claim. 2. Analyze the relationship between sources. Determine if they represent: - **Independent Confirmation**: Sources gathered evidence separately, using different methods, data, or primary observations. - **Echo Chamber**: Sources reference, cite, or republish each other without adding new evidence. - **Syndication/Republication**: One source is a verbatim or near-verbatim copy of another (e.g., wire service, press release reprint). - **Common Ancestor**: Sources share a single upstream origin (e.g., same study, same press release, same witness) but do not cite each other directly. 3. Assign an **Independence Score** from 0.0 to 1.0: - 1.0: Fully independent, no shared origin or cross-citation. - 0.0: Complete echo chamber, all sources trace to a single origin. 4. Flag any **Circular Citation** patterns where Source A cites Source B, which cites Source A. 5. Flag any **Syndication False Positives** where sources appear independent but are actually republished from a common wire service or PR feed. ## CONSTRAINTS [CONSTRAINTS] ## OUTPUT SCHEMA You must respond with a valid JSON object conforming to this schema: [OUTPUT_SCHEMA] ## EXAMPLES [EXAMPLES] ## RISK LEVEL [RISK_LEVEL]
To adapt this template, start by replacing [CLAIM_TEXT] with the exact claim under investigation. The [SOURCE_SET] placeholder should receive a structured list of sources, each with an identifier, full text or excerpt, publication metadata, and any known attribution chain. The [CONSTRAINTS] placeholder allows you to inject domain-specific rules, such as 'Treat all sources from the same parent company as potentially non-independent' or 'Flag any source published within 24 hours of the original as likely syndication.' The [OUTPUT_SCHEMA] must be a strict JSON Schema definition that includes fields for the independence score, source relationship graph, circular citation flags, syndication warnings, and a human-readable justification. The [EXAMPLES] placeholder should contain at least two few-shot examples: one showing clear independent confirmation and one showing an echo chamber with a common ancestor. The [RISK_LEVEL] parameter controls the model's caution: set to high for regulated domains where false independence could cause material harm, which will trigger more conservative scoring and explicit uncertainty language.
After adapting the template, validate it against your golden test set before deployment. Pay special attention to syndication false positives—sources from different domains that publish identical wire copy often fool naive independence checks. Also test for circular citation detection by constructing adversarial examples where sources form a citation loop. If the output schema validation fails in more than 5% of test runs, add explicit formatting examples to the [EXAMPLES] block or tighten the schema constraints in [CONSTRAINTS]. For high-stakes verification pipelines, always route independence scores below 0.3 to human review and log the full source relationship graph for auditability.
Prompt Variables
Required inputs for the Independent Source Agreement Scoring Prompt. Each placeholder must be populated before the prompt is sent to the model. Missing or malformed inputs are the most common cause of false positives in echo-chamber detection.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[CLAIM] | The factual assertion being verified for independent source agreement | The global average temperature increased by 1.1°C since pre-industrial levels | Must be a single atomic claim. Reject if multiple claims are concatenated. Length: 10-500 characters. |
[SOURCE_LIST] | Array of source objects with content, publication date, author, and outlet metadata | [{"id":"src1","content":"...","date":"2024-03-15","author":"Smith et al.","outlet":"Nature Climate"}] | Minimum 2 sources required. Each source must have id and content fields. Date and author can be null. Validate JSON parse before prompt assembly. |
[CLAIM_DOMAIN] | The knowledge domain of the claim for authority and recency calibration | climate_science | Must match a supported domain enum: climate_science, medicine, finance, legal, technology, general. Reject unknown domains. Controls recency window and authority weighting rules. |
[RECENCY_WINDOW_DAYS] | Maximum acceptable age in days for a source to be considered current for this claim domain | 365 | Integer. Must be positive. Default: 730 for general domain. Override per domain: climate_science=365, medicine=180, technology=90. Null allowed if recency is not relevant to the claim. |
[MINIMUM_INDEPENDENT_SOURCES] | Threshold for the number of independent sources required to consider a claim confirmed | 3 | Integer between 2 and 10. Default: 3. Lower values increase false positive risk from echo chambers. Higher values may cause false negatives for niche claims with limited coverage. |
[OUTPUT_SCHEMA] | JSON schema defining the expected output structure for the independence score and evidence | {"independence_score":"number","echo_chamber_detected":"boolean","source_relationships":"array"} | Must be a valid JSON Schema object. Validate with a schema parser before prompt assembly. Reject if schema contains circular references or unsupported types. |
[ECHO_CHAMBER_INDICATORS] | Array of patterns that signal non-independent sources such as shared authors, syndication markers, or identical phrasing | ["same_author","wire_service_syndication","identical_phrasing_over_80_percent","circular_citation"] | Must be a JSON array of strings. Each indicator must match a known enum value. Reject unknown indicators. Default set provided if null. Controls sensitivity of echo-chamber detection. |
Implementation Harness Notes
How to wire the Independent Source Agreement Scoring Prompt into a production verification pipeline with validation, retries, and audit logging.
This prompt is designed to sit inside a verification pipeline after claim extraction and evidence retrieval but before final confidence scoring. It expects a claim and a list of source objects that have already been matched as potentially relevant. The harness should call this prompt once per claim, passing all candidate sources together so the model can assess cross-source relationships. Do not call it per-source-pair; the independence analysis requires the full source set to detect echo chambers and circular citation patterns.
Wrap the prompt in a function that enforces the output schema before returning results. Use a JSON Schema validator to confirm the response contains independence_score (0-1 float), echo_chamber_detected (boolean), independent_sources_count (integer), echo_chamber_sources (array of source IDs), and rationale (string). If validation fails, retry once with the error message appended to the prompt as a correction hint. If the second attempt also fails, log the failure and route the claim to a human review queue with the raw model output attached. For model choice, use a model with strong reasoning capabilities and a context window large enough to hold all source excerpts plus the prompt. GPT-4o or Claude 3.5 Sonnet are appropriate defaults. Set temperature to 0 or near-zero to maximize reproducibility of independence judgments.
Log every invocation with the claim ID, source IDs, independence score, echo chamber flag, and model version. This audit trail is essential for downstream verification reports and for debugging false positives. The most common production failure mode is syndication false positives: when two sources appear independent but are actually republishing the same wire service story. Mitigate this by including publication timestamps and syndication metadata in each source object passed to the prompt. If your source ingestion pipeline cannot reliably extract syndication indicators, add a pre-check that compares publication timestamps and author bylines before calling this prompt, and flag near-simultaneous publication with identical ledes for human review regardless of the model's independence score.
Expected Output Contract
Strict output schema for the Independent Source Agreement Scoring Prompt. Use this contract to validate model responses before they enter a verification pipeline. Every field must satisfy the listed validation rule or trigger a repair or retry.
| Field or Element | Type or Format | Required | Validation Rule |
|---|---|---|---|
independence_score | float (0.0–1.0) | Must be a number between 0 and 1 inclusive. Reject if non-numeric or out of range. Round to 2 decimal places for comparison. | |
score_confidence | float (0.0–1.0) | Must be a number between 0 and 1 inclusive. Reject if confidence exceeds 0.95 when fewer than 3 sources are provided. | |
independence_level | enum: independent | partially_dependent | fully_dependent | indeterminate | Must match one of the four enum values exactly. Reject any other string. Map score ranges: >=0.8 independent, >=0.5 partially_dependent, <0.5 fully_dependent. | |
echo_chamber_detected | boolean | Must be true or false. If true, echo_chamber_evidence must not be empty. If false, echo_chamber_evidence must be an empty array. | |
echo_chamber_evidence | array of objects | Each object must contain source_pair (array of 2 source IDs), relationship (enum: circular_citation | syndication | shared_author | shared_parent_org | near_identical_text), and confidence (float 0.0–1.0). Reject if relationship is not from the enum. | |
source_pair | array of 2 strings | Each string must match a source_id from the input [SOURCES] array. Reject if any source_id is not found in the input. Reject if array length is not exactly 2. | |
independent_sources_count | integer >= 0 | Must equal the count of sources classified as independent in the analysis. Reject if count exceeds total number of input sources. | |
total_sources_evaluated | integer >= 1 | Must equal the length of the input [SOURCES] array. Reject if mismatch. This is a completeness check. | |
analysis_summary | string (max 500 chars) | Must contain a plain-language explanation of the independence determination. Reject if empty or if it contains unresolved placeholders. Must mention the primary factor driving the score. | |
circular_citation_chain | array of arrays of strings | null | If not null, each inner array must represent an ordered citation chain where the last source cites the first. Reject if any source_id is not in [SOURCES]. Null allowed when no circular chain detected. | |
syndication_flag | boolean | Must be true if any echo_chamber_evidence relationship is syndication. Reject if true but no syndication evidence object exists. Reject if false but syndication evidence is present. | |
requires_human_review | boolean | Must be true if score_confidence < 0.7 or independence_level is indeterminate. Reject if false when confidence is below threshold. This is a safety gate for downstream routing. |
Common Failure Modes
What breaks first when scoring independent source agreement and how to guard against it.
Syndication False Positives
What to watch: The prompt treats wire service republishing (AP, Reuters) as independent confirmation. Two articles with identical ledes from the same syndication feed score as 'corroborating' when they are a single source. Guardrail: Add a pre-check for identical bylines, syndication credit lines, and matching first paragraphs. Require the prompt to flag syndication before scoring independence.
Circular Citation Chains
What to watch: Source A cites Source B, which cites Source A, creating a closed loop that scores as multi-source agreement. The model fails to trace the full provenance graph and treats the loop as independent evidence. Guardrail: Include a provenance-tracing step that builds a citation graph and explicitly flags cycles. Reject any agreement score where the evidence chain loops back to the original claim source.
Shared Parent Source Collapse
What to watch: Three sources all cite the same single study or press release but the model scores them as three independent confirmations. The independence score inflates because the model doesn't identify the common root. Guardrail: Require the prompt to extract and compare primary citations from each source. If all sources reference the same root document, cap the independence score at 'single-source' regardless of count.
Temporal Echo Chamber
What to watch: Sources published within hours of each other are treated as independent when they are actually reacting to the same breaking news event with no original reporting. The model misses publication timestamp clustering as an echo signal. Guardrail: Add a temporal clustering check. If multiple sources publish within a narrow window and reference the same event without distinct investigation, flag as 'simultaneous echo' and downgrade independence.
Paraphrase-As-Independence Misclassification
What to watch: The model treats surface-level paraphrasing as independent confirmation. A source that rewrites another outlet's reporting without adding new evidence scores as corroborating rather than derivative. Guardrail: Require the prompt to compare factual claims, not language. If Source B introduces no new facts, named sources, or data points beyond Source A, classify it as derivative regardless of wording differences.
Overcounting Corroboration from a Single Investigation
What to watch: Multiple articles from the same newsroom covering different angles of one investigation are scored as independent sources. The model doesn't recognize shared editorial oversight and fact-checking as a single evidentiary root. Guardrail: Add an organizational affiliation check. Sources sharing the same publisher, parent company, or editorial chain should be grouped as one source family for independence scoring, not counted separately.
Evaluation Rubric
Criteria for testing the Independent Source Agreement Scoring Prompt before production deployment. Each row defines a pass standard, a failure signal, and a concrete test method.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Circular Citation Detection | Score is 0.0 when Source B cites Source A as its only evidence for the claim | Score > 0.2 for circular pairs | Run prompt with [CLAIM]='X is true', [SOURCE_A]='Original report', [SOURCE_B]='Article citing only Source A'. Assert independence_score < 0.2 |
Syndication False Positive | Score is 0.0 when Source B is a verbatim republication of Source A with no new reporting | Score > 0.3 for syndicated content | Run prompt with identical claim text in both sources, [SOURCE_B_METADATA] indicating syndication. Assert independence_score < 0.3 |
Truly Independent Confirmation | Score >= 0.8 when two sources use different methodologies and reach the same conclusion | Score < 0.6 for methodologically distinct sources | Run prompt with [SOURCE_A_METHODOLOGY]='Randomized trial', [SOURCE_B_METHODOLOGY]='Observational study'. Assert independence_score >= 0.8 |
Partial Overlap Handling | Score between 0.3 and 0.7 when sources share one data source but add independent analysis | Score is 0.0 or 1.0 for partial overlap | Run prompt with [SOURCE_A] citing dataset D plus own survey, [SOURCE_B] citing dataset D plus expert interviews. Assert 0.3 <= independence_score <= 0.7 |
Single-Source Degradation | Returns null or error when only one source is provided | Returns a score > 0.0 for a single source | Run prompt with [SOURCE_A] populated and [SOURCE_B] null. Assert output is null or contains explicit error flag |
Echo Chamber Chain Detection | Score is 0.0 when Source C cites Source B which cites Source A with no new evidence at any link | Score > 0.1 for a 3-link echo chain | Run prompt with [SOURCE_A]='Original', [SOURCE_B]='Cites only A', [SOURCE_C]='Cites only B'. Assert independence_score < 0.1 |
Confidence Calibration | confidence field is <= 0.5 when source metadata is sparse or ambiguous | confidence > 0.7 with missing methodology fields | Run prompt with [SOURCE_A_METHODOLOGY] and [SOURCE_B_METHODOLOGY] both null. Assert confidence <= 0.5 |
Justification Completeness | rationale field names specific evidence overlaps and methodological differences | rationale is generic or empty when score is not 1.0 | Run prompt with partial overlap case. Assert rationale string length > 50 characters and contains at least one specific overlap mention |
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 small set of 5–10 claim–source pairs. Remove strict output schema requirements initially; accept a structured paragraph instead of JSON. Use a frontier model (GPT-4o, Claude 3.5 Sonnet) with default temperature.
codeAnalyze whether these sources independently confirm the claim or merely echo each other. Claim: [CLAIM] Source A: [SOURCE_A_CONTENT] Source B: [SOURCE_B_CONTENT]
Watch for
- Model conflating agreement with independence—two sources citing the same unnamed third party are not independent
- Missing syndication detection when content is nearly identical
- Overconfidence on single-sentence comparisons without full article context

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