This prompt is designed for verification system architects who need to programmatically decide whether a set of evidence meets a predefined bar before a claim can be marked as VERIFIED. It acts as a configurable gatekeeper, enforcing organizational standards for corroboration count, source diversity, and evidence recency. The ideal user is an engineer or pipeline operator integrating this prompt into an automated fact-checking system, where a structured, deterministic pass/fail decision is required to prevent low-quality verifications from entering a system of record.
Prompt
Evidence Sufficiency Threshold Enforcement Prompt Template

When to Use This Prompt
Defines the precise operational context for the Evidence Sufficiency Threshold Enforcement Prompt, clarifying its role in a verification pipeline and distinguishing it from upstream and downstream tasks.
Use this prompt only after evidence retrieval and matching are complete. It assumes that a claim has already been paired with a set of candidate evidence objects, each containing structured metadata like a source identifier, publication date, and a relevance score. The prompt does not perform fact-checking, retrieve new evidence, or extract claims from raw text. Its sole responsibility is to apply configurable threshold rules to the provided evidence set and produce a structured verdict. A typical input is a JSON object containing the claim text and an array of matched evidence records, while the output is a strict pass/fail decision with an audit trail of which specific thresholds were violated.
Do not use this prompt as a substitute for evidence retrieval or claim extraction. If the input evidence set is incomplete or poorly matched, this prompt will correctly return a FAIL result, but it cannot diagnose why the retrieval pipeline failed. For that, use an upstream prompt like the Missing Evidence Gap Analysis Prompt Template. Similarly, this prompt should not be used to generate user-facing explanations or final verification reports; its output is a machine-readable decision meant to be consumed by downstream orchestration logic. For high-risk domains like healthcare or legal compliance, always route FAIL outcomes to a human review queue using a prompt like the Unsupported Claim Human Review Routing Prompt Template before finalizing a status.
Use Case Fit
Where the Evidence Sufficiency Threshold Enforcement prompt works, where it fails, and the operational preconditions required before deploying it in a verification pipeline.
Good Fit: Pre-Verified Source Sets
Use when: you have a bounded, pre-retrieved set of source documents and need to enforce minimum evidence standards before marking a claim as VERIFIED. Why: the prompt compares claims against provided evidence only; it does not search for new sources.
Bad Fit: Open-Ended Discovery
Avoid when: the system must actively search the web, query databases, or retrieve new documents to find supporting evidence. Risk: the prompt will mark claims as UNSUPPORTED when evidence exists but was not included in the input set. Pair with a retrieval step first.
Required Inputs
Must provide: an atomic claim string, a structured evidence array with source metadata, and a threshold configuration object specifying minimum corroboration count, required source diversity, and maximum evidence age. Guardrail: validate input schema before invoking the prompt to prevent silent defaults.
Operational Risk: Threshold Misconfiguration
What to watch: thresholds set too low pass unsupported claims; thresholds set too high reject valid claims and flood human review queues. Guardrail: maintain version-controlled threshold profiles per claim domain and monitor pass/fail ratios in production to detect drift.
Operational Risk: Audit Trail Completeness
What to watch: downstream consumers treating a PASS verdict as ground truth without inspecting which thresholds were applied and which evidence was considered. Guardrail: always persist the full threshold configuration, evidence snapshot, and violation details alongside the verdict for auditability.
Pipeline Position: After Retrieval, Before Reporting
Use when: this prompt sits between evidence retrieval and final verification report generation. Avoid when: you need a single prompt to handle retrieval, matching, and threshold enforcement together. Guardrail: compose this as a dedicated enforcement step with clear input/output contracts to simplify testing and debugging.
Copy-Ready Prompt Template
A copy-ready template for enforcing evidence sufficiency thresholds with configurable corroboration, diversity, and recency rules.
This prompt template is the core instruction set for a verification threshold enforcer. It is designed to be dropped into your verification pipeline after claim extraction and evidence retrieval. The model receives a single claim and a structured evidence set, then applies your configured sufficiency rules to produce a deterministic pass/fail decision. The output includes a detailed audit trail documenting exactly which thresholds were met, which were violated, and why. This template assumes you have already retrieved candidate evidence; it does not perform retrieval itself.
textYou are a verification threshold enforcement engine. Your job is to evaluate whether a single claim meets pre-configured evidence sufficiency requirements. You do not assess truth. You assess whether the available evidence is sufficient to mark the claim as VERIFIED according to the rules below. ## INPUT CLAIM: [CLAIM_TEXT] EVIDENCE_SET: [EVIDENCE_JSON_ARRAY] Each evidence object contains: - id: string - source_id: string - source_type: string (e.g., "primary_document", "news_report", "expert_testimony", "database_record") - publication_date: ISO 8601 date string - excerpt: string (relevant passage) - relationship_to_claim: string ("supports", "contradicts", "mentions", "neutral") ## THRESHOLD CONFIGURATION [CORROBORATION_THRESHOLD]: Minimum number of distinct evidence items that must support the claim. [SOURCE_DIVERSITY_THRESHOLD]: Minimum number of distinct source_types required among supporting evidence. [RECENCY_THRESHOLD_DAYS]: Maximum age in days for the most recent supporting evidence item. Claims with no supporting evidence newer than this threshold fail. [REQUIRE_PRIMARY_SOURCE]: Boolean. If true, at least one supporting evidence item must have source_type "primary_document". [CONTRADICTION_TOLERANCE]: Integer. Maximum number of contradicting evidence items allowed before the claim is automatically marked INSUFFICIENT regardless of supporting evidence count. Set to 0 for zero-tolerance. ## DECISION RULES 1. Count all evidence items where relationship_to_claim is "supports". 2. Count distinct source_types among those supporting items. 3. Identify the most recent publication_date among supporting items. 4. Check for presence of a primary source if required. 5. Count all evidence items where relationship_to_claim is "contradicts". 6. If contradiction count exceeds CONTRADICTION_TOLERANCE, return INSUFFICIENT immediately. 7. If all other thresholds are met, return SUFFICIENT. Otherwise, return INSUFFICIENT. ## OUTPUT SCHEMA Return valid JSON only. No markdown, no commentary. { "decision": "SUFFICIENT" | "INSUFFICIENT", "threshold_results": { "corroboration": { "required": number, "actual": number, "met": boolean }, "source_diversity": { "required": number, "actual": number, "source_types_found": [string], "met": boolean }, "recency": { "max_age_days": number, "most_recent_date": string | null, "met": boolean }, "primary_source": { "required": boolean, "found": boolean, "met": boolean }, "contradiction_check": { "tolerance": number, "contradiction_count": number, "met": boolean } }, "violated_thresholds": [string], "audit_summary": "One-sentence summary of which thresholds passed or failed and why.", "evidence_summary": { "total_items": number, "supporting_count": number, "contradicting_count": number, "neutral_count": number } } ## CONSTRAINTS - Do not evaluate the truth of the claim. Only evaluate evidence sufficiency. - Do not invent evidence. Only use the provided EVIDENCE_SET. - If EVIDENCE_SET is empty, return INSUFFICIENT with all thresholds marked as unmet. - If CLAIM_TEXT is empty or nonsensical, return INSUFFICIENT and note the invalid input in audit_summary. - Always return the exact JSON schema above.
To adapt this template, replace the square-bracket placeholders with your pipeline's runtime values. [CLAIM_TEXT] should receive a single atomic claim string. [EVIDENCE_JSON_ARRAY] must be a pre-retrieved, serialized JSON array of evidence objects conforming to the schema described. The five threshold configuration placeholders should be injected from your application's configuration layer, allowing different claim types or domains to use different thresholds without changing the prompt structure. For high-stakes domains like healthcare or legal review, set CONTRADICTION_TOLERANCE to 0 and REQUIRE_PRIMARY_SOURCE to true. For news monitoring, you might allow higher tolerance and lower diversity requirements.
After pasting this prompt into your pipeline, validate the output against the JSON schema before allowing downstream consumption. A common failure mode is the model returning markdown-wrapped JSON despite the explicit constraint; implement a parser that strips markdown fences as a defensive measure. For production deployments, log every threshold_result object alongside the decision for auditability. If the decision is INSUFFICIENT, route the violated_thresholds array to your gap analysis or human review prompt. Never treat INSUFFICIENT as equivalent to false; it means the verification process could not reach a conclusion under the configured rules.
Prompt Variables
Inputs the prompt needs to work reliably. Validate these before sending the prompt.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[CLAIM] | The single atomic assertion to evaluate for evidence sufficiency. | The Acme 5000 processor achieves 15 TFLOPS at 45W. | Must be a single verifiable statement. Reject compound claims or rhetorical questions. Run claim decomposition pre-flight if input contains multiple assertions. |
[EVIDENCE_SET] | The collection of source documents, passages, or data records available to verify the claim. | JSON array of objects with source_id, content, date, and authority_score fields. | Must contain at least one source. Validate schema: each record requires source_id and content. Null or empty set triggers immediate UNVERIFIABLE verdict without model call. |
[THRESHOLD_CONFIG] | The minimum evidence requirements a claim must meet to be marked as VERIFIED. | {"min_corroboration_count": 2, "require_independent_sources": true, "min_source_authority": 0.7, "max_evidence_age_days": 365, "require_direct_evidence": true} | Validate JSON schema. All numeric fields must be positive. Boolean fields must be true or false. Reject configs with contradictory rules (e.g., min_corroboration_count of 0 with require_independent_sources set to true). |
[OUTPUT_SCHEMA] | The exact JSON structure the model must return, including the verdict, violations, and audit trail. | {"verdict": "PASS|FAIL", "threshold_violations": [{"rule": "string", "actual": "string", "required": "string"}], "audit_trail": [{"source_id": "string", "matched": true|false, "rationale": "string"}]} | Validate against JSON Schema before sending. Reject schemas missing required fields: verdict, threshold_violations, and audit_trail. Enforce enum constraints on verdict field. |
[DOMAIN_CONTEXT] | Optional domain-specific terminology, evidence standards, or authority rules that modify threshold interpretation. | Legal domain: require primary sources only, exclude blog commentary. Medical domain: require peer-reviewed sources published within 5 years. | Null allowed. If provided, must be a non-empty string. Validate that domain rules do not contradict [THRESHOLD_CONFIG]. Log domain context for audit trail. |
[MAX_TOKENS] | The maximum token budget for the model response to prevent runaway generation on large evidence sets. | 4096 | Must be a positive integer. Set based on expected audit trail size. Monitor for truncation: if response hits token limit, flag for human review and increase budget or split evidence set. |
[TEMPERATURE] | Controls output determinism. Set to 0 for consistent threshold enforcement. | 0.0 | Must be a float between 0.0 and 1.0. Recommend 0.0 for production verification pipelines. Non-zero values require additional consistency checks across multiple runs. |
[RETRY_CONFIG] | Defines retry behavior when the model returns invalid JSON or fails to produce a parseable verdict. | {"max_retries": 3, "retry_on": ["invalid_json", "missing_verdict", "schema_violation"], "backoff_multiplier": 2} | Validate JSON schema. max_retries must be between 0 and 5. retry_on must be a non-empty array of known failure modes. Log each retry attempt with failure reason for observability. |
Implementation Harness Notes
How to wire the Evidence Sufficiency Threshold Enforcement prompt into a production verification pipeline with validation, retries, and audit logging.
This prompt is designed to be a deterministic gate in a verification pipeline, not a conversational assistant. It should be called after claim extraction and evidence retrieval are complete, receiving a structured payload of a single claim and its associated evidence set. The application layer is responsible for assembling the [CLAIM], [EVIDENCE_SET], and [THRESHOLD_CONFIG] variables before invoking the model. Because the output is a pass/fail decision with specific threshold violations, the harness must treat any response that does not conform to the expected schema as a system error requiring retry or escalation.
Validation and retry logic is critical here. Implement a strict JSON schema validator that checks for the required fields: threshold_result (PASS/FAIL), violations (array of objects with threshold_name, requirement, actual, and evidence_gap), and audit_summary. If the model returns malformed JSON, missing fields, or a threshold_result that is not PASS or FAIL, retry once with a repair prompt that includes the validation error message. If the second attempt also fails, route the claim to a human review queue with the raw evidence attached. Do not silently default to PASS or FAIL on parse errors—this creates a dangerous blind spot in the verification pipeline.
Model choice and latency budgeting matter here. This is a classification and structured output task that does not require creative generation, so a smaller, faster model (e.g., GPT-4o-mini, Claude Haiku) is often sufficient. However, if your threshold config includes complex reasoning requirements like 'source diversity across independent organizations' or 'recency within a sliding window,' test whether the smaller model correctly applies those rules before deploying. For high-stakes domains like healthcare or legal verification, use a more capable model and always include a human review step for FAIL outcomes. Log every invocation with the claim ID, threshold config version, model response, validation result, and final routing decision for audit trail generation.
Tool integration is typically not needed for this prompt itself, but the upstream evidence retrieval step often uses search tools or RAG. Ensure the [EVIDENCE_SET] passed to this prompt includes source metadata (title, date, authority score) so the model can evaluate recency and source diversity thresholds. If your threshold config requires corroboration count, pre-count the number of distinct sources and include that as a field in the evidence set to reduce model counting errors. For production pipelines processing high volumes, batch claims with similar threshold configs together and use prompt caching on the system instructions and threshold config portion to reduce cost and latency.
Expected Output Contract
Fields, format, and validation rules for the Evidence Sufficiency Threshold Enforcement response. Use this contract to build a parser and validator before integrating the prompt into a verification pipeline.
| Field or Element | Type or Format | Required | Validation Rule |
|---|---|---|---|
verdict | enum: PASS | FAIL | Must be exactly PASS or FAIL. Reject any other value. If FAIL, at least one threshold_violations entry must be present. | |
claim_id | string | Must match the [CLAIM_ID] input exactly. Reject on mismatch to prevent cross-claim attribution errors. | |
thresholds_evaluated | array of objects | Each object must contain threshold_name (string), required_value (number), actual_value (number), and met (boolean). Array must not be empty. | |
threshold_violations | array of objects | Required when verdict is FAIL. Each object must contain threshold_name (string), required_value (number), actual_value (number), and gap_description (string). Null allowed when verdict is PASS. | |
corroboration_count | integer | Must be a non-negative integer. Compare against [MIN_CORROBORATION_COUNT] threshold. Reject if negative or non-integer. | |
source_diversity_count | integer | Must be a non-negative integer representing distinct sources. Compare against [MIN_SOURCE_DIVERSITY] threshold. Reject if negative or non-integer. | |
most_recent_source_date | string (ISO 8601 date) or null | Must be valid ISO 8601 date format (YYYY-MM-DD) or null if no dated sources exist. Compare against [MAX_SOURCE_AGE_DAYS] threshold. Reject on malformed dates. | |
audit_trail | array of objects | Each object must contain source_id (string), source_date (string or null), and contribution (string). Array must not be empty. Contribution must describe what evidence the source provided. |
Common Failure Modes
What breaks first when enforcing evidence sufficiency thresholds and how to guard against it.
Thresholds Become Arbitrary Magic Numbers
What to watch: Corroboration count (e.g., '3 sources') or recency windows (e.g., 'within 90 days') are hardcoded without domain calibration. The model enforces them mechanically, producing false negatives for niche topics with few authoritative sources or false positives for widely syndicated but low-quality content. Guardrail: Externalize thresholds as configurable parameters keyed to claim domain and severity. Run calibration sweeps against a golden dataset before locking values.
Source Diversity Check Is Gamed by Syndication
What to watch: The model counts 5 sources as corroborating evidence, but all 5 are syndicated copies of the same wire service report. Source diversity appears satisfied while actual independent verification is zero. Guardrail: Add a deduplication pre-check that clusters sources by origin, authorship, or content fingerprint. Require at least N distinct origin clusters, not just N URLs.
Recency Threshold Causes Silent Null on True Claims
What to watch: A claim about a stable historical fact (e.g., a treaty date) fails recency because the most recent source is 5 years old. The threshold rejects a true claim as UNSUPPORTED, eroding trust in the system. Guardrail: Make recency thresholds domain-adaptive. Historical, scientific, and legal claims should use 'last verified' timestamps, not publication recency. Include a recency override rationale field in the output.
Corroboration Count Fails on Exclusive Sources
What to watch: A claim is only verifiable through a single authoritative source (e.g., a government filing, a court record). The threshold demands 2+ corroborating sources, so a true and well-sourced claim is flagged as insufficient. Guardrail: Add an authority override path. If the single source meets a pre-defined authority tier (e.g., primary official record), allow single-source verification with an explicit flag and rationale.
Threshold Violation Audit Trail Is Incomplete
What to watch: The system outputs PASS or FAIL but doesn't record which specific threshold was violated, by what margin, or against which sources. Operators cannot debug false negatives or tune thresholds without reverse-engineering decisions. Guardrail: Require the prompt to output a structured violations array with fields: threshold_name, required_value, observed_value, sources_evaluated, and violation_rationale. Validate this array is non-empty on every FAIL decision.
Model Hallucinates Source Counts to Satisfy Threshold
What to watch: When evidence is sparse, the model invents source names or inflates corroboration counts to meet the threshold requirements, producing a PASS with fabricated evidence. Guardrail: Require every source counted toward a threshold to be explicitly cited with a retrievable identifier. Add a post-verification step that validates each cited source exists in the provided evidence set. Reject any PASS where cited sources cannot be matched to input evidence.
Evaluation Rubric
Run these checks against a golden dataset of claims with known-sufficient and known-insufficient evidence sets. Each criterion validates a specific behavior required for production-grade threshold enforcement.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Threshold Compliance | Decision matches expected pass/fail for claims with known evidence counts above and below [CORROBORATION_THRESHOLD] | Pass when evidence count is below threshold; fail when evidence count is above threshold | Run 20 claims with controlled evidence counts at threshold boundary; measure exact match accuracy |
Source Diversity Enforcement | Decision correctly fails claims where sources all originate from same domain even when count meets [CORROBORATION_THRESHOLD] | Pass decision when all sources share domain; fail decision when sources span required diversity count | Test with claim sets where evidence count meets threshold but domain diversity is 1; verify FAIL with diversity violation reason |
Recency Gate Behavior | Decision correctly fails claims where newest evidence source is older than [MAX_SOURCE_AGE_DAYS] | Pass decision when all sources exceed age limit; fail decision when at least one source is within recency window | Use timestamp-controlled evidence sets with known ages; verify FAIL when newest source exceeds age limit |
Audit Trail Completeness | Output includes all required fields: decision, violated_thresholds array, evidence_summary, and threshold_config_snapshot | Missing any required field; empty violated_thresholds array on fail decision; config snapshot absent | Schema validation against [OUTPUT_SCHEMA]; assert all required fields present and non-null on both pass and fail decisions |
Threshold Violation Specificity | Each violation entry names the specific threshold breached, the observed value, and the required value | Violation entry missing threshold name; observed value absent; required value absent; generic failure message | Parse violated_thresholds array; assert each entry has non-empty threshold_name, observed_value, and required_value fields |
Pass Decision Evidence Floor | Pass decision only when all three gates (corroboration count, source diversity, recency) are satisfied simultaneously | Pass decision when any gate is violated; pass decision with missing gate check | Test with claims that satisfy 2 of 3 gates; assert FAIL decision; verify violated_thresholds lists the failing gate |
Edge Case: Zero Evidence | Decision is FAIL with all three gates listed as violated; no null pointer or missing array errors | Pass decision; missing violated_thresholds; error or malformed output | Submit claim with empty evidence set; assert decision is FAIL; assert violated_thresholds length equals 3 |
Edge Case: Single Source Meets All Gates | Decision is PASS when single source satisfies diversity minimum of 1, recency, and count threshold of 1 | Fail decision when all gates configured to accept single-source evidence; incorrect violation flagging | Configure [CORROBORATION_THRESHOLD]=1, [MIN_SOURCE_DOMAINS]=1; submit claim with one recent source; assert PASS |
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 hardcode a single threshold configuration inline. Use a simple pass/fail output without the full audit trail schema. Accept raw text input and return a JSON object with verdict, threshold_violations, and a brief rationale string.
codeYou are a verification threshold enforcer. Given a claim and its supporting evidence set, determine if the evidence meets these minimum requirements: - Corroboration count: at least 2 independent sources - Source diversity: at least 2 distinct source types - Recency: all sources published within [RECENCY_WINDOW] of the claim date Return JSON: {"verdict": "PASS"|"FAIL", "threshold_violations": ["violation1", ...], "rationale": "string"} Claim: [CLAIM] Evidence set: [EVIDENCE_SET]
Watch for
- Missing schema checks when the model returns extra fields or wrong types
- Overly broad threshold descriptions that produce inconsistent enforcement
- No handling of edge cases like zero evidence or single-source claims

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