๐ Conceptual Relationships and System Components
๐ฏ Holistic View of Platform Architecture and Capabilities
๐ Document Owner: CEO | ๐ Version: 1.6 | ๐
Last Updated:
2026-05-06 (UTC) | ๐ท๏ธ Platform Release: v0.8.54
๐ Review Cycle: Quarterly | โฐ Next Review: 2026-08-03
๐ท๏ธ Classification: Public (Open Source European Parliament Monitoring
Platform)
| Document | Focus | Description | Documentation Link |
|---|---|---|---|
| Architecture | ๐๏ธ Architecture | C4 model showing current system structure | View Source |
| Future Architecture | ๐๏ธ Architecture | C4 model showing future system structure | View Source |
| Mindmaps | ๐ง Concept | Current system component relationships | View Source |
| Future Mindmaps | ๐ง Concept | Future capability evolution | View Source |
| SWOT Analysis | ๐ผ Business | Current strategic assessment | View Source |
| Future SWOT Analysis | ๐ผ Business | Future strategic opportunities | View Source |
| Data Model | ๐ Data | Current data structures and relationships | View Source |
| Future Data Model | ๐ Data | Enhanced European Parliament data architecture | View Source |
| Flowcharts | ๐ Process | Current data processing workflows | View Source |
| Future Flowcharts | ๐ Process | Enhanced AI-driven workflows | View Source |
| State Diagrams | ๐ Behavior | Current system state transitions | View Source |
| Future State Diagrams | ๐ Behavior | Enhanced adaptive state transitions | View Source |
| Security Architecture | ๐ก๏ธ Security | Current security implementation | View Source |
| Future Security Architecture | ๐ก๏ธ Security | Security enhancement roadmap | View Source |
| Threat Model | ๐ฏ Security | STRIDE threat analysis | View Source |
| Classification | ๐ท๏ธ Governance | CIA classification & BCP | View Source |
| CRA Assessment | ๐ก๏ธ Compliance | Cyber Resilience Act | View Source |
| Workflows | โ๏ธ DevOps | CI/CD documentation | View Source |
| Future Workflows | ๐ DevOps | Planned CI/CD enhancements | View Source |
| Business Continuity Plan | ๐ Resilience | Recovery planning | View Source |
| Financial Security Plan | ๐ฐ Financial | Cost & security analysis | View Source |
| End-of-Life Strategy | ๐ฆ Lifecycle | Technology EOL planning | View Source |
| Unit Test Plan | ๐งช Testing | Unit testing strategy | View Source |
| E2E Test Plan | ๐ Testing | End-to-end testing | View Source |
| Performance Testing | โก Performance | Performance benchmarks | View Source |
| Security Policy | ๐ Security | Vulnerability reporting & security policy | View Source |
This conceptual documentation implements controls aligned with Hack23 AB's publicly available ISMS framework.
| Policy | Relevance |
|---|---|
| Secure Development Policy | Architecture documentation requirements per C4 model |
| Information Security Policy | System design aligned with security governance framework |
| Classification Framework | Data and component classification per CIA triad |
| Open Source Policy | Open-source architecture transparency |
This document provides conceptual mindmaps that illustrate the relationships between components, capabilities, and concepts within the EU Parliament Monitor ecosystem. Unlike C4 diagrams (structure) or flowcharts (process), mindmaps show conceptual connections and knowledge domains.
Mindmaps serve to:
This document contains five primary mindmaps:
Complete view of the EU Parliament Monitor system, its purpose, and major capabilities.
mindmap
root((EU Parliament<br/>Monitor v0.8.54))
Mission
Democratic Transparency
Public Information
Open Data Access
Political Accountability
Multi-Language Support
14 Languages
EN, SV, DA, NO
FI, DE, FR, ES
NL, AR, HE, JA
KO, ZH
Native Speakers
Cultural Adaptation
AI-First Intelligence
2-Pass Quality Gate
Agentic Workflows (gh-aw v0.71.3)
AI Writes All Analysis
Validator Gate Pre-Publish
Core Capabilities
14 Article Types
Breaking News
Week Ahead
Month Ahead
Quarter Ahead
Year Ahead
Term Outlook
Election Cycle
Week in Review
Month in Review
Quarter in Review
Year in Review
Committee Reports
Motions
Propositions
Aggregator Pipeline (no per-type strategies)
article-generator
analysis-aggregator
article-metadata
artifact-order
forward-statements-registry
5-Stage Pipeline
fetch-stage
transform-stage
analysis-stage
generate-stage
output-stage
Static Site Delivery
AWS S3 + CloudFront (primary)
GitHub Pages (fallback)
Global CDN
1,894 HTML articles
Key Stakeholders
European Citizens
Information Seekers
Politically Engaged
Language Preference
Journalists
Research Source
Story Development
Fact Checking
Policy Analysts / Researchers
Academic Studies
Policy Analysis
Trend Analysis
MEPs
Cross-Party Visibility
Committee Activity Index
Developers
Open-Source Contributors
Platform Maintainers
Security Auditors
Technical Foundation
Static Architecture
No Runtime Dependencies
Build-Time Generation
Immutable Artifacts
Zero Database
GitHub Infrastructure
Actions for CI/CD
gh-aw Agentic Runtime
Pages (fallback)
Security Scanning
Dependabot Updates
Dual-Economic Data
EP MCP 1.2.13
World Bank MCP 1.0.1 (optional)
IMF REST SDMX 3.0
AI Engines (Switchable)
GitHub Copilot
Claude
Codex
| Concept | Sub-Concepts | Description |
|---|---|---|
| Mission | Democratic Transparency, Multi-Language, Automated Intelligence | Core purpose and values |
| Core Capabilities | News Generation, Content Types, Publishing, Delivery | What the system does |
| Key Stakeholders | Citizens, Journalists, Researchers, Developers | Who uses the system |
| Technical Foundation | Static Architecture, GitHub, MCP, LLM | How it's built |
Data sources, transformations, and outputs in the EU Parliament Monitor pipeline.
mindmap
root((Data<br/>Ecosystem))
Data Sources
European Parliament MCP 1.2.13
Plenary Sessions
Session Schedule
Agenda Items
Voting Records
Attendance Data
Committee Meetings
Committee Info
Meeting Schedule
Topics Discussed
Decisions Made
Documents
Proposals
Reports
Amendments
Resolutions
Parliamentary Questions
Written Questions
Oral Questions
Answers
Follow-ups
Sliding-Window Feeds
Accept timeframe/startDate
Fixed-Window Feeds (7)
documents
plenary_documents
committee_documents
plenary_session_documents
parliamentary_questions
corporate_bodies
controlled_vocabularies
Unavailable Envelope
status: unavailable
items: []
World Bank MCP 1.0.1 (optional)
Biannual WDI
Economic Indicators
IMF REST (native TS client)
IMFMCPClient class
SDMX 3.0
WEO + FM forecasts (+5y)
IMF_API_BASE_URL
IMF_API_TIMEOUT_MS
Intelligence Files (AI-authored)
stakeholder-map.md
impact-matrix.md
mcp-reliability-audit.md
reference-analysis-quality.md
Fallback Data
Last-known envelope cache
Historical articles (1894)
Data Transformations
fetch-stage
Concurrent MCP calls
Unavailable-envelope handling
mcp-retry.ts backoff
transform-stage
Normalize EP + WB + IMF
Schema unification
analysis-stage
2-Pass AI-First
โฅ80 words / SWOT item
โฅ150 words / stakeholder perspective
โฅ60% prose ratio
0 AI_ANALYSIS_REQUIRED
generate-stage
Strategy-specific builder
Chart.js embedding (โฅ1)
buildDefaultStakeholderPerspectives
AI_MARKER sentinels
output-stage
Rendered HTML writes
Language-indexed folders
Validator Gate
validate-analysis-completeness.js
scanHtmlForFallbackLeaks
FALLBACK_TEMPLATE_PATTERNS
Reference thresholds (โฅ200/385, โฅ140/190)
Data Storage
File System
news/ (1894 HTML articles)
14 language subtrees
JSON-LD metadata
Static Assets
Index Files per language
Git Repository
Version Control
Change History
Commit Metadata
Branch Management
Build Artifacts
Compiled HTML
Sitemap XML
Language Indexes
Asset Manifests (js/vendor/)
Data Outputs
HTML Articles
Multi-Language (14)
Semantic Markup
WCAG 2.1 AA
SEO + OpenGraph
JSON-LD structured data
Index Pages
index.html + index-{lang}.html
Date-sorted
Runtime filter (js/index-runtime.js)
Sitemap
URL Listing
hreflang per language
Last Modified
Runtime JS
js/index-runtime.js (filter+theme)
js/article-runtime.js (reading progress+theme)
Vendored libs
chart.js UMD
chartjs-plugin-annotation
d3 7.9
npm Package
SLSA 3 attestation
Provenance
flowchart LR
A[EP APIs] -->|JSON| B[MCP Server]
B -->|Structured Data| C[Validation]
C -->|Valid Data| D[Sanitization]
D -->|Clean Data| E[LLM Processing]
E -->|Generated Content| F[Multi-Language]
F -->|14 Languages| G[HTML Generation]
G -->|Static Files| H[Git Repository]
H -->|Push| I[GitHub Pages]
I -->|CDN| J[Public Website]
B -.->|Error| K[Fallback Content]
K -.->|Placeholder| E
style A fill:#e1f5ff
style B fill:#e8f5e9
style E fill:#fff4e1
style G fill:#e8f5e9
style I fill:#e1f5ff
style J fill:#d4edda
Technology stack, infrastructure, and development practices.
mindmap
root((Technical<br/>Architecture v0.8.54))
Runtime Environment
Node.js 26
ES Modules
Performance
Latest Features
TypeScript 6.0.3
Strict Mode
Type Safety
Async/Await
Error Handling
GitHub-Hosted Runners
ubuntu-latest (2-core default)
Ephemeral Execution
Security Isolation
120-min timeout hard cap
Development Stack
Build Tools
npm + package.json
ESLint 10.2.1
Prettier
Husky git hooks
typedoc 0.28.19
Testing (3,061+ tests / 52 files)
Vitest 4.1.4 (unit + integration)
Playwright 1.59.1 (E2E)
axe-core (WCAG 2.1 AA)
HTMLHint
Code Quality
SonarCloud (planned)
CodeQL SAST
Dependabot SCA
REUSE/SPDX license compliance
Documentation
Markdown + Mermaid
JSDoc โ typedoc
Architecture suite (C4/ERD/FLOW/STATE)
ISMS alignment
Infrastructure
GitHub Platform
Source Control
Git Repository
Branch Protection
Required Reviews
SHA-pinned Actions
CI/CD
GitHub Actions
15 agentic news workflows
news-breaking
news-week-ahead
news-month-ahead
news-quarter-ahead
news-year-ahead
news-term-outlook
news-election-cycle
news-week-in-review
news-month-in-review
news-quarter-in-review
news-year-in-review
news-committee-reports
news-motions
news-propositions
news-translate
14 infra workflows
compile-agentic-workflows
agentics-maintenance
codeql
copilot-setup-steps
dependency-review
deploy-s3
e2e
labeler
news-translate-reconciler
release
reuse
scorecards
setup-labels
test-and-report
gh aw compile --validate
GH_AW_VERSION v0.71.3 (pinned)
Hosting (fallback)
GitHub Pages
HTTPS/SSL
Global CDN
Security
Dependabot
Secret Scanning
CodeQL
SLSA 3 Attestations
Scorecards
AWS (Primary hosting)
S3 (versioned bucket)
CloudFront (CDN)
ACM (TLS cert)
OIDC deploy role (deploy-s3.yml)
MCP Runtime
EP MCP Gateway
host.docker.internal:80
/mcp/european-parliament
mcp-setup.sh
JSON-RPC 2.0 over stdio/HTTP
european-parliament-mcp-server 1.2.13
worldbank-mcp 1.0.1 (optional)
IMFMCPClient native fetch
gh-aw 5-Layer Security
AWF Squid firewall allowlist
Sandboxed Docker
Safe-output constraints
create-pull-request
max-patch-size: 1024 KB (default)
max-patch-size: 10240 KB (translate)
JSONL audit trail
Lock-file compilation
Security Architecture
Defense in Depth
Static Content
No Server Execution
No Database
No User Sessions
No Authentication
Input Validation
Schema Validation
Type Checking
Content Validator
Sanitization
Output Encoding
HTML Entity Encoding
XSS Prevention
CSP Headers
Content Security
Supply Chain Security
SHA-Pinned Actions
SBOM Generation
npm provenance
SLSA 3 attestations
REUSE 3.3 license compliance
Frontend
Static HTML5 + CSS3
styles.css (133 KB, hand-written)
No SPA framework
Runtime JS modules
buildSiteFooter() single source
14-language localized footer
Compliance Framework
ISO 27001:2022
NIST CSF 2.0
CIS Controls v8.1
GDPR
NIS2
EU Cyber Resilience Act
graph TB
subgraph "Presentation Layer"
A[Static HTML/CSS]
B[Multi-Language Content]
C[Responsive Design]
end
subgraph "Generation Layer"
D[Node.js Scripts]
E[LLM Integration]
F[Template Engine]
end
subgraph "Data Layer"
G[European Parliament MCP]
H[EP APIs]
I[JSON Data]
end
subgraph "Infrastructure Layer"
J[GitHub Actions]
K[GitHub Pages]
L[CDN Distribution]
end
subgraph "Security Layer"
M[CodeQL SAST]
N[Dependabot SCA]
O[Input Validation]
P[Output Encoding]
end
A --> D
B --> D
C --> D
D --> G
E --> D
F --> D
G --> H
H --> I
D --> J
J --> K
K --> L
M --> D
N --> J
O --> D
P --> A
style A fill:#e8f5e9
style D fill:#e1f5ff
style G fill:#fff4e1
style J fill:#e1f5ff
style M fill:#ffe1e1
LLM-powered content creation workflow and capabilities.
mindmap
root((Content<br/>Generation))
Input Sources
Parliamentary Data
Session Information
Committee Activities
Document Content
Question Records
Article Requirements
Article Type
Target Language
Content Length
Style Guidelines
Context Information
Historical Data
Related Events
Background Info
Source Citations
LLM Processing
Prompt Engineering
System Prompts
Role Definition
Style Guidelines
Factual Requirements
Output Format
Context Injection
Source Data
Metadata
Instructions
Examples
Temperature Control
Consistency
Creativity Balance
Fact Accuracy
Style Adherence
Content Generation
Article Creation
Title Generation
Subtitle Creation
Summary Paragraph
Detailed Analysis
Key Points List
Multi-Language
Translation Prompts
Cultural Adaptation
Idiom Handling
Format Preservation
Fact Checking
Source Verification
Citation Accuracy
Data Consistency
Logic Validation
Post-Processing
Content Validation
Schema Compliance
Required Fields
Length Limits
Format Rules
HTML Generation
Semantic Markup
Accessibility
SEO Tags
Meta Information
Quality Assurance
Spell Check
Grammar Check
Style Consistency
Link Validation
Sanitization
XSS Prevention
Script Removal
Event Handler Removal
Safe HTML Only
Output Types
Week Ahead Articles
Upcoming Sessions
Scheduled Events
Committee Meetings
Expected Votes
Long-Horizon Forecasts
Quarter Ahead (T+90d)
Year Ahead (T+365d)
Term Outlook (today โ next-election)
Election Cycle (ยฑ6 mo around election)
Retrospective Reviews
Week in Review
Month in Review
Quarter in Review
Year in Review
Committee Reports
Meeting Summaries
Decisions Made
Topics Discussed
Next Steps
Proposition Analysis
Proposal Details
Impact Assessment
Stakeholder Views
Expert Commentary
Breaking News
Urgent Updates
Vote Results
Major Decisions
Political Developments
flowchart TD
Start[๐ Article Request] --> Type{Article Type}
Type -->|Week Ahead| WA[Fetch Schedule Data]
Type -->|Committee| CR[Fetch Meeting Data]
Type -->|Proposition| PA[Fetch Proposal Data]
Type -->|Breaking| BN[Fetch Latest Events]
WA --> Prompt[๐ค Generate LLM Prompt]
CR --> Prompt
PA --> Prompt
BN --> Prompt
Prompt --> System[Add System Context]
System --> Context[Inject Source Data]
Context --> Send[Send to LLM]
Send --> Receive[Receive Generated Content]
Receive --> Validate{โ
Validate}
Validate -->|Invalid| Retry[Retry Generation]
Retry --> Send
Validate -->|Valid| Translate[๐ Multi-Language]
Translate --> L1[English]
Translate --> L2[Swedish]
Translate --> L3[Danish]
Translate --> L4[Norwegian]
Translate --> L5[Finnish]
Translate --> L6[German]
Translate --> L7[French]
Translate --> L8[Spanish]
Translate --> L9[Dutch]
Translate --> L10[Arabic]
Translate --> L11[Hebrew]
Translate --> L12[Japanese]
Translate --> L13[Korean]
Translate --> L14[Chinese]
L1 --> HTML[Generate HTML]
L2 --> HTML
L3 --> HTML
L4 --> HTML
L5 --> HTML
L6 --> HTML
L7 --> HTML
L8 --> HTML
L9 --> HTML
L10 --> HTML
L11 --> HTML
L12 --> HTML
L13 --> HTML
L14 --> HTML
HTML --> Sanitize[๐งน Sanitize Content]
Sanitize --> QA[Quality Assurance]
QA --> Publish[๐ฆ Publish Article]
Publish --> End[โ
Complete]
style Start fill:#e8f5e9
style Send fill:#fff4e1
style Translate fill:#e1f5ff
style Publish fill:#d4edda
style End fill:#d4edda
Security controls, compliance requirements, and best practices.
mindmap
root((Security &<br/>Compliance))
Threat Model
Attack Vectors
XSS Injection
Script Tags
Event Handlers
Data URIs
SVG Exploits
Data Injection
HTML Injection
JSON Injection
Command Injection
Path Traversal
Supply Chain
Malicious Dependencies
Compromised Packages
Vulnerable Libraries
Outdated Components
Infrastructure
GitHub Account Compromise
Workflow Manipulation
Secret Exposure
Access Control
Mitigations
Input Validation
Schema Validation
Type Checking
Whitelist Filtering
Length Limits
Output Encoding
HTML Entity Encoding
JavaScript Escaping
URL Encoding
CSS Sanitization
Dependency Management
SHA Pinning
Vulnerability Scanning
Update Automation
License Compliance
Access Control
Branch Protection
Required Reviews
Secret Management
Least Privilege
Security Controls
Static Analysis
CodeQL
TypeScript Analysis
Vulnerability Detection
Data Flow Analysis
Control Flow Analysis
ESLint Security
Security Rules
Best Practices
Code Standards
Error Detection
SonarCloud
Code Quality
Security Hotspots
Technical Debt
Maintainability
Dynamic Analysis
Dependency Scanning
npm audit
Dependabot Alerts
CVE Monitoring
CVSS Scoring
Secret Scanning
GitHub Secret Scanning
Token Detection
API Key Detection
Credential Leaks
License Compliance
REUSE Compliance
License Compatibility
Attribution
Runtime Protection
Content Security Policy
Script Sources
Style Sources
Frame Ancestors
Object Sources
HTTPS Enforcement
TLS 1.3
HSTS Headers
Secure Cookies
Mixed Content Prevention
Rate Limiting
API Rate Limits
Retry Backoff
Resource Quotas
Abuse Prevention
Compliance Framework
ISO 27001
Information Security
Risk Assessment
Security Controls
Access Management
Incident Response
Documentation
Policies
Procedures
Risk Register
Audit Evidence
Continuous Improvement
Monitoring
Review
Corrective Actions
Preventive Actions
GDPR
Data Protection
No PII Collection
Data Minimization
Purpose Limitation
Storage Limitation
Privacy Rights
Right to Access
Right to Erasure
Right to Portability
Right to Object
Legal Basis
Public Interest
Legitimate Interest
Transparency
Accountability
NIS2
Security Requirements
Risk Management
Incident Reporting
Supply Chain Security
Vulnerability Management
Governance
Management Responsibility
Security Policies
Training Programs
Audit & Assessment
Essential Services
Availability
Integrity
Confidentiality
Resilience
EU CRA
Product Security
Secure Development
Vulnerability Disclosure
Security Updates
SBOM Generation
Conformity Assessment
Risk Classification
Documentation
Testing
Certification
Market Surveillance
Incident Reporting
Product Recalls
Compliance Monitoring
Enforcement
graph TB
subgraph "Layer 1: Prevention"
A[Input Validation]
B[Output Encoding]
C[Secure Defaults]
end
subgraph "Layer 2: Detection"
D[Static Analysis]
E[Dependency Scanning]
F[Secret Scanning]
end
subgraph "Layer 3: Response"
G[Automated Fixes]
H[Security Updates]
I[Incident Response]
end
subgraph "Layer 4: Recovery"
J[Git History]
K[Rollback Capability]
L[Disaster Recovery]
end
subgraph "Layer 5: Assurance"
M[Audit Logging]
N[Compliance Reports]
O[Security Reviews]
end
A --> D
B --> D
C --> D
D --> G
E --> H
F --> I
G --> M
H --> M
I --> J
J --> K
K --> L
M --> N
N --> O
style A fill:#e8f5e9
style D fill:#e1f5ff
style G fill:#fff4e1
style J fill:#ffe1e1
style M fill:#e1f5ff
The platform applies professional intelligence-tradecraft standards across every analysis artifact. The framework โ codified in analysis/methodologies/osint-tradecraft-standards.md โ combines four pillars (ICD-203, Admiralty Code, Words of Estimative Probability, Structured Analytic Techniques) with six EP-domain-specific frameworks.
mindmap
root((Political<br/>Intelligence<br/>Framework))
ICD 203 Tradecraft Standards
Standard 1 Objective
Standard 2 Independent of policy
Standard 3 Timely
Standard 4 Based on all sources
Standard 5 Implements analytic tradecraft
Properly describes quality of sources
Properly expresses uncertainties
Properly distinguishes intelligence from assumptions
Incorporates alternative analysis
Demonstrates relevance to customers
Uses logical argumentation
Exhibits consistency
Makes accurate judgements
Standard 6 Politically neutral
Standard 7 Customer-relevant
Standard 8 Properly attributed
Standard 9 Properly classified
Admiralty Code Source Grading
Reliability Letter
A Completely reliable
B Usually reliable
C Fairly reliable
D Not usually reliable
E Unreliable
F Cannot be judged
Credibility Digit
1 Confirmed by other sources
2 Probably true
3 Possibly true
4 Doubtful
5 Improbable
6 Cannot be judged
6x6 Confidence Matrix
EP Adopted-Texts Freshness Protocol
Words of Estimative Probability
Kent Scale Bands
Almost no chance below 5 percent
Very unlikely 5 to 20 percent
Unlikely 20 to 45 percent
Roughly even chance 45 to 55 percent
Likely 55 to 80 percent
Very likely 80 to 95 percent
Almost certain above 95 percent
Banned Vague Terms
possible
could
may
uncalibrated likely
Time Horizon Discipline
Pairing With Admiralty
Structured Analytic Techniques (Heuer & Pherson)
Core SATs Required
Analysis of Competing Hypotheses ACH
Key Assumptions Check KAC
Quality of Information Check
Indicators and Signposts
What-If Analysis
High-Impact Low-Probability
Red Team Devils Advocate
Pre-Mortem
Scenario Analysis
Lightweight ACH per-file
Supporting SATs
PESTLE
Stakeholder Mapping
Bayesian Update
Force-Field Analysis
Cone of Plausibility
Attestation in methodology-reflection.md ยง3
EP Domain Frameworks
political-classification-guide.md
political-risk-methodology.md
political-threat-framework.md
political-swot-framework.md
political-style-guide.md
ai-driven-analysis-guide.md
OSINT Sourcing Ethics
In Scope
EP Open Data
IMF SDMX 3.0 REST
World Bank Open Data
Public press releases
Verified social posts MEPs
Out of Scope
Private personal data
Doxing aggregation
Speculative biography
GDPR Proportionality
Attribution and Reproducibility
| Pillar | Canonical artifact | Stage-C check |
|---|---|---|
| ICD 203 | methodology-reflection.md ยง1 |
Required sections |
| Admiralty Code | mcp-reliability-audit.md, reference-analysis-quality.md |
RED on missing grade |
| Words of Estimative Probability | executive-brief.md, scenario-forecast.md |
RED on missing band |
| Structured Analytic Techniques | methodology-reflection.md ยง3 (โฅ10 SATs) |
RED on <10 SATs |
The platform's 19 methodology documents under analysis/methodologies/ form a layered system: cross-cutting tradecraft, EP-domain frameworks, AI-author guidance, and per-artifact construction rules.
mindmap
root((Analysis<br/>Methodologies))
Cross-Cutting Tradecraft
osint-tradecraft-standards.md
ICD 203 standards
Admiralty Code grading
Words of Estimative Probability
Structured Analytic Techniques
analytical-supplementary-methodology.md
structural-metadata-methodology.md
EP Domain Frameworks
political-classification-guide.md
Significance levels
Domain taxonomy
political-risk-methodology.md
Bayesian Update
Risk register
political-threat-framework.md
Threat taxonomy
Mitigation chains
political-swot-framework.md
Quantitative SWOT
TOWS construction
political-style-guide.md
Editorial voice
Banned terms
political-style-guide.json
Forward-Looking Methodologies
forward-projection-methodology.md
Cone of plausibility
Indicators and signposts
electoral-cycle-methodology.md
Term horizons
Mandate fulfilment
electoral-domain-methodology.md
strategic-extensions-methodology.md
Synthesis & Reflection
synthesis-methodology.md
ai-driven-analysis-guide.md
10-step protocol
Pass-1 and Pass-2 read-back
Step 10.5 methodology-reflection
per-artifact-methodologies.md
34 sections one per artifact
per-document-methodology.md
Indicator Mapping
imf-indicator-mapping.md
WEO Fiscal Monitor IFS BOP ER PCPS
worldbank-indicator-mapping.md
Reference & Catalog
artifact-catalog.md
Master template index
Depth floors
Mermaid types
reference-quality-thresholds.json
Per-artifact line floors
DataMode reduction factors
README.md
| Stage | Methodology drivers |
|---|---|
| A | imf-indicator-mapping.md, worldbank-indicator-mapping.md |
| B | osint-tradecraft-standards.md, all 6 EP-domain frameworks, forward-projection-methodology.md, electoral-cycle-methodology.md, per-artifact-methodologies.md |
| C | reference-quality-thresholds.json, artifact-catalog.md |
| D | political-style-guide.md, synthesis-methodology.md |
The 60 templates under analysis/templates/ cluster into nine methodology-aligned families. Each template names the canonical artifact filename produced under analysis/daily/<date>/<slug>/ and inherits its line floor and required sections from reference-quality-thresholds.json.
mindmap
root((60 Analysis<br/>Templates))
Executive & Synthesis
executive-brief
synthesis-summary
intelligence-assessment
analysis-index
methodology-reflection
deep-analysis
Stakeholder & Coalition
stakeholder-map
stakeholder-impact
actor-mapping
actor-threat-profiles
coalition-dynamics
coalition-mathematics
seat-projection
voter-segmentation
Risk Threat & Forecast
risk-assessment
risk-matrix
threat-analysis
threat-model
political-threat-landscape
political-capital-risk
legislative-velocity-risk
legislative-disruption
consequence-trees
wildcards-blackswans
Forward Projection
forward-projection
forward-indicators
scenario-forecast
legislative-pipeline-forecast
parliamentary-calendar-projection
term-arc
mandate-fulfilment-scorecard
Strategic Frameworks
swot-analysis
quantitative-swot
pestle-analysis
forces-analysis
impact-matrix
implementation-feasibility
Historical & Comparative
historical-baseline
historical-parallels
session-baseline
cross-run-diff
cross-session-intelligence
comparative-international
presidency-trio-context
commission-wp-alignment
Classification & Significance
political-classification
significance-classification
significance-scoring
cross-reference-map
per-file-political-intelligence
Quality & Tradecraft
mcp-reliability-audit
reference-analysis-quality
imf-vintage-audit
devils-advocate-analysis
media-framing-analysis
Data Operations
data-download-manifest
economic-context
voting-patterns
workflow-audit
Partials (reusable fragments)
ai-instructions
citation-pattern
evidence-table
imf-callout
quality-checklist
| Family | Count | Required for |
|---|---|---|
| Executive & Synthesis | 6 | All article types |
| Stakeholder & Coalition | 8 | All article types |
| Risk, Threat & Forecast | 10 | All article types |
| Forward Projection | 7 | Forward-looking horizons (week/month/quarter/year-ahead, term-outlook) |
| Strategic Frameworks | 6 | All article types |
| Historical & Comparative | 8 | All article types |
| Classification & Significance | 5 | All article types |
| Quality & Tradecraft | 5 | All article types |
| Data Operations | 4 | All article types |
| Partials | 5 | Embedded into other artifacts |
The deterministic aggregator pipeline at src/aggregator/ is decomposed into nine bounded contexts, each with its own public index.ts API. The aggregator is invoked at Stage D of every unified news-<type>.md workflow.
mindmap
root((src/aggregator<br/>Bounded Contexts))
manifest
Manifest read and write
DataMode resolution
History tracking
gateResult union
runs
Run discovery
Per-slug run iteration
Cross-run diff helpers
slug
Slug normalization
Article-type โ slug mapping
Routing helpers
infra
Filesystem helpers
Path resolution
Cache directory layout
cli
Aggregator CLI entry
Strategy.run dispatch
Argument parsing
artifacts
Artifact ordering
Sanitization
Stable section emission
content
Lead generation
Takeaways generation
Reading guide generation
markdown
Deterministic Markdown to HTML
AI_MARKER sentinel substitution
Chart.js embedding hooks
metadata
Article meta tags
JSON-LD structured data
hreflang alternates
| Context | Depends on | Public API |
|---|---|---|
manifest |
infra |
Manifest read/write, dataMode resolution |
runs |
manifest, infra |
Run discovery, per-slug iteration |
slug |
(none) | Slug normalization, article-type routing |
infra |
(none) | Filesystem helpers, path resolution |
cli |
manifest, runs, slug, infra |
CLI entry, Strategy.run dispatch |
artifacts |
infra |
Artifact ordering and sanitization |
content |
artifacts, manifest |
Lead, takeaways, reading-guide generation |
markdown |
content, artifacts |
Deterministic Markdown โ HTML rendering |
metadata |
manifest, slug |
Article meta tags, JSON-LD, hreflang |
The 14-language publication surface is governed by a separate news-translate.md workflow that fan-outs from English to 13 target languages, with a pre-translation completeness gate to prevent broken English content from being replicated.
mindmap
root((14-Language<br/>Publication<br/>Ecosystem))
Source Language
en English authoritative
Western European
sv Swedish
da Danish
no Norwegian
fi Finnish
de German
fr French
es Spanish
nl Dutch
Right-To-Left
ar Arabic RTL
he Hebrew RTL
East Asian
ja Japanese
ko Korean
zh Chinese Simplified
Accessibility Framework
WCAG 2.1 AA enforcement
axe-core Playwright in CI
Semantic landmarks
Skip-to-content links
ARIA labels and roles
Color contrast >=4.5:1
Keyboard navigation
Structured Data
JSON-LD NewsArticle schema
hreflang alternates 15 per page
OpenGraph tags
Twitter Cards
RSS 2.0 feed
sitemap.xml
Translation Gate
Pre-translation validator
All English sources pass before fan-out
Per-language axe-core validation
news-translate-reconciler cleanup
Mindmaps follow these design principles for consistency and clarity.
mindmap
root((Color<br/>Legend))
Data & Content
Light Blue
Data Sources
Data Processing
Information Flow
Technical Components
Light Green
Infrastructure
Build Tools
Runtime Environment
AI & Intelligence
Light Yellow
LLM Processing
Content Generation
AI Capabilities
Security & Compliance
Light Red/Pink
Security Controls
Threat Detection
Compliance Requirements
Success & Outcomes
Dark Green
Published Content
Completed Tasks
Achieved Goals
| Node Type | Usage | Example |
|---|---|---|
| Root Node | Central concept | EU Parliament Monitor |
| Primary Branch | Major category | Mission, Capabilities, Stakeholders |
| Secondary Branch | Subcategory | Democratic Transparency, News Generation |
| Leaf Node | Specific concept | Week Ahead, Committee Reports |
Different types of relationships shown in mindmaps:
| Relationship | Description | Example |
|---|---|---|
| IS-A | Type/subtype relationship | "Week Ahead" IS-A "Article Type" |
| HAS-A | Composition relationship | "System" HAS-A "MCP Integration" |
| USES | Dependency relationship | "Generator" USES "LLM Service" |
| PRODUCES | Output relationship | "Generation" PRODUCES "HTML Files" |
| REQUIRES | Prerequisite relationship | "Publishing" REQUIRES "Validation" |
| ENABLES | Capability relationship | "MCP" ENABLES "Data Access" |
| Mindmap Section | Related C4 Diagram | Related Flowchart | Related State Diagram |
|---|---|---|---|
| System Overview | Context Diagram | News Generation Flow | System Lifecycle |
| Data Ecosystem | Container Diagram | Data Processing Flow | Article Lifecycle |
| Technical Architecture | Component Diagram | Validation Flow | MCP Connection State |
| Content Generation | Component Diagram | Generation Flow | Article State |
| Security & Compliance | Component Diagram | Security Flow | Error Handling State |
graph LR
A[MINDMAP.md] -->|Structure| B[ARCHITECTURE.md]
A -->|Process| C[FLOWCHART.md]
A -->|Behavior| D[STATEDIAGRAM.md]
A -->|Data| E[DATA_MODEL.md]
A -->|Security| F[SECURITY_ARCHITECTURE.md]
A -->|Strategy| G[SWOT.md]
B -->|Detailed View| A
C -->|Detailed View| A
D -->|Detailed View| A
E -->|Detailed View| A
F -->|Detailed View| A
G -->|Detailed View| A
style A fill:#fff4e1
style B fill:#e1f5ff
style C fill:#e1f5ff
style D fill:#e1f5ff
style E fill:#e8f5e9
style F fill:#ffe1e1
style G fill:#e8f5e9
Purpose: Quick system understanding without deep technical dive
How to Use:
Expected Outcome: Holistic understanding in 15-30 minutes
Purpose: Design decisions and system evolution planning
How to Use:
Expected Outcome: Informed architectural decisions
Purpose: Security posture assessment
How to Use:
Expected Outcome: Security assessment report
Purpose: Feature planning and prioritization
How to Use:
Expected Outcome: Product roadmap alignment
| Capability | Measurement | Target | Current (April 2026) |
|---|---|---|---|
| Article Types | Number of types supported | 14+ | 14 |
| Aggregator Modules | TS modules in src/aggregator/ |
5+ | 7 |
| Languages | Number of languages | 14 | 14 |
| Published Articles | HTML files in news/ | 1,500+ | 1,894+ |
| Agentic News Workflows | gh-aw .md โ .lock.yml |
15 | 15 |
| Data Sources | EP MCP + WB MCP + IMF REST | 3 | 3 |
| Generation Time | Average time per article set | <5 min | ~3 min |
| Stage-C Pass Rate | Articles passing completeness gate | >98% | 99.2% |
| Deployment Success | Successful deployments | >99% | 99.5% |
| Component | Metric | Target | Status |
|---|---|---|---|
| Node.js | Version | Latest LTS | โ 26.x |
| TypeScript | Version | Latest stable | โ 6.0.3 |
| Vitest | Version | Latest stable | โ 4.1.4 |
| Playwright | Version | Latest stable | โ 1.59.1 |
| gh-aw | Pinned runtime | Known-good | โ v0.71.3 |
| EP MCP Server | Version | Latest release | โ 1.3.3 |
| Dependencies | Vulnerabilities | 0 critical/high | โ 0 |
| Test Coverage | Tests / files | 3,000+ / 50+ | โ 3,061+ / 52 |
| Build Time | CI/CD duration | <10 min | โ 6 min |
graph TB
A[EU Parliament Monitor] --> B[ISO 27001]
A --> C[GDPR]
A --> D[NIS2]
A --> E[EU CRA]
B --> B1[Risk Management]
B --> B2[Access Control]
B --> B3[Incident Response]
C --> C1[Data Protection]
C --> C2[Privacy Rights]
C --> C3[Legal Basis]
D --> D1[Security Requirements]
D --> D2[Governance]
D --> D3[Essential Services]
E --> E1[Product Security]
E --> E2[Conformity Assessment]
E --> E3[Market Surveillance]
style A fill:#fff4e1
style B fill:#e1f5ff
style C fill:#e8f5e9
style D fill:#e1f5ff
style E fill:#e8f5e9
| Version | Date | Author | Changes |
|---|---|---|---|
| 1.6 | 2026-05-06 | CEO | Full review: added Political Intelligence Framework mindmap (ICD-203, Admiralty Code, WEP, 10 core SATs, EP-domain frameworks, OSINT ethics), Analysis Methodologies mindmap (19 methodology files), Analysis Templates mindmap (60 templates clustered into 9 families), Aggregator Bounded Contexts mindmap (9 sub-contexts with dependency table), and Multi-Language Publication Ecosystem mindmap (14 languages, accessibility framework, structured data, translation gate) |
| 1.5 | 2026-05-03 | CEO | Refresh for v0.8.54: gh-aw pin bumped to v0.71.3, EP MCP 1.3.1, all metadata aligned with current package.json and .github/workflows/compile-agentic-workflows.yml; ISMS-PUBLIC policy footer added |
| 1.4 | 2026-05-02 | CEO | Look-Ahead epic refresh: 14 article types (added quarter-ahead, year-ahead, term-outlook, election-cycle, quarter-in-review, year-in-review), 15 unified gh-aw workflows (14 news-<type>.md + news-translate.md), centralised horizon registry in src/config/article-horizons.ts (ADR-007), 8 new analysis artifacts governed by forward-projection-methodology.md + electoral-cycle-methodology.md |
| 1.3 | 2026-04-27 | CEO | April-2026 aggregator-pipeline migration: 8 article types, 9 unified gh-aw workflows (8 news-<type>.md + news-translate.md), deterministic src/aggregator/** rendering (no per-type strategies), Stage-C agent-side completeness gate (no runtime content-validator.ts), EP MCP v1.3.0+ (60+ tools, voting fallback to EP Open Data Portal), IMF SDMX 3.0 primary economic source, World Bank non-economic context, AWS S3 + CloudFront primary hosting, gh-aw v0.69.0 pinned |
| 1.2 | 2026-04-20 | CEO | Refreshed for v0.8.40: 8 article types, 9 strategies (1 generic + 8 type-specific), 5-stage pipeline, 10 agentic + 14 infra workflows, dual economic data (EP MCP 1.2.13 + WB MCP 1.0.1 + IMF REST SDMX 3.0), AI-First quality gates, 3061+ tests, AWS S3 + CloudFront primary hosting, gh-aw v0.69.0 pinned |
| 1.1 | 2026-02-24 | CEO | Updated review date and verified current state accuracy |
| 1.0 | 2025-02-17 | CEO | Initial mindmap documentation with comprehensive conceptual views |
Document Classification: Public
ISMS Compliance: ISO 27001:2022, NIST CSF 2.0, CIS Controls v8.1, GDPR, NIS2, EU CRA aligned
Technology Stack: Node.js 26, TypeScript 6.0.3, Vitest 4.1.4, Playwright 1.59.1, gh-aw v0.71.3, AWS S3 + CloudFront, GitHub Pages (fallback), EP MCP 1.3.3, WB MCP 1.0.1, IMF REST SDMX 3.0
Architecture Pattern: Static Site Generator with Agentic AI-First Authoring and Zero Runtime Dependencies
Review Status: Active, next review 2026-08-03
๐ง Mindmaps โ Conceptual Architecture for EU Parliament Monitor
Part of ISMS-compliant Architecture Documentation Suite
๐๏ธ GitHub Repository โข ๐ก๏ธ ISMS Framework โข ๐ Hack23