This prompt is for investigators and verification engineers who need to reconstruct the full provenance chain of a claim, tracing it backward through republishing layers to identify the original evidence source. Use it when a claim appears in a news article, social media post, or report that cites another source, which in turn cites another, and you need to map every link in that chain. The prompt identifies where attribution breaks, where sources are cited without access, and where circular references create false corroboration. It belongs in verification pipelines after claim extraction and before evidence matching, giving downstream systems a clear map of what was actually sourced versus what was merely repeated.
Prompt
Source Provenance Chain Reconstruction Prompt

When to Use This Prompt
Defines the job-to-be-done, ideal user, required context, and boundaries for the Source Provenance Chain Reconstruction Prompt.
The ideal user has a specific claim and a set of source documents that reference each other. You must provide the claim text and the content of each document in the chain, with enough metadata (publication dates, URLs, author bylines) to let the model distinguish between independent reporting and syndicated repetition. The prompt works best when you can supply at least two layers of citation—for example, a news article that cites a press release, which in turn references a study. Without at least one explicit citation link between documents, the model cannot build a chain and will return an empty or single-node result. Do not use this prompt for general source credibility scoring, for verifying the truth of the claim itself, or for single-document analysis where no republishing chain exists.
Before running this prompt, ensure your pipeline has already extracted discrete claims and gathered the documents that cite or are cited by each other. The prompt expects structured input with clear document boundaries. After receiving the output, validate that every link in the chain includes a specific citation reference (a quote, a URL, or a named attribution). If the model produces a chain link without a citation, treat that link as unverified. For high-stakes verification, route any chain with missing links, circular references, or anonymous-source endpoints to human review before using the provenance map in downstream evidence matching. The next section provides the copy-ready template you can adapt for your own verification harness.
Use Case Fit
Where Source Provenance Chain Reconstruction works well, where it fails, and the operational prerequisites for production use.
Good Fit: Multi-Hop Attribution Tracing
Use when: claims pass through multiple republishing layers (press release → news article → blog summary → social post) and you need to trace the original source. Guardrail: always require the model to flag attribution gaps explicitly rather than guessing intermediate sources.
Good Fit: Circular Citation Detection
Use when: multiple sources appear to corroborate a claim but may be citing each other in a loop. Guardrail: include explicit instructions to compare publication dates and author overlap across the chain; flag any cycle where Source A cites Source B which cites Source A.
Bad Fit: Single-Source Verification
Avoid when: the claim originates from a single document with no republishing history. Provenance reconstruction requires a chain to trace. Guardrail: route single-source claims to evidence-matching prompts instead; this prompt adds no value when there is no propagation path to reconstruct.
Required Input: Source Corpus with Timestamps
Risk: without publication dates, the model cannot establish temporal ordering and may produce a logically impossible chain. Guardrail: require ISO-formatted dates for every source in the input set; reject or flag sources with missing or ambiguous timestamps before chain reconstruction begins.
Required Input: Claim Anchoring
Risk: the model may trace provenance for the wrong claim or conflate similar-sounding assertions. Guardrail: always provide the exact claim text as a separate input field and instruct the model to anchor every chain node to that specific claim, not the general topic.
Operational Risk: Fabricated Intermediaries
Risk: when gaps exist in the provenance chain, the model may hallucinate plausible intermediary sources rather than reporting the gap. Guardrail: add a strict instruction that every node in the chain must cite a source present in the input corpus; unknown intermediaries must be marked as [GAP] with no fabricated details.
Copy-Ready Prompt Template
A copy-ready system prompt for reconstructing the provenance chain of a claim through multiple republishing layers, flagging attribution gaps and circular citations.
This prompt template is designed to be pasted directly into your system instructions or as a user message in an AI harness. It instructs the model to trace a claim back to its original source by analyzing a provided set of intermediary documents. The core task is to build a linear provenance chain, identify where attribution breaks, and detect circular citations. This is a high-stakes verification workflow; the output must be auditable, and the model should abstain rather than invent missing links.
markdownYou are a source provenance investigator. Your task is to reconstruct the full provenance chain for a specific claim by analyzing a set of provided source documents that may represent different stages of republishing. **Inputs:** - [CLAIM]: The exact claim text to trace. - [SOURCE_DOCUMENTS]: A list of source documents, each with a unique ID, full text, and available metadata (publication date, author, publisher, URL). **Instructions:** 1. **Identify the Earliest Instance:** Scan all [SOURCE_DOCUMENTS] to find the document that contains the [CLAIM] and has the earliest verifiable publication date. This is the starting point for the chain. 2. **Build the Chain Forward:** From the earliest instance, trace the claim forward in time. For each subsequent document that contains the claim, determine if it explicitly cites a prior source in the chain. If it does, link them. If it does not, mark it as a **Provenance Gap**. 3. **Detect Circular Citations:** Check if any document in the chain cites another document that appears later in the chain, creating a loop. Flag any circular citations clearly. 4. **Flag Attribution Gaps:** For any link where a document does not cite a prior source, note the missing attribution and state that the provenance is broken at that point. 5. **Abstain if Uncertain:** If you cannot determine the relationship between documents or the claim's origin is ambiguous, state that the chain is incomplete. Do not fabricate links. **Output Format:** Produce a JSON object with the following structure: { "claim": "[CLAIM]", "provenance_chain": [ { "source_id": "string", "publication_date": "ISO 8601 string or null", "relationship_to_prior": "origin" | "cites" | "uncited_republication", "cited_source_id": "string | null", "notes": "string explaining the evidence for the link or the nature of the gap" } ], "circular_citations_detected": [ { "source_id": "string", "cited_source_id": "string", "explanation": "string" } ], "overall_assessment": "string summarizing chain completeness and key risks" } **Constraints:** - Only use the provided [SOURCE_DOCUMENTS]. Do not introduce external knowledge. - If publication dates are missing, note this ambiguity and explain how it affects the chain. - Prioritize precision over recall. A short, verified chain is better than a long, speculative one.
To adapt this template, replace the [CLAIM] and [SOURCE_DOCUMENTS] placeholders with your specific inputs. The [SOURCE_DOCUMENTS] should be a structured list, likely injected by your application's retrieval or data-loading step. For high-risk domains like legal or financial verification, you must add a human review step after this prompt runs. The JSON output is designed for programmatic consumption, so wire it to a validation function that checks for the required schema and flags any uncited_republication entries for immediate analyst attention. Do not treat this prompt's output as a final verdict; it is a structured input for a downstream review or audit logging system.
Prompt Variables
Each placeholder required by the Source Provenance Chain Reconstruction Prompt. Validate inputs before assembly to prevent broken chains and circular citation errors in production.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[CLAIM_TEXT] | The specific factual assertion being traced to its origin | The mRNA vaccines were developed in under a year | Required. Must be a single atomic claim. Reject if multiple claims or compound sentences detected. Max 500 characters. |
[SOURCE_LIST] | Array of source objects with content, metadata, and retrieval context | [{"id":"src-1","title":"FDA Approval Summary","date":"2021-08-23","type":"regulatory_document","content":"..."}] | Required. Minimum 2 sources. Each object must have id, content, and date fields. Reject if content field is empty or date is unparseable. Validate JSON structure before prompt assembly. |
[CITATION_FORMAT] | Desired output format for source attribution strings | APA | Required. Must match supported enum: APA, MLA, Chicago, ISO-690, or custom_schema. If custom_schema, provide field mapping in [CITATION_SCHEMA]. |
[MAX_CHAIN_DEPTH] | Maximum number of republishing hops to trace before stopping | 5 | Required. Integer between 2 and 10. Prevents infinite loops on circular chains. Default to 5 if not specified. Reject values below 2 as insufficient for provenance work. |
[DOMAIN_CONTEXT] | Subject domain for calibrating authority expectations and terminology | biomedical_research | Optional. If provided, must match supported domain enum. Used to weight source types appropriately. Null allowed; prompt falls back to general-purpose provenance rules. |
[REQUIRE_DIRECT_EVIDENCE] | Flag forcing the prompt to flag any chain that ends in secondary or tertiary sources | Optional. Boolean. If true, chains terminating at non-primary sources receive a gap_flagged status. Defaults to false if omitted. Validate as strict boolean, not string. | |
[OUTPUT_SCHEMA] | JSON schema defining the expected provenance chain output structure | {"type":"object","properties":{"chain":{"type":"array"},"gaps":{"type":"array"},"circular_detected":{"type":"boolean"}}} | Required. Must be valid JSON Schema. Validate parse before prompt assembly. Reject if missing required fields: chain, gaps, circular_detected. Schema mismatch with output causes eval failure. |
[ABSTENTION_TRIGGERS] | Conditions under which the prompt should refuse to produce a chain | ["all_sources_undated","single_source_only","circular_loop_detected"] | Optional. Array of trigger strings. If provided, prompt returns abstention object instead of partial chain. Validate against supported trigger enum. Null allowed; prompt attempts best-effort chain with gap flags. |
Implementation Harness Notes
How to wire the Source Provenance Chain Reconstruction prompt into a verification pipeline with validation, retries, and audit logging.
This prompt is designed to be a single step in a larger verification pipeline, not a standalone chat interaction. The primary integration point is after claim extraction and evidence retrieval, where you have a target claim and a set of candidate sources that may have been republished, syndicated, or cited through multiple layers. The harness should call this prompt once per claim-source pair that requires provenance tracing, feeding in the claim text, the source content, and any available metadata such as publication dates, author bylines, and outlet names. Because provenance reconstruction is inherently recursive—a source cites another source which cites another—you should plan for the harness to make multiple calls, using each identified upstream source as the input for the next iteration until an original source is reached or the chain breaks.
The implementation should wrap the prompt in a function that enforces a strict JSON output contract. Define a schema that includes: provenance_chain (an ordered array of nodes, each with source_identifier, publication_date, attribution_type such as 'original', 'citation', 'syndication', or 'unknown', and content_snippet), chain_completeness (an enum of 'complete', 'broken', or 'circular'), broken_link_index (the array index where the chain breaks, or null), and circular_reference_detected (boolean). After each model response, validate the JSON against this schema. If validation fails, retry with the error message appended to the prompt as a correction instruction, up to a maximum of two retries. For high-stakes verification workflows, route any response where chain_completeness is not 'complete' to a human review queue with the partial chain and the original source content attached.
Model choice matters here. This prompt requires strong instruction-following and structured output discipline. Prefer models with native JSON mode or function-calling capabilities. If using a model without guaranteed JSON output, implement a repair step that attempts to extract and fix malformed JSON before falling back to retry. Log every call—including the input claim, source metadata, raw model response, parsed output, validation result, and retry count—to your observability platform. This audit trail is critical for debugging chain breaks and for demonstrating verification rigor to downstream consumers. Avoid using this prompt on sources that are already classified as primary or original by a prior source-type classification step; reserve it for cases where republishing is suspected or the source lineage is explicitly unclear.
Common Failure Modes
What breaks first when reconstructing source provenance chains and how to guard against it.
Circular Citation Loops
What to watch: The model traces a claim through sources A → B → C → A, creating an illusion of independent corroboration when all sources ultimately reference each other. This is common in fast-moving news cycles and aggregated research. Guardrail: Require the prompt to output a directed graph of citations and run a cycle-detection check. Flag any chain where the same URL, DOI, or author group appears more than once as a circular dependency.
Attribution Gap Collapse
What to watch: The model fills missing provenance links with plausible but fabricated intermediaries (e.g., inventing a press release that 'must have existed' or assuming a primary source was cited when only a secondary summary was found). Guardrail: Require explicit 'gap' markers in the output schema for any link where a direct citation cannot be located. Test with known broken chains and verify the model outputs attribution_gap: true rather than hallucinating a bridge.
Syndication Misidentification as Independent Confirmation
What to watch: The model treats wire service republications (AP, Reuters, AFP) or press release syndications as independent sources confirming a claim, inflating perceived evidence strength. Guardrail: Include a syndication-detection step in the prompt that checks for identical ledes, shared bylines, or syndication credit lines. Output a syndication_cluster grouping sources that derive from the same original feed.
Temporal Inversion in Provenance Ordering
What to watch: The model misorders the provenance chain when publication dates are missing, ambiguous, or conflicting, placing a derivative source before the original. This breaks the entire chain's logical foundation. Guardrail: Require normalized ISO 8601 timestamps for every node in the chain. Add a validation rule that checks node[n].date <= node[n+1].date and flags inversions. When dates conflict, output a temporal_ambiguity flag with both candidates.
Primary Source Omission in Favor of Accessible Secondary Sources
What to watch: The model stops at easily accessible secondary sources (Wikipedia, news summaries, blog posts) and fails to trace the chain back to the actual primary source (original research paper, court filing, government dataset, interview transcript). Guardrail: Add a provenance_depth requirement in the prompt specifying that the chain must reach a primary source type (e.g., source_type: [original_research, official_record, direct_observation, raw_data]). If unreachable, output a primary_source_unreachable flag with the barrier documented.
Silent Evidence Dropping Across Republishing Layers
What to watch: As a claim moves through republishing layers, qualifiers, error bars, context, and caveats are stripped. The model reconstructs the chain using the stripped version and misses that the original claim was narrower or more uncertain. Guardrail: Require a claim_fidelity check at each link comparing the claim as stated at that node against the original. Flag any node where qualifiers, confidence language, or scope constraints were dropped. Output a fidelity_drift score per transition.
Evaluation Rubric
Criteria to test the Source Provenance Chain Reconstruction 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 |
|---|---|---|---|
Chain Completeness | Output includes all provided source documents in the chain, with no missing links. | A source from the input set is absent from the reconstructed chain. | Provide 5 sources with known lineage. Assert output node count equals input count. |
Attribution Gap Flagging | Every gap where a source cites an unverifiable or missing predecessor is explicitly flagged with a | A broken link in the chain is described as continuous or is missing a | Inject a source that cites a non-existent document. Check for |
Circular Citation Detection | Any cycle where Source A cites Source B which cites Source A is flagged with a | A circular path is presented as a linear chain without a cycle warning. | Feed a 3-node cycle. Assert |
Directionality Correctness | The | A parent source is listed as citing a child source that was published later. | Use sources with clear timestamps. Validate that |
Root Source Identification | The oldest or most original source is correctly identified as the | An intermediate source is mislabeled as the root, or multiple roots are returned for a single chain. | Provide a chain with one clear original source. Assert exactly one node has |
Confidence Scoring Calibration |
| A chain reconstructed from vague language has uniformly high confidence scores. | Provide one source with an explicit citation and one with a vague reference. Assert |
Output Schema Validity | The output strictly conforms to the defined JSON schema with all required fields present. | The output is missing a required field like | Validate the raw output string against the expected JSON Schema. The test fails on any schema violation. |
Abstention on Insufficient Data | The prompt returns a valid | A completely fabricated chain is returned for a set of unrelated source documents. | Provide 3 sources with no cross-references. Assert the output contains |
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
Use the base prompt with a single model call and manual review of the output chain. Focus on getting the provenance structure right before adding validation. Start with a small set of known claims that have clear republishing histories (e.g., a press release picked up by three outlets).
code[SYSTEM]: You are a provenance investigator. Trace the claim "[CLAIM]" back to its earliest verifiable source. For each republishing step, identify the source, date, and any changes to the claim. Flag gaps where attribution is missing. [OUTPUT_FORMAT]: Free-text narrative with numbered chain steps.
Watch for
- The model inventing source URLs or publication dates when none are provided
- Circular chains where Source A cites Source B which cites Source A without detection
- Treating the first found source as the origin without checking for earlier references
- Missing attribution gaps because the narrative sounds coherent

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