devils-advocate.md

May 15, 2026 · View on GitHub

Hack23 Logo

😈 Devil's Advocate Template

📊 Systematic Red-Team Challenge to the Day's Analytical Consensus
🎯 ACH · Counter-Evidence · Alternative Hypotheses · Assumption Audit

Owner Version Effective Date Classification

📋 Document Owner: CEO | 📄 Version: 1.2 | 📅 Last Updated: 2026-04-25 (UTC) 🏢 Owner: Hack23 AB (Org.nr 5595347807) | 🏷️ Classification: Public

📌 Template instructions: Produce on every run. Save as analysis/daily/${ARTICLE_DATE}/${DOC_TYPE}/devils-advocate.md. Scope depth by DIW: for lower-DIW runs, provide a concise but explicit challenge to the main assessment; for higher-DIW runs, provide full ACH, multiple alternative hypotheses, assumption audit, counter-evidence, and falsifiable indicators. Pairs with political-risk-methodology.md and intelligence-analysis-techniques.

✨ What to produce: An honest, structured challenge to the main assessment. Apply Analysis of Competing Hypotheses (ACH), surface at least three alternative explanations, audit the assumptions, list falsifiable predictions, and state what evidence would change the judgement.


📐 Template Contract — every fill of this template MUST satisfy this row.

SlotValue
Owning methodologyper-artifact-methodologies.md
Owning gate checkCheck 7 (Family C — ≥ 3 ACH hypotheses) — see 05-analysis-gate.md
Required inputssynthesis-summary.md, sibling Family A
Horizon bandper-run (per scripts/horizon-context.ts)
Output familyFamily C — Strategic Extensions
Aggregation order25 of 30 in canonical order (see scripts/render-lib/aggregator/order.ts)
Reader Intelligence Guiderow generated from devils-advocate.md (see scripts/render-lib/aggregator/reader-guide.ts)
Canonical evidence anchor| claim | evidence (dok_id / vote / MP intressent_id / primary-source URL) | retrieved_at | confidence | — every analytical claim row uses this schema.

Cross-reference: README.md §Template ↔ Methodology ↔ Gate-Check Matrix.

🔄 Tradecraft Context

ElementValue
F3EAD StageANALYZE — challenge prevailing view through structured contrarian analysis
PIRs ServedServes same PIRs as target assessment; applies adversarial rigor to prevent groupthink
Admiralty Floor[B2] for alternative-hypothesis evidence; challenge logic even if evidence is same as main assessment
WEP + ODNIAlternative hypotheses state probability vs. main hypothesis; use WEP comparison ("Main: likely 70%; Alternative A: unlikely 25%")
Source Diversity FloorP1 (alternative hypotheses): ≥2 independent evidence sources per hypothesis; re-interpret existing evidence from different angle
SAT(s) AppliedACH (Analysis of Competing Hypotheses), Devil's Advocacy, Red Team Analysis, Key Assumptions Check
ICD 203 Standards3 (judgments vs assumptions), 4 (alternative analysis — PRIMARY), 7 (explain consistency / change)

📋 Challenge Context

FieldValue
Devil's-Advocate IDDEV-YYYY-MM-DD-NNN
GeneratedYYYY-MM-DD HH:MM UTC
Target assessmente.g., "FiU48 signals coalition discipline before September 2026 election"
Source filesynthesis-summary.md §Finding 1
Confidence of main claim🟩 HIGH
Post-challenge confidence🟧 MEDIUM (downgraded) / 🟩 HIGH (confirmed) / 🟦 VERY HIGH (strengthened)

🎯 Key Judgment Coverage Matrix (Required)

[REQUIRED] Before writing hypotheses, list every KJ from intelligence-assessment.md and map it to at least one challenge row. Gate expectation: 100% KJ coverage — every row must end with ✅ (no ❌). See analysis/methodologies/admiralty-rubric.md.

KJ IDKJ summaryChallenged by hypothesis ID(s)Challenge present?
KJ-1[REQUIRED: summary from intelligence-assessment.md]H1 / H2 / H3✅ / ❌
KJ-2[REQUIRED]H#✅ / ❌
KJ-3[REQUIRED]H#✅ / ❌
............
CoverageN / N (must be 100%)

Gate enforcement (Check 7b): the analysis gate extracts the unique set of KJ-N IDs from intelligence-assessment.md and verifies each appears on a non- row inside this ## Key Judgment Coverage Matrix section. Missing KJs or any row blocks the commit.


🧪 Analysis of Competing Hypotheses (ACH)

Mandatory requirement (ICD 203 §4; gate Check 7b): ACH MUST challenge every Key Judgment (KJ) declared in the sibling intelligence-assessment.md. Coverage is documented above in the ## 🎯 Key Judgment Coverage Matrix section — gate enforcement reads that section and verifies each KJ from intelligence-assessment.md has a non- row there.

ACH matrix

List each hypothesis, then score each piece of evidence as C (consistent), I (inconsistent), or N (neutral). The hypothesis with the fewest inconsistencies survives. Each hypothesis MUST correspond to a KJ challenge (see Coverage Matrix above). WEP probability and base-rate prior MUST be stated for each hypothesis; citing only "analyst judgement" without a base-rate source is a banned pattern (flagged by banned-phrase scanner; see analysis/methodologies/base-rates/ for calibration datasets).

graph LR
    E1["📎 Evidence E1<br/>Unanimous FiU vote"] --> H1["🅐 Coalition discipline<br/>(main)"]
    E1 --> H2["🅑 Pre-election ritual<br/>(alternative)"]
    E1 --> H3["🅒 SD pivotal — not discipline<br/>(alternative)"]
    E2["📎 Evidence E2<br/>SD fuel-tax statement"] --> H3
    E3["📎 Evidence E3<br/>EU Commission silence"] --> H1
    E3 --> H2

    style H1 fill:#4CAF50,color:#FFFFFF
    style H2 fill:#FFC107,color:#000000
    style H3 fill:#FF9800,color:#FFFFFF
EvidenceH1: Coalition disciplineH2: Pre-election ritualH3: SD-pivotal, not discipline
E1 — Unanimous FiU vote 2026-04-21CCC
E2 — SD lead-spokesperson public supportNNC
E3 — EU-Commission silence to dateCCN
E4 — Internal L reservation on proportionality (leaked)INN
E5 — Prior coalition discipline metric 88.5 %CNN
Inconsistent count100
Consistent count322

ACH verdict: H2 and H3 both survive with zero inconsistencies. H1 is plausible but carries one inconsistency (L reservation). The assessment should therefore qualify "discipline" with "conditional on SD posture" (H3) and "pre-election timing" (H2).


🔄 Alternative Hypotheses (minimum 3)

Alternative 1 — Pre-election Ritual

  • Claim: Coalition unity reflects electoral timing, not durable agreement.
  • Evidence for: Fuel-tax cut expires before Q4 2026 budget; electoral pressure peaks July–Aug 2026.
  • Evidence against: Coalition also united on NATO and justice packages this riksmöte.
  • Implication if true: Unity may fracture post-election regardless of result.

Alternative 2 — SD-Pivotal Compromise

  • Claim: Coalition cohesion is purchased through SD policy concessions; discipline is external.
  • Evidence for: Fuel-tax cut + justice-package composition match SD priorities.
  • Evidence against: Wind-power revenue law is inconsistent with SD's historic climate position.
  • Implication if true: Coalition-Mathematics risk of SD withdrawal rises after September 2026.

Alternative 3 — Signalling Under Duress

  • Claim: Unity signals internal weakness the government fears will leak.
  • Evidence for: Unusually low dissent rate in a pre-election quarter.
  • Evidence against: Budget-continuity pattern consistent with historical incumbency behaviour.
  • Implication if true: Expect defensive posture on scandals; reduced appetite for fresh initiatives.

🧰 Assumption Audit

#AssumptionSourceStatusVulnerability
A1"Voting discipline = coalition durability"Conventional coalition theory🟡 ContestableDiscipline can be purchased or coerced
A2"Pre-election polling gap closes by September"Historical Swedish election cycles🟢 SupportedDepends on economy and crises
A3"EU Commission silence = tacit approval"Diplomatic pattern🟡 ContestableSilence often precedes formal probe
A4"SD maintains confidence & supply"2024–2026 record🟡 ContestablePolicy conflicts on climate can trigger withdrawal

🧮 Base-Rate Check

QuestionBase rateSourceImplication
How often do coalition governments survive a pre-election quarter without dissent?~55 % since 2000Swedish coalition recordCurrent unity is above average but not unprecedented
How often does the EU Commission open a fuel-tax review within 6 months?~30 %EU Commission state-aid archiveNon-trivial downside risk
How often do incumbent governments win the following election from a 4-pt polling deficit?~20 %Swedish electoral historyRetention probability is lower than current polling alone suggests

🎯 Falsifiable Predictions

#PredictionBy whenWhat would falsify it
P1Coalition holds unified on FiU48 chamber vote2026-04-24Any coalition-party Avstår or Nej
P2EU Commission issues no state-aid letter within 60 days2026-06-21Any formal notification to Sweden
P3Government approval gap closes ≤ 3 pt by August 2026 SIFO2026-08-31Gap widens or stays ≥ 5 pt
P4SD maintains confidence-and-supply posture through election2026-09-13SD withdrawal / defection signal

🧭 What Would Change the Assessment

TriggerResulting change
Any one of P1–P4 falsifiesDowngrade main claim from 🟩 HIGH to 🟧 MEDIUM
Any two falsifyDowngrade to 🟥 LOW and rewrite synthesis-summary.md §Finding 1
All four hold through electionUpgrade to 🟦 VERY HIGH

🚨 Cognitive-Bias Checklist

BiasExposureMitigation applied
Confirmation bias (toward government narrative)⚠️Alt 1 and Alt 2 explicitly considered
Recency bias (over-weighting today's vote)⚠️Base-rate check included
Availability bias (media framing)Cross-checked with media-framing-analysis.md
Anchoring (to prior confidence level)⚠️Re-scored from evidence this run
Groupthink⚠️ACH forces comparison of hypotheses

LinkPath
Main assessment being challengedsynthesis-summary.md
Risk registerrisk-assessment.md
Media framing (for availability check)media-framing-analysis.md
Methodologyintelligence-analysis-techniques SKILL

Document Control


✅ Pass-2 Self-Audit Checklist (v4.4 — required)

Purpose: AI-FIRST principle requires a Pass-2 read-back-and-improve. After producing this artifact in Pass 1, re-read it end-to-end and verify each item below. Document any remediation in methodology-reflection.md §"Pass-2 audit log". Any unchecked ❌ box at the end of Pass 2 forces a Pass-3 rewrite of the affected section.

  • Tradecraft anchors honoured — F3EAD stage matches the artifact's role; PIRs declared in the §Tradecraft Context block are actually addressed in the body; Admiralty grades attached to every external source; WEP band + ODNI confidence on every probabilistic judgement.
  • Source diversity floor met — at least the minimum number of independent MCP sources required by the artifact's tradecraft block are cited; single-source claims are explicitly labelled [SINGLE-SOURCE — corroboration pending].
  • Evidence specificity — every quantified claim cites a dok_id (Riksdag), an SCB / IMF dataflow code, or a named external source with date; no "according to data" / "studies show" hand-waves.
  • Named-actor discipline — every political claim names ≥ 1 person (party + role + dated act/quote) or labels the absence ([diffuse — no named actor]).
  • Counter-narrative present — at least one explicit competing hypothesis, dissent quote, or framed objection appears in the body; "no opposition recorded" is itself a finding to label, not silence.
  • Election 2026 lens applied — the §"Election 2026 Implications" subsection (or equivalent) addresses electoral salience, coalition pressure, and forward indicators; not boilerplate.
  • No illustrative content shipped as fact — every [REQUIRED] placeholder is filled OR removed; every Example: block is clearly fenced or removed; no fabricated dok_id, vote count, or quote leaks into the final artifact.
  • Cross-references resolve — every [link](file.md) in this artifact points to a file that exists in the run folder (analysis/daily/$ARTICLE_DATE/$SUBFOLDER/) or to a methodology / template under analysis/.
  • Mermaid renders — every fenced ```mermaid block parses (no missing class definitions, no orphan nodes, no >40-node graphs that overflow viewport on mobile).
  • Line-floor check — artifact length ≥ the per-artifact floor in reference-quality-thresholds.json; shorter artifacts trigger Pass-2 rewrite, never a [truncated] note.