This prompt is for decision-support system builders who need to triage evidence conflicts by urgency and impact before they reach a user-facing answer or a downstream synthesis step. It takes a set of pre-detected conflicts and classifies each into an action category: escalate for immediate human review, defer with a note for later resolution, or dismiss as low-stakes noise. The core job-to-be-done is replacing ad-hoc, inconsistent judgment with a repeatable, auditable triage decision that your application can act on programmatically. Ideal users are engineering leads and AI product teams building research assistants, analyst tools, or compliance review systems where conflicting sources are common and the cost of getting triage wrong is high.
Prompt
Source Conflict Triage Prompt for Decision-Support Systems

When to Use This Prompt
Understand the job-to-be-done, required inputs, and boundaries for the source conflict triage prompt.
Use this prompt when your pipeline already identifies contradictions but lacks a consistent, auditable way to decide which conflicts matter. You must provide pre-extracted conflict descriptions, source metadata, and domain context. The prompt assumes conflicts have already been detected and described by an upstream process such as a contradiction extraction prompt or a multi-source conflict detection step. It does not resolve conflicts. It only decides what to do about them. Do not use this prompt as a conflict detector. If you feed it raw passages and expect it to find contradictions, you will get unreliable results because the prompt is designed for classification, not discovery. Also avoid using this prompt when the triage decision requires real-time human judgment on nuanced content. The prompt can pre-sort and recommend, but high-stakes domains such as clinical safety or legal filings should always route escalate decisions to a human review queue with full source evidence attached.
Before wiring this into production, define clear escalation criteria for your domain. What constitutes high impact? Is it financial exposure above a threshold, patient safety risk, regulatory non-compliance, or public reputation damage? Encode these criteria in the [CONSTRAINTS] and [RISK_LEVEL] placeholders. Also prepare eval cases: known high-severity conflicts that must trigger escalate, known low-stakes disagreements that should be dismissed, and ambiguous cases where defer is the correct call. Run these through the prompt before deployment and measure precision and recall on each triage category. If your system cannot tolerate a misclassified escalate, add a human-in-the-loop gate after the prompt output. The next section provides the copy-ready template you can adapt.
Use Case Fit
Where Source Conflict Triage works well and where it introduces risk. This prompt is designed for decision-support pipelines that need to prioritize disagreements before they reach a human or downstream system.
Good Fit: High-Volume Evidence Streams
Use when: your system ingests multiple documents, reports, or feeds and conflicts are inevitable. Guardrail: the prompt reduces reviewer fatigue by pre-sorting conflicts by severity and impact, ensuring humans only see what matters.
Bad Fit: Single-Source Summarization
Avoid when: the input is a single document or a set of sources known to be consistent. Guardrail: running conflict triage on homogeneous data produces noisy, low-value alerts. Gate the prompt behind a multi-source or divergence check.
Required Inputs
Use when: you can provide the original claim, at least two source passages, and source metadata (date, authority). Guardrail: missing metadata forces the model to guess at severity and impact, producing unreliable triage categories. Validate inputs before calling the prompt.
Operational Risk: Escalation Threshold Drift
Risk: the model's severity calibration shifts across domains, over-escalating minor terminology differences or under-escalating factual contradictions. Guardrail: pin the severity scale to concrete, domain-specific anchors in the prompt. Log triage decisions and audit a random sample weekly.
Operational Risk: Resolution Overconfidence
Risk: the model marks a conflict as 'deferrable' or 'low-stakes' when it actually impacts a downstream decision. Guardrail: always route 'low-stakes' classifications through a lightweight human sampling process for the first month of production. Adjust thresholds based on false negatives.
Bad Fit: Real-Time, Low-Latency Systems
Avoid when: you need a decision in under 500ms. Guardrail: conflict triage requires reasoning over multiple passages and an escalation policy. For real-time paths, use a fast classifier for obvious agreements and queue only ambiguous cases for this prompt.
Copy-Ready Prompt Template
Paste this prompt into your system instructions or user message to triage detected source conflicts by urgency, impact, and escalation path.
This template is designed to be dropped directly into your decision-support system's prompt layer. It assumes you have already detected a set of conflicting claims across sources and now need to classify each conflict by severity, determine which require immediate human review, and produce a structured triage report. Replace every square-bracket placeholder with your actual data before sending. The prompt enforces a strict output schema so your application can parse the triage decisions programmatically and route high-severity conflicts to the appropriate escalation queue.
textYou are a source conflict triage specialist for a decision-support system. Your job is to assess detected evidence conflicts and classify each by urgency, impact, and required action. ## INPUT CONFLICT LIST: [CONFLICT_LIST] CONTEXT: [DECISION_CONTEXT] RISK TOLERANCE: [RISK_TOLERANCE] ## CONFLICT LIST SCHEMA Each conflict in the input is a JSON object with: - conflict_id: string - claim: the disputed statement - source_a: object with source_id, excerpt, reliability_score (0-1), recency (date) - source_b: object with source_id, excerpt, reliability_score (0-1), recency (date) - conflict_type: one of "factual_contradiction", "methodological_difference", "interpretation_divergence", "scope_mismatch", "temporal_change" ## TRIAGE RULES 1. Assign a severity score from 1 (low) to 5 (critical) based on: - Impact on decision quality if unresolved - Reliability gap between conflicting sources - Reversibility of the decision this evidence supports - Whether the conflict is resolvable with available information 2. Assign an action from: "escalate_immediate", "flag_for_review", "note_and_defer", "ignore_low_stakes" 3. Escalation criteria (action must be "escalate_immediate" if ANY of these are true): - Severity >= 4 - The conflict affects a safety-critical, legal, or financial determination - Both sources have reliability_score >= 0.7 but directly contradict each other on a material fact - The decision context indicates the decision is irreversible or high-cost 4. For "note_and_defer" conflicts, include a brief deferral rationale and suggested revisit conditions. 5. For "ignore_low_stakes" conflicts, explain why the disagreement does not materially affect the decision. ## OUTPUT SCHEMA Return a JSON object with this exact structure: { "triage_summary": { "total_conflicts": number, "escalate_immediate_count": number, "flag_for_review_count": number, "note_and_defer_count": number, "ignore_low_stakes_count": number, "highest_severity": number }, "conflicts": [ { "conflict_id": "string", "severity": number, "severity_rationale": "string (2-3 sentences)", "action": "escalate_immediate" | "flag_for_review" | "note_and_defer" | "ignore_low_stakes", "escalation_target": "string | null (role or team to escalate to, required if action is escalate_immediate)", "deferral_rationale": "string | null (required if action is note_and_defer)", "revisit_conditions": "string | null (required if action is note_and_defer)", "ignore_rationale": "string | null (required if action is ignore_low_stakes)", "resolution_notes": "string (any additional context for the reviewer)" } ] } ## CONSTRAINTS - Do not resolve or reconcile the conflicts. Your job is triage only. - Do not downgrade severity because a conflict seems easy to resolve. Rate based on impact if left unresolved. - If reliability_score is missing for a source, treat it as 0.5 and note this in resolution_notes. - If recency is missing, do not assume staleness; note the missing data in resolution_notes. - Never output markdown fences around the JSON. Return raw JSON only.
To adapt this template, start by mapping your conflict detection output into the CONFLICT_LIST schema. If your upstream detection prompt produces a different structure, add a transformation step in your application layer rather than complicating this triage prompt. The DECISION_CONTEXT placeholder should describe what decision the evidence supports, who the decision-maker is, and the cost of being wrong—this context is what makes severity scoring meaningful. The RISK_TOLERANCE field accepts values like "low", "medium", or "high" and should influence the threshold at which conflicts escalate. If your system has defined escalation targets (specific teams, roles, or queues), you can hardcode them into the escalation criteria section or pass them as an additional [ESCALATION_MAP] variable. Test this prompt with at least three conflict scenarios before production: a clear high-severity contradiction, a low-stakes methodological difference, and an edge case where one source has missing reliability data. Verify that the output JSON parses correctly and that escalation decisions match your organization's actual review workflows.
Prompt Variables
Required inputs for the Source Conflict Triage prompt. Each placeholder must be populated before the prompt is sent. Validation notes describe how to check that the input is well-formed and safe before execution.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[CONFLICT_LIST] | Array of detected conflicts, each with source pairs, disputed claims, and conflict type classifications from upstream detection | [{"conflict_id":"C1","claim":"Market grew 12% in Q3","source_a":"audited_financials.pdf","source_b":"analyst_report_q3.pdf","conflict_type":"factual_contradiction","source_a_claim":"12% growth","source_b_claim":"8% growth"}] | Schema check: array of objects with required fields conflict_id, claim, source_a, source_b, conflict_type. Reject if empty array or missing required fields. |
[DECISION_CONTEXT] | Description of the decision the user is making, including stakes, timeline, and what action depends on resolving or noting the conflict | Quarterly investment allocation review. Decision deadline: 2025-06-15. High-stakes: $2M portfolio rebalancing depends on accurate growth figures. | Must be non-empty string. Check for minimum 50 characters to ensure sufficient context. Reject if purely hypothetical or missing decision stakes. |
[DOMAIN] | Domain label used to select severity thresholds, escalation rules, and authority-weighting heuristics | financial_reporting | Must match one of the registered domain taxonomy values. Reject unknown domains. Default to 'general' if not specified but log a warning. |
[SEVERITY_THRESHOLDS] | Numerical thresholds mapping severity scores to triage actions: escalate, resolve, defer, note, ignore | {"escalate":0.85,"resolve":0.65,"defer":0.40,"note":0.20,"ignore":0.0} | Schema check: object with numeric values between 0.0 and 1.0 in descending order. Reject if escalate threshold is lower than resolve threshold. Validate all five keys present. |
[SOURCE_AUTHORITY_MAP] | Mapping of source identifiers to authority scores, recency timestamps, and reliability classifications | {"audited_financials.pdf":{"authority":0.95,"recency":"2025-05-01","classification":"primary_audited"},"analyst_report_q3.pdf":{"authority":0.60,"recency":"2025-04-15","classification":"secondary_opinion"}} | Schema check: object where each key matches a source identifier from CONFLICT_LIST. Each value must have authority (0.0-1.0), recency (ISO date), and classification (registered enum). Reject if sources in conflicts are missing from this map. |
[ESCALATION_RULES] | Rules defining who or what system receives escalated conflicts, including routing target, format requirements, and urgency flag conditions | {"high_impact":{"route_to":"human_review_queue_finance","format":"structured_ticket","urgency_flag":true,"sla_minutes":60},"medium_impact":{"route_to":"deferred_review_log","format":"summary_entry","urgency_flag":false}} | Schema check: object with at least high_impact and medium_impact keys. Each must have route_to and format. Reject if high_impact route_to is null or missing SLA. |
[OUTPUT_SCHEMA] | Expected JSON schema for the triage output, defining required fields, enum values for actions, and array structures | {"type":"object","required":["conflict_id","severity_score","triage_action","rationale"],"properties":{"triage_action":{"enum":["escalate","resolve","defer","note","ignore"]}}} | Schema check: valid JSON Schema draft. Must include enum constraint on triage_action. Reject if schema allows actions outside the five defined triage levels. |
[MAX_CONFLICTS_PER_BATCH] | Integer limit on how many conflicts to process in a single prompt call, used to control latency and token usage | 25 | Must be positive integer between 1 and 100. Reject if greater than 100 to prevent context overflow. Default to 25 if not provided but log a warning. |
Implementation Harness Notes
How to wire the Source Conflict Triage Prompt into a decision-support pipeline with validation, routing, and human review.
This prompt is designed to sit downstream of a conflict detection step and upstream of a resolution or escalation workflow. It expects a structured list of detected conflicts, each with source pairs, conflicting claims, and a preliminary conflict type. The output is a triage decision per conflict: resolve now, note and defer, or ignore. The harness must enforce that only conflicts meeting the defined impact and urgency thresholds reach human reviewers or automated resolution paths.
Integration pattern: Place this prompt after your conflict detection module and before any resolution logic. The input should be assembled programmatically from your conflict store, mapping each conflict to the [CONFLICT_LIST] placeholder as a JSON array of objects with fields: conflict_id, claim, source_a, source_b, conflict_type, and domain. The [IMPACT_CRITERIA] placeholder should be populated from your application's risk taxonomy—for example, mapping high_impact to conflicts affecting patient safety, regulatory compliance, or financial thresholds above a defined dollar amount. The [ESCALATION_RULES] placeholder defines who reviews what: route resolve_now items to a review queue with SLA deadlines, log note_and_defer items to a deferred conflict register with a revisit date, and discard or archive ignore items with an audit note. Validate the model's output against a strict JSON schema before acting on any triage decision. A malformed severity rating or missing escalation_target field should trigger a retry with the error message injected into the prompt context, not a silent fallback.
Model choice and latency: Use a model with strong instruction-following and JSON output capabilities for this task. The triage logic requires consistent application of impact criteria across conflicts, so prefer models with low variance on structured classification tasks. If your conflict volume is high, batch conflicts into groups of 10-20 per prompt call to balance latency against consistency—larger batches risk the model losing fidelity on edge cases. Log every triage decision with the model version, prompt hash, input conflict IDs, and output decisions. For high-impact domains, require human confirmation on all resolve_now items before any downstream action is taken. Never auto-resolve a conflict that the model flags as high-severity without a human in the loop.
Testing and failure modes: Before production, run this prompt against a golden set of 50-100 labeled conflicts covering all severity levels and conflict types your system encounters. Measure agreement with human triage decisions, paying special attention to false negatives—conflicts the model marks as ignore or note_and_defer that human reviewers would escalate. The most common failure mode is severity miscalibration under domain shift: a conflict that looks low-impact in a generic context may be high-impact in your specific domain. Mitigate this by keeping [IMPACT_CRITERIA] tightly scoped to your application's risk definitions and updating it when your product surface changes. A secondary failure mode is inconsistent triage across similar conflicts; detect this by comparing triage decisions for conflicts with the same conflict type and similar source authority gaps. If variance exceeds a threshold, refine the prompt's decision rules or add few-shot examples of borderline cases.
Expected Output Contract
Fields, types, and validation rules for the Source Conflict Triage Prompt output. Use this contract to parse, validate, and route triage results in your decision-support pipeline.
| Field or Element | Type or Format | Required | Validation Rule |
|---|---|---|---|
conflict_id | string | Non-empty string matching the input conflict identifier; reject if missing or mismatched | |
triage_timestamp | ISO 8601 datetime string | Parseable as valid ISO 8601; must be within 5 minutes of system clock at validation time | |
urgency_rating | enum: critical | high | medium | low | Must match one of the four enum values exactly; reject unknown values | |
impact_assessment | object with fields: decision_impact (string), user_facing (boolean), downstream_effects (string[]) | decision_impact must be non-empty string; user_facing must be boolean; downstream_effects must be array with at least one non-empty string | |
resolution_required | boolean | Must be true if urgency_rating is critical or high; flag for human review if false on critical conflicts | |
escalation_path | string or null | Must be non-null and non-empty when resolution_required is true; must match a registered escalation queue name when non-null | |
deferrable | boolean | Must be false when urgency_rating is critical; must be true when urgency_rating is low unless impact_assessment.user_facing is true | |
triage_rationale | string | Non-empty string between 20 and 500 characters; must reference at least one source or evidence element from the input | |
conflicting_sources | array of objects with fields: source_id (string), position_summary (string) | Array must contain at least 2 entries; each source_id must be non-empty; each position_summary must be non-empty and under 200 characters | |
recommended_action | enum: resolve_now | escalate | note_and_defer | ignore | Must match one of the four enum values; must be consistent with urgency_rating and resolution_required combination | |
confidence_score | number between 0.0 and 1.0 | If present, must be float between 0.0 and 1.0 inclusive; values below 0.6 should trigger human review when resolution_required is true |
Common Failure Modes
What breaks first when triaging source conflicts in decision-support systems and how to guard against it.
False Conflict Detection on Paraphrased Agreement
What to watch: The prompt flags sources as conflicting when they actually agree but use different terminology, scope, or framing. This produces noisy conflict logs that erode user trust and waste reviewer time. Guardrail: Add a verification step that requires the model to extract the core claim from each source before comparing. Include few-shot examples of paraphrased agreement labeled as non-conflict. Validate with a semantic similarity threshold on extracted claims before surfacing conflicts.
Missed Implicit Contradictions
What to watch: The prompt only catches explicit textual contradictions and misses conflicts that require inference, such as when one source implies a conclusion that another source's data would refute. This produces false confidence by underreporting real disagreements. Guardrail: Include a secondary pass that asks the model to infer what each source implies about the decision question, then compare implications. Use chain-of-thought reasoning to surface implicit conflicts. Test against a golden set of known implicit contradictions.
Overconfident Severity Ratings on Ambiguous Conflicts
What to watch: The prompt assigns high severity to conflicts where the evidence is genuinely ambiguous, the domain has known uncertainty, or the sources differ only in methodology rather than conclusions. This triggers unnecessary escalations and review queues. Guardrail: Require the model to assess resolvability before assigning severity. If the conflict stems from domain uncertainty or methodological differences, cap the severity rating and recommend deferral rather than escalation. Include a confidence score with each severity rating.
Escalation Rule Drift Across Domains
What to watch: The prompt's escalation rules work for one domain but misclassify conflict urgency in another. A conflict that is low-stakes in market intelligence may be high-stakes in clinical evidence. Guardrail: Parameterize escalation rules by domain and impact context. Include a domain tag in the input that adjusts severity thresholds and escalation criteria. Test escalation behavior against domain-specific scenarios before deployment. Maintain a domain-to-threshold mapping in the application layer, not just the prompt.
Source Authority Overweighting
What to watch: The prompt defers to high-authority sources even when they are outdated, contradicted by multiple lower-authority sources with stronger recent evidence, or addressing a different scope. This suppresses legitimate conflicts and produces biased triage. Guardrail: Separate authority assessment from recency and relevance checks. Require the model to evaluate each source on multiple dimensions independently before weighting. Add a rule that multiple corroborating lower-authority sources can outweigh a single high-authority source when recency or specificity favors them.
Conflict Log Incompleteness for Audit Trails
What to watch: The prompt produces a triage decision but omits the reasoning chain, source excerpts, or conflict classification that downstream reviewers and audit systems need. This creates compliance gaps and makes decisions unverifiable. Guardrail: Require structured output that includes the conflicting claim, source excerpts, conflict type, severity rationale, and resolution recommendation in separate fields. Validate output schema completeness before accepting the triage result. Log all fields for auditability, not just the final decision.
Evaluation Rubric
Criteria for testing the Source Conflict Triage Prompt before deployment. Each row defines a pass standard, a failure signal, and a concrete test method. Run these checks against a curated set of conflict scenarios before shipping.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Conflict Detection Recall | Prompt identifies all injected conflicts in a test set of 10 document pairs with known contradictions | Misses more than 1 explicit contradiction or fails to flag any implicit contradiction requiring inference | Run against a golden dataset of 10 document pairs: 5 with explicit contradictions, 3 with implicit contradictions, 2 with no conflict. Require 90% recall on explicit, 66% on implicit |
False Positive Rate on Agreement | Prompt correctly classifies paraphrased agreement as non-conflict in at least 9 of 10 test cases | Flags paraphrased restatements or different-scope claims as conflicts in more than 1 case | Feed 10 document pairs where sources agree but use different wording, scopes, or levels of detail. Measure false positive rate |
Severity Rating Calibration | Prompt assigns HIGH severity to conflicts affecting decision outcomes and LOW to stylistic or trivial disagreements | Rates a methodological disagreement that changes a recommendation as LOW, or a typo-level difference as HIGH | Test with 5 conflict pairs of known severity: 2 HIGH (outcome-affecting), 2 MEDIUM (contextual), 1 LOW (cosmetic). Require exact match on 4 of 5 |
Escalation Rule Adherence | Prompt triggers escalation for all HIGH-severity conflicts and defers or notes all LOW-severity conflicts per the defined policy | Escalates a LOW-severity conflict or fails to escalate a HIGH-severity conflict that meets the escalation threshold | Inject 6 conflicts with predefined escalation expectations: 3 should escalate, 3 should not. Require 100% adherence to escalation rules |
Source Attribution Accuracy | Every conflict statement in the output links to the correct source identifier and passage span | Output attributes a claim to the wrong source, fabricates a source ID, or omits attribution for a conflict claim | Parse output with a schema validator. For each conflict claim, verify the cited source ID exists in the input and the quoted span appears in that source. Require 100% match |
Output Schema Compliance | Output is valid JSON matching the defined [OUTPUT_SCHEMA] with all required fields present and correctly typed | Output is missing required fields, contains extra untyped fields, or fails JSON parse | Validate output against the JSON Schema definition. Require strict compliance: no missing required fields, no type mismatches, no additional properties unless permitted |
Uncertainty Expression for Ambiguous Conflicts | Prompt expresses calibrated uncertainty when conflict severity or resolution is genuinely ambiguous, rather than forcing a confident classification | Prompt assigns HIGH confidence to a severity rating when the evidence is genuinely ambiguous or contradictory signals exist | Test with 3 ambiguous conflict scenarios where reasonable reviewers would disagree on severity. Check output for uncertainty language, confidence qualifiers, or explicit ambiguity flags |
Latency and Token Budget | Prompt completes triage within the defined latency budget and produces output within the max token limit for the batch size | Output exceeds max token limit, is truncated, or response time exceeds the latency SLA for the target batch size | Run with a batch of 10 document pairs. Measure end-to-end latency and output token count. Require latency under [MAX_LATENCY_MS] and tokens under [MAX_OUTPUT_TOKENS] |
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 triage prompt and a flat list of detected conflicts. Remove strict schema enforcement and use a simple urgency scale (Low/Medium/High). Accept free-text impact assessments instead of structured fields.
codeYou are triaging source conflicts for a decision-support system. Conflicts detected: [CONFLICT_LIST] For each conflict, output: - Urgency: Low | Medium | High - Impact summary: 1-2 sentences - Recommended action: Resolve Now | Note and Defer | Ignore
Watch for
- Inconsistent urgency labels across runs
- Over-triage: marking every conflict as High
- Missing rationale when deferring conflicts that later prove critical

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