artifact-catalog.md

May 16, 2026 · View on GitHub

Hack23 Logo

🗂️ Analysis Artifact Catalog

📊 Master Map of Every Analysis Markdown File Produced by EU Parliament Monitor Workflows
🎯 One Row per Artifact · Methodology + Template + Depth Floor + Mermaid Type

Owner Version Effective Date Classification

📋 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


🎯 Purpose

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.


🗺️ Artifact Groups

%%{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):

ColorHexSemantic Meaning
🔵 Blue#1565C0Input / scope / primary pipeline
🟣 Purple#7B1FA2Intelligence synthesis (highest cognitive layer)
🟢 Green#2E7D32Classification / safe state / approved
🟠 Orange#FF9800Risk / caution / elevated attention
🔴 Red#D32F2FThreat / critical / rejected
🟡 Yellow#FFC107Metadata / notes / pending
🔷 Light-Blue#0288D1Documents / reference / read-only

📐 Catalog Schema

Every row in the catalog below answers these six questions about one artifact:

ColumnMeaning
ArtifactRelative path under the run root ({folder}/{file}.md)
Purpose (1 line)The single sentence of analytical value the file delivers
MethodologyThe methodology document the AI reads to produce this artifact
TemplateThe template the file's shape is derived from
Min lines (breaking)Depth floor for breaking article type (from reference-quality-thresholds.json)
Mermaid typeMandatory diagram shape (using the 7-color Hack23 palette above)

📊 Stage-A Triage Artifacts (1 mandatory + 1 companion — produced before any Stage-B analysis)

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.

ArtifactPurpose (1 line)MethodologyTemplateMin linesMermaid type
data-availability-assessment.mdStage 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-assessmentdata-availability-assessment.md80flowchart LR (source availability status)
intelligence/procedures-proxy.mdStage 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-proxyintelligence/procedures-proxy.md60flowchart LR (mitigation chain)

🟡 Degraded-Mode Template Variants (2 variants — activated by manifest.dataMode)

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.

ArtifactPurpose (1 line)MethodologyTemplateMin lines (breaking, degraded)Mermaid type
intelligence/voting-patterns.degraded.mdActivated 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-patternsintelligence/voting-patterns.degraded.md128graph LR (seat-share proxy network)
intelligence/economic-context.fallback.mdActivated 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-contextintelligence/economic-context.fallback.md157xyChart + flowchart

🧠 intelligence/ — 27 Artifacts

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.

ArtifactPurpose (1 line)MethodologyTemplateMin lines (breaking)Mermaid type
intelligence/analysis-index.mdRead-me-first index naming every artifact in this run and the recommended reading order.per-artifact-methodologies.md §analysis-indexanalysis-index.md160flowchart LR
intelligence/synthesis-summary.mdThe run's intelligence executive summary — top findings, confidence, forward monitors.per-artifact-methodologies.md §synthesis-summarysynthesis-summary.md205mindmap + flowchart
intelligence/stakeholder-map.mdPower × Alignment map of ≥12 named stakeholders on the period's dominant issue.per-artifact-methodologies.md §stakeholder-mapstakeholder-map.md305quadrantChart
intelligence/scenario-forecast.md≥3 probability-weighted scenarios with early-warning indicators and trigger events.per-artifact-methodologies.md §scenario-forecastscenario-forecast.md280flowchart TD (branching)
intelligence/pestle-analysis.mdPolitical / Economic / Social / Technological / Legal / Environmental scan of the period.per-artifact-methodologies.md §pestle-analysispestle-analysis.md250mindmap (6 branches)
intelligence/threat-model.mdMulti-framework (Diamond + Attack Trees + Kill Chain) view of the period's top threats.per-artifact-methodologies.md §threat-model + political-threat-framework.mdthreat-model.md250graph TD (attack tree)
intelligence/coalition-dynamics.mdGroup cohesion + cross-party alliance pairs on the period's named votes/positions.per-artifact-methodologies.md §coalition-dynamicscoalition-dynamics.md135graph LR (group pairs)
intelligence/cross-run-diff.mdBayesian delta vs. the previous run for this article type (what changed, what upgraded).per-artifact-methodologies.md §cross-run-diffcross-run-diff.md100flowchart LR (prior → evidence → posterior)
intelligence/economic-context.mdIMF (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.md185xyChart + flowchart
intelligence/historical-baseline.mdEvery current score / metric anchored to the 30-day and 90-day comparable baseline.per-artifact-methodologies.md §historical-baselinehistorical-baseline.md190timeline / xyChart
intelligence/mcp-reliability-audit.mdEP MCP endpoint-by-endpoint reliability record + upstream issues filed.per-artifact-methodologies.md §mcp-reliability-auditmcp-reliability-audit.md385flowchart LR (endpoint status)
intelligence/significance-scoring.md5-dimension composite score per candidate item, with publish decision.per-artifact-methodologies.md §significance-scoringsignificance-scoring.md105pie + bar
intelligence/political-threat-landscape.mdThreat Landscape view of the period — 6 purpose-built dimensions for EP democracy.per-artifact-methodologies.md §political-threat-landscapepolitical-threat-landscape.md90graph TD (landscape)
intelligence/wildcards-blackswans.mdLow-probability / high-impact reserve watchlist with trigger conditions.per-artifact-methodologies.md §wildcards-blackswanswildcards-blackswans.md275quadrantChart (prob × impact)
intelligence/reference-analysis-quality.mdSelf-score of this run against the reference benchmark + gaps + Pass-2 plan.per-artifact-methodologies.md §reference-analysis-qualityreference-analysis-quality.md190flowchart (pass1 → pass2)
intelligence/voting-patterns.mdGroup-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-patternsvoting-patterns.md150graph LR (group agreement network)
intelligence/workflow-audit.mdEnd-of-run self-audit — phases completed, MCP tools called, Core Principles compliance, time budget, issues and next-run recommendations.per-artifact-methodologies.md §workflow-auditworkflow-audit.md100flowchart LR (6-phase execution)
intelligence/methodology-reflection.mdAnalytic-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-reflectionmethodology-reflection.md220 (breaking) / 180 (other)graph TD (pipeline)
intelligence/cross-session-intelligence.mdSession-over-session narrative across plenary sessions within a period — crystallisation moment, momentum indicators, cross-session themes.per-artifact-methodologies.md §cross-session-intelligencecross-session-intelligence.mdSee reference-quality-thresholds.json (per article type; not required for breaking)timeline + flowchart
intelligence/forward-projection.mdMaster 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.mdforward-projection.md80 (week-ahead) / 120 (month-ahead) / 280 (quarter-ahead) / 340 (year-ahead) / 360 (term-outlook) / 400 (election-cycle)timeline with branches
intelligence/legislative-pipeline-forecast.mdPer-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 §5legislative-pipeline-forecast.md200 (quarter-in-review) / 220 (quarter-ahead) / 240 (year-in-review) / 260 (year-ahead)gantt + flowchart LR (procedure transit)
intelligence/parliamentary-calendar-projection.mdPlenary/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 §6parliamentary-calendar-projection.md200 (quarter-ahead) / 240 (year-ahead)gantt (calendar walk-forward)
intelligence/term-arc.mdEP-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.mdterm-arc.md280 (year-in-review) / 320 (term-outlook) / 360 (election-cycle)timeline + xyChart (term arc)
intelligence/seat-projection.mdPer-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 §3seat-projection.md280 (election-cycle) / optional ≥ year-aheadxyChart (stacked-bar projection)
intelligence/mandate-fulfilment-scorecard.mdRetrospective 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 Amandate-fulfilment-scorecard.md280 (election-cycle) / 320 (year-in-review, term-outlook)heatmap (group × pledge)
intelligence/presidency-trio-context.mdCouncil Trio Presidency overlay — legislative priorities, completed/pending files, handover timeline. Mandatory for every horizon ≥ quarter.forward-projection-methodology.md §7presidency-trio-context.md180 (quarter-) / 220 (year-, electoral)timeline (trio handovers)
intelligence/commission-wp-alignment.mdMap 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 §8commission-wp-alignment.md180 (quarter-) / 220 (year-, electoral)flowchart LR (CWP line item → EP rapporteur → stage)

🏷️ classification/ — 4 Artifacts

The fact layer. What kind of events are in this run, who acted, what forces are in play, what does each event impact?

ArtifactPurpose (1 line)MethodologyTemplateMin lines (breaking)Mermaid type
classification/significance-classification.md5-dimension significance rubric per event + publish / withhold decision.per-artifact-methodologies.md §significance-classification + political-classification-guide.mdsignificance-classification.md105pie (dimension weights)
classification/actor-mapping.mdNamed actors (MEPs, groups, committees, Commission, Council) with influence weights.per-artifact-methodologies.md §actor-mappingactor-mapping.mdflat 30graph LR (actor network)
classification/forces-analysis.mdDriving forces vs. restraining forces on the period's dominant issue (Lewin).per-artifact-methodologies.md §forces-analysisforces-analysis.mdflat 30flowchart LR (force field)
classification/impact-matrix.mdEvent × stakeholder × dimension matrix showing who is affected and how.per-artifact-methodologies.md §impact-matriximpact-matrix.mdflat 30heatmap (via table)

⚠️ risk-scoring/ — 4 Artifacts

The quantification layer. Every qualitative finding in intelligence/ must be anchored here in numbers.

ArtifactPurpose (1 line)MethodologyTemplateMin lines (breaking)Mermaid type
risk-scoring/risk-matrix.md5×5 Likelihood × Impact with ≥5 named risks positioned + monitoring triggers.per-artifact-methodologies.md §risk-matrix + political-risk-methodology.mdrisk-matrix.md150quadrantChart (5×5)
risk-scoring/quantitative-swot.md3+3+3+3 SWOT with numeric scores + TOWS cross-quadrant strategies.per-artifact-methodologies.md §quantitative-swot + political-swot-framework.mdquantitative-swot.md140quadrantChart (SWOT)
risk-scoring/political-capital-risk.mdRapporteur / chair / group-leader capital at stake per named position.per-artifact-methodologies.md §political-capital-riskpolitical-capital-risk.mdflat 30graph LR (capital flow)
risk-scoring/legislative-velocity-risk.mdPipeline throughput, stalled procedures, deadline exposure vs. term end.per-artifact-methodologies.md §legislative-velocity-risklegislative-velocity-risk.mdflat 30gantt or flowchart LR (procedure timeline / bottleneck map)

🎭 threat-assessment/ — 5 Artifacts

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.

ArtifactPurpose (1 line)MethodologyTemplateMin lines (breaking)Mermaid type
threat-assessment/political-threat-landscape.mdThreat 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 §Landscapepolitical-threat-landscape.mdflat 30graph TD
threat-assessment/actor-threat-profiles.mdPer-actor threat profile: intent, capability, opportunity, attack surface.per-artifact-methodologies.md §actor-threat-profiles + political-threat-framework.md §Diamondactor-threat-profiles.mdflat 30graph LR (actor × asset)
threat-assessment/consequence-trees.mdConsequence tree per threat: action → first-order → second-order → democratic outcome.per-artifact-methodologies.md §consequence-treesconsequence-trees.mdflat 30graph TD (tree)
threat-assessment/legislative-disruption.mdHow adversarial pressure could stall, redirect, or capture specific procedures.per-artifact-methodologies.md §legislative-disruptionlegislative-disruption.mdflat 30flowchart LR (procedure + disruptor)
threat-assessment/threat-analysis.mdTabular 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.mdthreat-analysis.mdflat 30graph TD (vector × mitigation)

📄 documents/ — 1 Artifact

ArtifactPurpose (1 line)MethodologyTemplateMin lines (breaking)Mermaid type
documents/document-analysis-index.mdOne row per downloaded EP document with its per-file analysis path + status.per-artifact-methodologies.md §document-analysis-indexper-file-political-intelligence.md95flowchart LR (feed → analysis)

📜 existing/ — Legacy Long-Form Layout (2 Artifacts + Mirrors)

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.

ArtifactPurpose (1 line)MethodologyTemplateMin lines (motions)Mermaid type
existing/deep-analysis.mdLong-form (4 000–10 000 word) Economist-style political intelligence prose — the 30-minute read.per-artifact-methodologies.md §deep-analysisdeep-analysis.md400≥3 diagrams (structural thesis + coalition + forward trajectory)
existing/session-baseline.mdStructured calendar + adopted-texts roster for every plenary session in scope.per-artifact-methodologies.md §session-baselinesession-baseline.md200gantt (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.

Folder Variants

Canonical folderHistorical variantTreatment
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/ — Deep-Intelligence Artifacts (1 mandatory + 11 optional + 1 legacy mirror)

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[].

ArtifactPurpose (1 line)MethodologyTemplateMin 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-briefexecutive-brief.md180flowchart LR (BLUF → judgments → actions)
`executive-brief_.md$ ( \times 13)\text{Per}-\text{language} \text{translation} \text{siblings} \text{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.mdworkflow (3×/day cron). Validator:scripts/validate-brief-translations.js` (7 gates).executive-brief-translation-guide.mdexecutive-brief-translation-template.md≥ 50 % of source bytes(none — mirrors source)
extended/executive-brief.mdBackwards-compatible legacy location for the same brief; use only when an older run already wrote it there.synthesis-methodology.md §executive-briefexecutive-brief.md180flowchart LR (BLUF → judgments → actions)
extended/devils-advocate-analysis.mdAdversarial challenge to the run's consensus view (ACH + Red Team).osint-tradecraft-standards.md §Red Team + ACHdevils-advocate-analysis.md240graph TD (hypothesis × evidence)
extended/historical-parallels.md≥3 EU historical precedents with parallel mechanisms + divergence points.strategic-extensions-methodology.md §historical-parallelshistorical-parallels.md230timeline
extended/coalition-mathematics.mdVote-math for the period's contested files — 361-seat threshold analysis.synthesis-methodology.md §coalition + 720-seat mathcoalition-mathematics.md280graph LR (group arithmetic)
extended/forward-indicators.mdEarly-warning signposts with WEP bands and monitoring cadence.osint-tradecraft-standards.md §Indicators & Signposts SATforward-indicators.md250flowchart LR (signpost → alert → action)
extended/intelligence-assessment.mdICD 203 compliant IC-style assessment (BLUF + key judgments + confidence).osint-tradecraft-standards.md §ICD 203 Mappingintelligence-assessment.md270flowchart LR (evidence → judgment → confidence)
extended/implementation-feasibility.md27-MS implementation feasibility of proposed legislation (legal / admin / fiscal).strategic-extensions-methodology.md §feasibilityimplementation-feasibility.md290heatmap (MS × dimension)
extended/media-framing-analysis.mdMandatory 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 4media-framing-analysis.md180–320 (per-horizon — see reference-quality-thresholds.json)graph LR (outlet × frame) + xychart-beta (lifecycle)
extended/comparative-international.mdCross-jurisdictional comparison (EP vs US / UK / G7 / Council of Europe).strategic-extensions-methodology.md §comparative-internationalcomparative-international.md270heatmap (jurisdiction × mechanism)
extended/cross-reference-map.mdInter-artifact citation map for this run (who cites whom, evidence provenance).structural-metadata-methodology.md §cross-reference-mapcross-reference-map.md260graph LR (citation network)
extended/data-download-manifest.mdStage-A inventory of every EP MCP call made + raw artifact paths + Admiralty grades.structural-metadata-methodology.md §data-download-manifestdata-download-manifest.md250flowchart LR (MCP call → artifact)
extended/voter-segmentation.mdEU electorate segmentation across 27 MS (Europhile / Euroskeptic / regional blocs).electoral-domain-methodology.md §voter-segmentationvoter-segmentation.md300quadrantChart (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.


📒 manifest.json

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.


✅ Read Order for Agents (Standard)

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:

  1. This catalog → know what to produce.
  2. ai-driven-analysis-guide.md → know how to produce it.
  3. per-artifact-methodologies.md → look up per-artifact construction rules as needed.
  4. The five framework methodologies (SWOT, Risk, Threat, Classification, Style) → apply the relevant framework when the protocol step calls for it.
  5. 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.

🌳 Decision Tree — Is this artifact mandatory for my run?

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.

📏 Depth-floor rationale

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 classFloorWhy this number
Framework analytics (SWOT, risk, threat, classification)100-1504-quadrant or 5×5 structure + 3+ items per cell + prose justification
Intelligence assessments200-280ICD 203 requires named SAT + alt hypothesis + confidence + sourcing
Per-file political intelligence300+7-dimension scoring × N classified files × stakeholder impact
Executive brief175BLUF + 5 Key Judgments × ~25 words each + What-Comes-Next
Stakeholder impact3507+ stakeholder lenses × evidence + confidence + scenarios
Synthesis summary480Cross-cuts every other artifact's findings into one narrative
Index / audit / manifest130-220Structured 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.

🎯 Common confusions — which artifact gets what?

ConfusionWrong artifactCorrect artifact
"Coalition cohesion %"coalition-mathematics.mdcoalition-dynamics.md (cohesion) vs coalition-mathematics.md (vote arithmetic)
"List of bills moving this week"analysis-index.mdlegislative-velocity-risk.md (with risk scoring)
"Why this matters" proseexecutive-brief.mdsynthesis-summary.md for the long-form; executive-brief.md is BLUF only
Risk vs threatrisk-matrix.mdRisk = our exposure to event. Threat = adversary intent × capability. Use risk-matrix.md for risk, threat-analysis.md for threat
MEP-level network claimsactor-mapping.md (description)actor-threat-profiles.md (threat-relevant) — actor-mapping is descriptive; actor-threat-profiles is evaluative
"Trend vs prior session"Prose in synthesiscross-run-diff.md (delta-only) and cross-session-intelligence.md (momentum)
"What if X happens"Article bodyscenario-forecast.md (≥3 scenarios with WEP bands)
"Tail risks / black swans"wildcards-blackswans.mdwildcards-blackswans.md is for ≤5% probability, ≥7/10 impact only
"Compare to non-EU peer"historical-baseline.mdcomparative-international.md (cross-jurisdiction comparator)
Procedural-velocity figurelegislative-disruption.mdlegislative-velocity-risk.md for velocity; disruption is for unscheduled stoppages

🧭 Article-type → artifact bundle (canonical bundles)

These bundles compile into the fixed manifest.files list each workflow emits, independent of run-time content.

breaking (urgent single-event coverage)

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.

week-in-review / month-in-review

**Mandatory base + ** cross-run-diff.md, cross-session-intelligence.md, legislative-velocity-risk.md, coalition-dynamics.md, voting-patterns.md.

week-ahead / month-ahead

Mandatory base + scenario-forecast.md, wildcards-blackswans.md, forward-indicators.md, legislative-velocity-risk.md.

committee-reports

Mandatory base + one per-file-political-intelligence.md per committee covered, stakeholder-impact.md (multi-committee panel), coalition-mathematics.md (committee-margin arithmetic).

motions / propositions

Mandatory base + significance-scoring.md (procedure-level), stakeholder-impact.md, consequence-trees.md, political-capital-risk.md, implementation-feasibility.md.

🔀 Folder layout invariants

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.


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.md mandatory for every run, intelligence/procedures-proxy.md triggered by STALENESS_WARNING) and "Degraded-Mode Template Variants" (intelligence/voting-patterns.degraded.md for degraded-voting, intelligence/economic-context.fallback.md for degraded-imf); reference-quality-thresholds.json v1.6.0 adds degradedFloorFactors section 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 for threat-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 added extended/ 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