📊 Master Map of Every Analysis Markdown File Produced by EU Parliament Monitor Workflows
🎯 One Row per Artifact · Methodology + Template + Depth Floor + Mermaid Type
📋 Document Owner: CEO | 📄 Version: 1.3 | 📅 Last Updated: 2026-04-25 (UTC) 🔄 Review Cycle: Quarterly | ⏰ Next Review: 2026-07-31 🏢 Owner: Hack23 AB (Org.nr 5595347807) | 🏷️ Classification: Public
This catalog is the single source of truth for every markdown artifact an agentic workflow produces under analysis/daily/{date}/{article-type}-run{N}/. For every artifact it names:
- the methodology the AI agent applies when writing it,
- the template that defines its output shape,
- the minimum line floor enforced by
scripts/validate-analysis-completeness.js(npm run validate-analysis), - the mandatory color-coded Mermaid diagram type, and
- the EP MCP data sources feeding it.
Agents read this catalog once at the start of a run and treat it as the index into the rest of the methodology library.
%%{init: {"theme":"dark","themeVariables":{"primaryColor":"#1565C0","primaryTextColor":"#ffffff","primaryBorderColor":"#0A3F7F","lineColor":"#90CAF9","secondaryColor":"#2E7D32","secondaryTextColor":"#ffffff","tertiaryColor":"#FF9800","tertiaryTextColor":"#000000","mainBkg":"#1565C0","secondBkg":"#2E7D32","tertiaryBkg":"#FF9800","noteBkgColor":"#FFC107","noteTextColor":"#000000","errorBkgColor":"#D32F2F","fontFamily":"Inter, Helvetica, Arial, sans-serif"}}}%%
flowchart LR
subgraph INPUT["📥 Run Root"]
R["analysis/daily/{date}/{type}-run{N}/"]
end
subgraph INTEL["🧠 intelligence/ — 19 artifacts"]
I1["synthesis-summary"]
I2["stakeholder-map"]
I3["scenario-forecast"]
I4["pestle-analysis"]
I5["threat-model"]
I6["voting-patterns"]
I7["workflow-audit"]
I8["cross-session-intel"]
I9["+11 more"]
end
subgraph CLASS["🏷️ classification/ — 4 artifacts"]
C1["significance-classification"]
C2["actor-mapping"]
C3["forces-analysis"]
C4["impact-matrix"]
end
subgraph RISK["⚠️ risk-scoring/ — 4 artifacts"]
K1["risk-matrix"]
K2["quantitative-swot"]
K3["political-capital-risk"]
K4["legislative-velocity-risk"]
end
subgraph THREAT["🎭 threat-assessment/ — 4 artifacts"]
T1["political-threat-landscape"]
T2["actor-threat-profiles"]
T3["consequence-trees"]
T4["legislative-disruption"]
end
subgraph DOCS["📄 documents/ — 1 artifact"]
D1["document-analysis-index"]
end
subgraph LEG["📜 existing/ — 2 long-form + mirrors"]
L1["deep-analysis"]
L2["session-baseline"]
end
subgraph META["📒 manifest"]
M1["manifest.json"]
end
R --> INTEL
R --> CLASS
R --> RISK
R --> THREAT
R --> DOCS
R --> LEG
R --> META
style INPUT fill:#1565C0,color:#ffffff
style INTEL fill:#7B1FA2,color:#ffffff
style CLASS fill:#2E7D32,color:#ffffff
style RISK fill:#FF9800,color:#000000
style THREAT fill:#D32F2F,color:#ffffff
style LEG fill:#FFC107,color:#000000
style DOCS fill:#0288D1,color:#ffffff
style META fill:#FFC107,color:#000000
Color legend (used consistently across all diagrams in the analysis library):
| Color | Hex | Semantic Meaning |
|---|---|---|
| 🔵 Blue | #1565C0 |
Input / scope / primary pipeline |
| 🟣 Purple | #7B1FA2 |
Intelligence synthesis (highest cognitive layer) |
| 🟢 Green | #2E7D32 |
Classification / safe state / approved |
| 🟠 Orange | #FF9800 |
Risk / caution / elevated attention |
| 🔴 Red | #D32F2F |
Threat / critical / rejected |
| 🟡 Yellow | #FFC107 |
Metadata / notes / pending |
| 🔷 Light-Blue | #0288D1 |
Documents / reference / read-only |
Every row in the catalog below answers these six questions about one artifact:
| Column | Meaning |
|---|---|
| Artifact | Relative path under the run root ({folder}/{file}.md) |
| Purpose (1 line) | The single sentence of analytical value the file delivers |
| Methodology | The methodology document the AI reads to produce this artifact |
| Template | The template the file's shape is derived from |
| Min lines (breaking) | Depth floor for breaking article type (from reference-quality-thresholds.json) |
| Mermaid type | Mandatory diagram shape (using the 7-color Hack23 palette above) |
Stage-A artifacts are written before any intelligence/, classification/, or risk-scoring/ analysis. data-availability-assessment.md sets manifest.dataMode, which determines whether Stage-B artifacts use full-data or degraded-mode templates. It is the only artifact whose dataMode field drives the floor-selection logic in scripts/validate-analysis-completeness.js. procedures-proxy.md is a companion produced whenever get_procedures_feed returns a STALENESS_WARNING.
| Artifact | Purpose (1 line) | Methodology | Template | Min lines | Mermaid type |
|---|---|---|---|---|---|
data-availability-assessment.md |
Stage A (mandatory, every run). Per-source triage table recording availability of every EP MCP endpoint, IMF API, and DOCEO XML feed; sets manifest.dataMode which drives degraded-floor selection in Stage C. |
per-artifact-methodologies.md §data-availability-assessment | data-availability-assessment.md | 80 | flowchart LR (source availability status) |
intelligence/procedures-proxy.md |
Stage B companion triggered by STALENESS_WARNING. Standardised record of the get_procedures_feed staleness pattern (1972–1987 tail) and the adopted-texts + get_procedures mitigation applied; referenced from mcp-reliability-audit.md. |
per-artifact-methodologies.md §procedures-proxy | intelligence/procedures-proxy.md | 60 | flowchart LR (mitigation chain) |
These variants replace their full-data counterparts when manifest.dataMode is set by the Stage-A data-availability-assessment.md artifact. The validator reads manifest.dataMode and applies degradedFloorFactor: 0.85 to all configured floors. Structural checks (Mermaid, WEP, Admiralty, SATs, requiredSections) are never reduced. The variant artifacts are stored at the same relative path as the base artifact — they replace the base artifact under the same intelligence/ path in the run directory.
| Artifact | Purpose (1 line) | Methodology | Template | Min lines (breaking, degraded) | Mermaid type |
|---|---|---|---|---|---|
intelligence/voting-patterns.degraded.md |
Activated when dataMode = "degraded-voting" (RCV data lag > 4 weeks). Structural seat-share and adopted-texts proxy analysis of coalition viability when RCV data is unavailable — all confidence labels in §§2–6 capped at 🟡 MEDIUM, ≥3 inline "(structural proxy — no RCV data)" labels mandatory. Replaces intelligence/voting-patterns.md. |
per-artifact-methodologies.md §voting-patterns | intelligence/voting-patterns.degraded.md | 128 | graph LR (seat-share proxy network) |
intelligence/economic-context.fallback.md |
Activated when dataMode = "degraded-imf" (IMF SDMX API returned F6 / timeout). IMF-fallback economic context using prior-run cache or training-data WEO KB-estimates; every KB-estimate claim carries [KB-ESTIMATE] prefix and explicit WEO vintage. Replaces intelligence/economic-context.md. |
per-artifact-methodologies.md §economic-context | intelligence/economic-context.fallback.md | 157 | xyChart + flowchart |
The analytical core. This section catalogs the full set of intelligence/ artifacts that may be produced across EU Parliament Monitor workflows. The required subset varies by article type and scope; follow ai-driven-analysis-guide.md for per-workflow requirements, including cases where cross-session-intelligence.md is only required for weekly/monthly/quarterly scopes (not for breaking news). The 8 long-horizon and electoral artifacts at the bottom of the table are produced by the 6 news-<long-horizon>.md workflows added in 2026-Q2 and are governed by forward-projection-methodology.md and electoral-cycle-methodology.md. Per-artifact depth floors are keyed by article type in reference-quality-thresholds.json.
| Artifact | Purpose (1 line) | Methodology | Template | Min lines (breaking) | Mermaid type |
|---|---|---|---|---|---|
intelligence/analysis-index.md |
Read-me-first index naming every artifact in this run and the recommended reading order. | per-artifact-methodologies.md §analysis-index | analysis-index.md | 160 | flowchart LR |
intelligence/synthesis-summary.md |
The run's intelligence executive summary — top findings, confidence, forward monitors. | per-artifact-methodologies.md §synthesis-summary | synthesis-summary.md | 205 | mindmap + flowchart |
intelligence/stakeholder-map.md |
Power × Alignment map of ≥12 named stakeholders on the period's dominant issue. | per-artifact-methodologies.md §stakeholder-map | stakeholder-map.md | 305 | quadrantChart |
intelligence/scenario-forecast.md |
≥3 probability-weighted scenarios with early-warning indicators and trigger events. | per-artifact-methodologies.md §scenario-forecast | scenario-forecast.md | 280 | flowchart TD (branching) |
intelligence/pestle-analysis.md |
Political / Economic / Social / Technological / Legal / Environmental scan of the period. | per-artifact-methodologies.md §pestle-analysis | pestle-analysis.md | 250 | mindmap (6 branches) |
intelligence/threat-model.md |
Multi-framework (Diamond + Attack Trees + Kill Chain) view of the period's top threats. | per-artifact-methodologies.md §threat-model + political-threat-framework.md | threat-model.md | 250 | graph TD (attack tree) |
intelligence/coalition-dynamics.md |
Group cohesion + cross-party alliance pairs on the period's named votes/positions. | per-artifact-methodologies.md §coalition-dynamics | coalition-dynamics.md | 135 | graph LR (group pairs) |
intelligence/cross-run-diff.md |
Bayesian delta vs. the previous run for this article type (what changed, what upgraded). | per-artifact-methodologies.md §cross-run-diff | cross-run-diff.md | 100 | flowchart LR (prior → evidence → posterior) |
intelligence/economic-context.md |
IMF (sole authoritative economic source) macro/fiscal/trade/monetary/exchange-rate/banking data + optional World Bank non-economic cross-refs, anchored to the period's policy topics. | per-artifact-methodologies.md §economic-context + imf-indicator-mapping.md (primary) + worldbank-indicator-mapping.md (non-economic) | economic-context.md | 185 | xyChart + flowchart |
intelligence/historical-baseline.md |
Every current score / metric anchored to the 30-day and 90-day comparable baseline. | per-artifact-methodologies.md §historical-baseline | historical-baseline.md | 190 | timeline / xyChart |
intelligence/mcp-reliability-audit.md |
EP MCP endpoint-by-endpoint reliability record + upstream issues filed. | per-artifact-methodologies.md §mcp-reliability-audit | mcp-reliability-audit.md | 385 | flowchart LR (endpoint status) |
intelligence/significance-scoring.md |
5-dimension composite score per candidate item, with publish decision. | per-artifact-methodologies.md §significance-scoring | significance-scoring.md | 105 | pie + bar |
intelligence/political-threat-landscape.md |
Threat Landscape view of the period — 6 purpose-built dimensions for EP democracy. | per-artifact-methodologies.md §political-threat-landscape | political-threat-landscape.md | 90 | graph TD (landscape) |
intelligence/wildcards-blackswans.md |
Low-probability / high-impact reserve watchlist with trigger conditions. | per-artifact-methodologies.md §wildcards-blackswans | wildcards-blackswans.md | 275 | quadrantChart (prob × impact) |
intelligence/reference-analysis-quality.md |
Self-score of this run against the reference benchmark + gaps + Pass-2 plan. | per-artifact-methodologies.md §reference-analysis-quality | reference-analysis-quality.md | 190 | flowchart (pass1 → pass2) |
intelligence/voting-patterns.md |
Group-by-group bloc behaviour for the period: cohesion per group, observed coalitions, win-rate per bloc, outlier votes, forward-vote forecasts. | per-artifact-methodologies.md §voting-patterns | voting-patterns.md | 150 | graph LR (group agreement network) |
intelligence/workflow-audit.md |
End-of-run self-audit — phases completed, MCP tools called, Core Principles compliance, time budget, issues and next-run recommendations. | per-artifact-methodologies.md §workflow-audit | workflow-audit.md | 100 | flowchart LR (6-phase execution) |
intelligence/methodology-reflection.md |
Analytic-quality retrospective — SATs applied, AI-FIRST iteration log, strengths, limitations, lessons, biases and mitigations, update plan. Produced as the final artifact of every run. | per-artifact-methodologies.md §methodology-reflection | methodology-reflection.md | 220 (breaking) / 180 (other) | graph TD (pipeline) |
intelligence/cross-session-intelligence.md |
Session-over-session narrative across plenary sessions within a period — crystallisation moment, momentum indicators, cross-session themes. | per-artifact-methodologies.md §cross-session-intelligence | cross-session-intelligence.md | See reference-quality-thresholds.json (per article type; not required for breaking) |
timeline + flowchart |
intelligence/forward-projection.md |
Master multi-horizon forecast — WEP-banded probability tables, structural-break tripwires, reference-class table, Mermaid timeline-with-branches. Mandatory for every prospective horizon ≥ 7d. | forward-projection-methodology.md | forward-projection.md | 80 (week-ahead) / 120 (month-ahead) / 280 (quarter-ahead) / 340 (year-ahead) / 360 (term-outlook) / 400 (election-cycle) | timeline with branches |
intelligence/legislative-pipeline-forecast.md |
Per-procedure transit-time projection (committee → plenary → trilogue → adoption) with horizon-conditional probability of completion. Monte-Carlo P10/P50/P90 transit-time priors over the trailing 24 months. | forward-projection-methodology.md §5 | legislative-pipeline-forecast.md | 200 (quarter-in-review) / 220 (quarter-ahead) / 240 (year-in-review) / 260 (year-ahead) | gantt + flowchart LR (procedure transit) |
intelligence/parliamentary-calendar-projection.md |
Plenary/committee calendar walk-forward (3- or 12-month) annotated with rapporteur deadlines, Council Presidency handovers, EU summits, Commission Work Programme milestones. | forward-projection-methodology.md §6 | parliamentary-calendar-projection.md | 200 (quarter-ahead) / 240 (year-ahead) | gantt (calendar walk-forward) |
intelligence/term-arc.md |
EP-term-scoped artifact — term-progress timeline, mandate-delivery scorecard, coalition-trajectory chart. The "where are we in the 5-year arc" view that long-horizon and electoral horizons require. | electoral-cycle-methodology.md | term-arc.md | 280 (year-in-review) / 320 (term-outlook) / 360 (election-cycle) | timeline + xyChart (term arc) |
intelligence/seat-projection.md |
Per-group seat bands at 6/12/24/36-month horizons with confidence intervals and a stacked-bar projection. Mandatory when electoralOverlay: true (term-outlook, election-cycle). |
electoral-cycle-methodology.md §3 | seat-projection.md | 280 (election-cycle) / optional ≥ year-ahead | xyChart (stacked-bar projection) |
intelligence/mandate-fulfilment-scorecard.md |
Retrospective traceability matrix per political group from campaign pledge → adopted EU act. Surfaces over- and under-performance against the mandate the electorate granted at the prior EP election. | electoral-cycle-methodology.md §2 Track A | mandate-fulfilment-scorecard.md | 280 (election-cycle) / 320 (year-in-review, term-outlook) | heatmap (group × pledge) |
intelligence/presidency-trio-context.md |
Council Trio Presidency overlay — legislative priorities, completed/pending files, handover timeline. Mandatory for every horizon ≥ quarter. | forward-projection-methodology.md §7 | presidency-trio-context.md | 180 (quarter-) / 220 (year-, electoral) | timeline (trio handovers) |
intelligence/commission-wp-alignment.md |
Map EP positions vs the Commission Work Programme (CWP) line items. Quarterly+ artifact that surfaces which CWP commitments have an EP rapporteur, what stage each is at, and where EP vs Commission diverges. | forward-projection-methodology.md §8 | commission-wp-alignment.md | 180 (quarter-) / 220 (year-, electoral) | flowchart LR (CWP line item → EP rapporteur → stage) |
The fact layer. What kind of events are in this run, who acted, what forces are in play, what does each event impact?
| Artifact | Purpose (1 line) | Methodology | Template | Min lines (breaking) | Mermaid type |
|---|---|---|---|---|---|
classification/significance-classification.md |
5-dimension significance rubric per event + publish / withhold decision. | per-artifact-methodologies.md §significance-classification + political-classification-guide.md | significance-classification.md | 105 | pie (dimension weights) |
classification/actor-mapping.md |
Named actors (MEPs, groups, committees, Commission, Council) with influence weights. | per-artifact-methodologies.md §actor-mapping | actor-mapping.md | flat 30 | graph LR (actor network) |
classification/forces-analysis.md |
Driving forces vs. restraining forces on the period's dominant issue (Lewin). | per-artifact-methodologies.md §forces-analysis | forces-analysis.md | flat 30 | flowchart LR (force field) |
classification/impact-matrix.md |
Event × stakeholder × dimension matrix showing who is affected and how. | per-artifact-methodologies.md §impact-matrix | impact-matrix.md | flat 30 | heatmap (via table) |
The quantification layer. Every qualitative finding in intelligence/ must be anchored here in numbers.
| Artifact | Purpose (1 line) | Methodology | Template | Min lines (breaking) | Mermaid type |
|---|---|---|---|---|---|
risk-scoring/risk-matrix.md |
5×5 Likelihood × Impact with ≥5 named risks positioned + monitoring triggers. | per-artifact-methodologies.md §risk-matrix + political-risk-methodology.md | risk-matrix.md | 150 | quadrantChart (5×5) |
risk-scoring/quantitative-swot.md |
3+3+3+3 SWOT with numeric scores + TOWS cross-quadrant strategies. | per-artifact-methodologies.md §quantitative-swot + political-swot-framework.md | quantitative-swot.md | 140 | quadrantChart (SWOT) |
risk-scoring/political-capital-risk.md |
Rapporteur / chair / group-leader capital at stake per named position. | per-artifact-methodologies.md §political-capital-risk | political-capital-risk.md | flat 30 | graph LR (capital flow) |
risk-scoring/legislative-velocity-risk.md |
Pipeline throughput, stalled procedures, deadline exposure vs. term end. | per-artifact-methodologies.md §legislative-velocity-risk | legislative-velocity-risk.md | flat 30 | gantt or flowchart LR (procedure timeline / bottleneck map) |
Produced for runs that emphasise democratic-threat or integrity-threat angles (typically motions, propositions, and long-form reviews). For runs that consolidate threat content into intelligence/threat-model.md, this folder may be empty. The fifth artifact — threat-analysis.md — is the framework template's deployed instance for runs that need a per-actor / per-vector tabular view alongside the four landscape artifacts below.
| Artifact | Purpose (1 line) | Methodology | Template | Min lines (breaking) | Mermaid type |
|---|---|---|---|---|---|
threat-assessment/political-threat-landscape.md |
Threat Landscape view — 6 purpose-built dimensions (same content as the intelligence/ twin, emphasised for threat-heavy runs). |
per-artifact-methodologies.md §political-threat-landscape + political-threat-framework.md §Landscape | political-threat-landscape.md | flat 30 | graph TD |
threat-assessment/actor-threat-profiles.md |
Per-actor threat profile: intent, capability, opportunity, attack surface. | per-artifact-methodologies.md §actor-threat-profiles + political-threat-framework.md §Diamond | actor-threat-profiles.md | flat 30 | graph LR (actor × asset) |
threat-assessment/consequence-trees.md |
Consequence tree per threat: action → first-order → second-order → democratic outcome. | per-artifact-methodologies.md §consequence-trees | consequence-trees.md | flat 30 | graph TD (tree) |
threat-assessment/legislative-disruption.md |
How adversarial pressure could stall, redirect, or capture specific procedures. | per-artifact-methodologies.md §legislative-disruption | legislative-disruption.md | flat 30 | flowchart LR (procedure + disruptor) |
threat-assessment/threat-analysis.md |
Tabular per-threat record (vector × likelihood × impact × mitigation) using the framework template; produced when the four landscape artifacts above need a structured roll-up. | per-artifact-methodologies.md §threat-analysis + political-threat-framework.md | threat-analysis.md | flat 30 | graph TD (vector × mitigation) |
| Artifact | Purpose (1 line) | Methodology | Template | Min lines (breaking) | Mermaid type |
|---|---|---|---|---|---|
documents/document-analysis-index.md |
One row per downloaded EP document with its per-file analysis path + status. | per-artifact-methodologies.md §document-analysis-index | per-file-political-intelligence.md | 95 | flowchart LR (feed → analysis) |
Used by motions, propositions, and long-form quarter / month-in-review workflows when the content does not fit any of the 5 standard folders. Newer runs may place the same content under intelligence/ — both locations are valid.
| Artifact | Purpose (1 line) | Methodology | Template | Min lines (motions) | Mermaid type |
|---|---|---|---|---|---|
existing/deep-analysis.md |
Long-form (4 000–10 000 word) Economist-style political intelligence prose — the 30-minute read. | per-artifact-methodologies.md §deep-analysis | deep-analysis.md | 400 | ≥3 diagrams (structural thesis + coalition + forward trajectory) |
existing/session-baseline.md |
Structured calendar + adopted-texts roster for every plenary session in scope. | per-artifact-methodologies.md §session-baseline | session-baseline.md | 200 | gantt (Strasbourg / Brussels timeline) |
Mirror artifacts — older motions-* runs also mirror intelligence/coalition-dynamics.md, intelligence/stakeholder-impact.md, and intelligence/synthesis-summary.md into existing/ alongside the two artifacts above. Construction rules are identical to the intelligence/ counterparts.
| Canonical folder | Historical variant | Treatment |
|---|---|---|
risk-scoring/ |
risk/ |
Both accepted. New runs must write to risk-scoring/. |
intelligence/ |
existing/ (for long-form + mirrors) |
Both accepted. New runs may use either; intelligence/ is preferred. |
extended/media-framing-analysis.md is mandatory for every article-generating workflow (registered in src/config/article-horizons.ts mandatoryArtifacts for every slug, with per-article-type line floors in reference-quality-thresholds.json — built during Pass 2 / late Pass 1 per analytical-supplementary-methodology.md §AS4). The remaining 11 artifacts (introduced by the riksdagsmonitor port 2026-04-23) are not mandatory for completeness-gate passing but are strongly recommended for long-form workflows (month-in-review, quarter-in-review, propositions, trilogue-endgame). An agent that produces any of these must register the artifact in manifest.files.extended[].
| Artifact | Purpose (1 line) | Methodology | Template | Min lines (reco) | Mermaid type |
|---|---|---|---|---|---|
executive-brief.md |
≤90-second decision brief for senior readers (BLUF + key judgments + 3 actions). This is the first rendered article artifact. | synthesis-methodology.md §executive-brief | executive-brief.md | 180 | flowchart LR (BLUF → judgments → actions) |
executive-brief_<lang>.md (× 13) |
Per-language translation siblings of executive-brief.md, one for each non-English code in {sv, da, no, fi, de, fr, es, nl, ar, he, ja, ko, zh}. Produced by the scheduled news-translate.md workflow (3×/day cron). Validator: scripts/validate-brief-translations.js (7 gates). |
executive-brief-translation-guide.md | executive-brief-translation-template.md | ≥ 50 % of source bytes | (none — mirrors source) |
extended/executive-brief.md |
Backwards-compatible legacy location for the same brief; use only when an older run already wrote it there. | synthesis-methodology.md §executive-brief | executive-brief.md | 180 | flowchart LR (BLUF → judgments → actions) |
extended/devils-advocate-analysis.md |
Adversarial challenge to the run's consensus view (ACH + Red Team). | osint-tradecraft-standards.md §Red Team + ACH | devils-advocate-analysis.md | 240 | graph TD (hypothesis × evidence) |
extended/historical-parallels.md |
≥3 EU historical precedents with parallel mechanisms + divergence points. | strategic-extensions-methodology.md §historical-parallels | historical-parallels.md | 230 | timeline |
extended/coalition-mathematics.md |
Vote-math for the period's contested files — 361-seat threshold analysis. | synthesis-methodology.md §coalition + 720-seat math | coalition-mathematics.md | 280 | graph LR (group arithmetic) |
extended/forward-indicators.md |
Early-warning signposts with WEP bands and monitoring cadence. | osint-tradecraft-standards.md §Indicators & Signposts SAT | forward-indicators.md | 250 | flowchart LR (signpost → alert → action) |
extended/intelligence-assessment.md |
ICD 203 compliant IC-style assessment (BLUF + key judgments + confidence). | osint-tradecraft-standards.md §ICD 203 Mapping | intelligence-assessment.md | 270 | flowchart LR (evidence → judgment → confidence) |
extended/implementation-feasibility.md |
27-MS implementation feasibility of proposed legislation (legal / admin / fiscal). | strategic-extensions-methodology.md §feasibility | implementation-feasibility.md | 290 | heatmap (MS × dimension) |
extended/media-framing-analysis.md |
Mandatory for every article-generating workflow. Media framing & influence-operations analysis — Entman functions, DISARM TTPs, CIB signals, narrative-laundering chains, counter-resilience, frame lifecycle, RRPA composite across EU-27 + global audience. Built during Pass 2 (or late Pass 1) once synthesis/stakeholder/scenario/coalition artifacts are stable. | analytical-supplementary-methodology.md §AS4 + electoral-domain-methodology.md §Part 4 | media-framing-analysis.md | 180–320 (per-horizon — see reference-quality-thresholds.json) |
graph LR (outlet × frame) + xychart-beta (lifecycle) |
extended/comparative-international.md |
Cross-jurisdictional comparison (EP vs US / UK / G7 / Council of Europe). | strategic-extensions-methodology.md §comparative-international | comparative-international.md | 270 | heatmap (jurisdiction × mechanism) |
extended/cross-reference-map.md |
Inter-artifact citation map for this run (who cites whom, evidence provenance). | structural-metadata-methodology.md §cross-reference-map | cross-reference-map.md | 260 | graph LR (citation network) |
extended/data-download-manifest.md |
Stage-A inventory of every EP MCP call made + raw artifact paths + Admiralty grades. | structural-metadata-methodology.md §data-download-manifest | data-download-manifest.md | 250 | flowchart LR (MCP call → artifact) |
extended/voter-segmentation.md |
EU electorate segmentation across 27 MS (Europhile / Euroskeptic / regional blocs). | electoral-domain-methodology.md §voter-segmentation | voter-segmentation.md | 300 | quadrantChart (engagement × trust) |
When to produce these: Long-form review workflows (month-in-review, quarter-in-review, propositions), crisis / breaking-news depth runs, and any run where a decision-maker briefing (executive-brief) adds value. Short-form runs (breaking, weekly-digest) typically skip this folder.
Machine-readable index of everything above. Generated by the workflow before PR creation. Every AI agent must append its artifact paths to manifest.files.{group}[] (intelligence, classification, risk_scoring, threat_assessment, documents, existing). The article-generation footer (renderAnalysisTransparencySection) reads this manifest to produce the Analysis Sources section in every published article. See ai-driven-analysis-guide.md §Step 10 for the exact schema.
An agent starting a run reads this catalog, then proceeds through the 10-step protocol in ai-driven-analysis-guide.md. The canonical reading order is:
- This catalog → know what to produce.
ai-driven-analysis-guide.md→ know how to produce it.per-artifact-methodologies.md→ look up per-artifact construction rules as needed.- The five framework methodologies (SWOT, Risk, Threat, Classification, Style) → apply the relevant framework when the protocol step calls for it.
- The 51 templates under
../templates/— one per unique artifact, plus the six framework templates (political-classification, risk-assessment, swot-analysis, threat-analysis, stakeholder-impact, per-file-political-intelligence) → copy the shape into the artifact file and fill it with analysis.
flowchart TD
start["Start: agent picks article type"] --> q1{"Article type?"}
q1 -->|breaking| brk["Mandatory base + classification + intel triad<br/>= 11 mandatory artifacts"]
q1 -->|week/month-in-review| rev["Mandatory base + classification + intel<br/>+ velocity-risk + cross-run-diff = 13"]
q1 -->|week/month-ahead| ahd["Base + scenario-forecast<br/>+ wildcards-blackswans = 11"]
q1 -->|committee-reports| cmt["Base + per-file × N committees<br/>+ stakeholder-impact = 12+"]
q1 -->|motions / propositions| mot["Base + significance-scoring<br/>+ stakeholder-impact = 12"]
brk --> q2{"Significance ≥ Tier-1?"}
rev --> q2
ahd --> q2
cmt --> q2
mot --> q2
q2 -->|yes| ext["Add extended/ artifacts:<br/>executive-brief, intelligence-assessment,<br/>devils-advocate, forward-indicators"]
q2 -->|no| baseOnly["Base set only — Stage-C accepts"]
ext --> q3{"Cross-source delta ≥ 0.2 pp?"}
q3 -->|yes| tri["Add imf-vintage-audit + cross-source line"]
q3 -->|no| done["Run completes Stage-C"]
baseOnly --> done
tri --> done
classDef must fill:#1565C0,stroke:#0D47A1,color:#fff;
classDef opt fill:#FF9800,stroke:#E65100,color:#fff;
classDef ok fill:#2E7D32,stroke:#1B5E20,color:#fff;
class brk,rev,ahd,cmt,mot,baseOnly must
class ext,tri opt
class done ok
Reading the tree: every article type starts with the base set of 8
mandatory artifacts (the four framework artifacts plus
methodology-reflection.md, analysis-index.md, data-download-manifest.md,
workflow-audit.md). Article-type-specific additions stack on top. Tier-1
significance triggers the extended/ folder. Cross-source disagreement
triggers vintage audit.
The line floors in
reference-quality-thresholds.json
are not arbitrary — each is derived from the minimum content needed to
satisfy the artifact's purpose:
| Artifact class | Floor | Why this number |
|---|---|---|
| Framework analytics (SWOT, risk, threat, classification) | 100-150 | 4-quadrant or 5×5 structure + 3+ items per cell + prose justification |
| Intelligence assessments | 200-280 | ICD 203 requires named SAT + alt hypothesis + confidence + sourcing |
| Per-file political intelligence | 300+ | 7-dimension scoring × N classified files × stakeholder impact |
| Executive brief | 175 | BLUF + 5 Key Judgments × ~25 words each + What-Comes-Next |
| Stakeholder impact | 350 | 7+ stakeholder lenses × evidence + confidence + scenarios |
| Synthesis summary | 480 | Cross-cuts every other artifact's findings into one narrative |
| Index / audit / manifest | 130-220 | Structured tables with fixed rows; deeper text adds noise |
When a draft falls below the floor, it almost always means the agent skipped Pass-2 expansion. Pass-1 typically reaches ~50% of floor.
| Confusion | Wrong artifact | Correct artifact |
|---|---|---|
| "Coalition cohesion %" | coalition-mathematics.md |
coalition-dynamics.md (cohesion) vs coalition-mathematics.md (vote arithmetic) |
| "List of bills moving this week" | analysis-index.md |
legislative-velocity-risk.md (with risk scoring) |
| "Why this matters" prose | executive-brief.md |
synthesis-summary.md for the long-form; executive-brief.md is BLUF only |
| Risk vs threat | risk-matrix.md |
Risk = our exposure to event. Threat = adversary intent × capability. Use risk-matrix.md for risk, threat-analysis.md for threat |
| MEP-level network claims | actor-mapping.md (description) |
actor-threat-profiles.md (threat-relevant) — actor-mapping is descriptive; actor-threat-profiles is evaluative |
| "Trend vs prior session" | Prose in synthesis | cross-run-diff.md (delta-only) and cross-session-intelligence.md (momentum) |
| "What if X happens" | Article body | scenario-forecast.md (≥3 scenarios with WEP bands) |
| "Tail risks / black swans" | wildcards-blackswans.md |
wildcards-blackswans.md is for ≤5% probability, ≥7/10 impact only |
| "Compare to non-EU peer" | historical-baseline.md |
comparative-international.md (cross-jurisdiction comparator) |
| Procedural-velocity figure | legislative-disruption.md |
legislative-velocity-risk.md for velocity; disruption is for unscheduled stoppages |
These bundles compile into the fixed manifest.files list each workflow
emits, independent of run-time content.
Mandatory (11): synthesis, executive-brief (extended only when Tier-1), political-classification, risk-assessment, swot-analysis, threat-analysis, stakeholder-impact, methodology-reflection, analysis-index, data-download-manifest, workflow-audit, per-file-political-intelligence (focused on the breaking item).
Conditional: intelligence-assessment.md if significance ≥ Tier-1;
forward-indicators.md always for follow-up signposts.
**Mandatory base + ** cross-run-diff.md, cross-session-intelligence.md,
legislative-velocity-risk.md, coalition-dynamics.md, voting-patterns.md.
Mandatory base + scenario-forecast.md, wildcards-blackswans.md,
forward-indicators.md, legislative-velocity-risk.md.
Mandatory base + one per-file-political-intelligence.md per committee
covered, stakeholder-impact.md (multi-committee panel),
coalition-mathematics.md (committee-margin arithmetic).
Mandatory base + significance-scoring.md (procedure-level),
stakeholder-impact.md, consequence-trees.md, political-capital-risk.md,
implementation-feasibility.md.
The artifact folder structure is enforced by the aggregator
(src/aggregator/analysis-aggregator.ts::collectRunArtifacts); deviating
breaks the rendered article's section ordering:
analysis/daily/<YYYY-MM-DD>/<article-type>/run<NN>/
├── intelligence/ → executive-brief, intelligence-assessment, devils-advocate, forward-indicators
├── classification/ → political-classification, significance-scoring, significance-classification
├── risk-scoring/ → risk-assessment, risk-matrix, swot-analysis, quantitative-swot, political-capital-risk, legislative-velocity-risk
├── threat-assessment/ → threat-analysis, threat-model, political-threat-landscape, actor-threat-profiles
├── stakeholders/ → stakeholder-impact, stakeholder-map, actor-mapping, voter-segmentation
├── coalition/ → coalition-dynamics, coalition-mathematics, voting-patterns
├── synthesis/ → synthesis-summary, methodology-reflection
├── extended/ → optional Tier-1+ deep-intelligence artifacts
├── index/ → analysis-index, cross-reference-map
├── data/ → raw MCP responses (excluded from rendered article)
└── audit/ → workflow-audit, mcp-reliability-audit, imf-vintage-audit, data-download-manifest
Mermaid is mandatory in intelligence/, classification/,
risk-scoring/, and threat-assessment/ per the Stage-C validator.
ai-driven-analysis-guide.md— 10-step analysis protocol (authoritative)per-artifact-methodologies.md— one section per artifact type with construction rulesreference-quality-thresholds.json— machine-enforced per-artifact depth floorsREADME.md— methodologies index../templates/README.md— templates index../README.md— analysis directory overview
Document Control:
- Path:
/analysis/methodologies/artifact-catalog.md - Classification: Public
- Version: 1.5 — v1.5 (2026-05-14) adds two new catalog sections: "Stage-A Triage Artifacts" (
data-availability-assessment.mdmandatory for every run,intelligence/procedures-proxy.mdtriggered by STALENESS_WARNING) and "Degraded-Mode Template Variants" (intelligence/voting-patterns.degraded.mdfordegraded-voting,intelligence/economic-context.fallback.mdfordegraded-imf);reference-quality-thresholds.jsonv1.6.0 addsdegradedFloorFactorssection and per-article-type floors for all four new templates. v1.4 (2026-05-02) adds rows for the 8 long-horizon and electoral artifacts (forward-projection.md,legislative-pipeline-forecast.md,parliamentary-calendar-projection.md,term-arc.md,seat-projection.md,mandate-fulfilment-scorecard.md,presidency-trio-context.md,commission-wp-alignment.md) introduced by the Look-Ahead epic;intelligence/group count bumped from 19 → 27. v1.3 (2026-04-25) reconciled per-group counts with disk:threat-assessment/row added forthreat-analysis.md(now 5/5),extended/heading clarified to "12 Artifacts + 1 Legacy Mirror", and the read-order line bumped from "39 templates" to "51 templates". v1.1 addedextended/folder (12 optional deep-intelligence artifacts) from riksdagsmonitor port (2026-04-23); v1.0 was initial extraction from Run 184 benchmark and 2026-04-20 / 2026-04-21 daily runs. - Next Review: 2026-07-31