Skip to content

Improve article narrative flow: transform artifact-collage structure into reader-friendly journalism #2802

@pethers

Description

@pethers

📋 Issue Type

Feature / Quality Improvement

🎯 Objective

Transform the generated news articles from an intelligence-artifact collage (sequential dump of executive-brief.md, synthesis-summary.md, intelligence-assessment.md, etc.) into a coherent journalistic narrative that a global reader — unfamiliar with Swedish politics — can follow from the first paragraph.

📊 Current State (observed 2026-05-28)

Reading today's articles (2026-05-28-propositions-en.html, 2026-05-28-realtime-monitor-en.html):

  • Articles begin with "Executive Brief" → "BLUF (Bottom Line Up Front)" → then immediately present dense policy content with unexplained acronyms
  • Section headers expose internal artifact names: ## Executive Brief, ## Synthesis Summary, ## Intelligence Assessment — Key Judgments
  • BLUF is an intelligence community term meaningless to general readers
  • The "Decisions Supported" table uses coded confidence formats like HIGH (B2), MEDIUM (C2) without explanation
  • The article structure mirrors the 23-artifact analysis pipeline rather than a journalistic narrative arc
  • A reader encountering "HD03271" or "HD03275" has no indication these are Riksdag document tracking IDs

🚀 Desired State

Articles should read like quality investigative journalism from the first sentence:

  1. Replace "Executive Brief / BLUF" framing with a standard journalistic lede — a punchy opening paragraph answering "what happened, who did it, why it matters, and what comes next"
  2. Rename or hide artifact-derived section headers — replace ## Executive Brief with a meaningful editorial headline; demote "Intelligence Assessment — Key Judgments" to reader-friendly equivalents like "Key Findings" or "What This Means"
  3. Front-load the story — first 3 paragraphs should be readable by someone who knows nothing about Swedish politics
  4. Defer technical analysis to clearly marked "Deep Dive" or expandable sections
  5. Integrate the Reader Intelligence Guide as an active navigation tool rather than a passive table buried in the article

📊 CIA Data Integration Context

CIA Product(s): All article types
Methodology: Aligns with Article-Generation.md §1 "Integrated narrative articles (not artifact collages)" — the P1 priority improvement
Implementation Reference: scripts/render-lib/aggregator/order.ts (AGGREGATION_ORDER), scripts/aggregate-analysis.ts

🔧 Implementation Approach

  1. Modify scripts/render-lib/aggregator/order.ts to support a narrative-mode output that:
    • Merges Executive Brief + Synthesis Summary into a single lede section
    • Renames section headings to reader-friendly equivalents (configurable i18n map)
    • Introduces a "narrative wrapper" that weaves Key Judgments into the story
  2. Add a heading-rename map in scripts/render-lib/aggregator/ that transforms artifact headers to journalistic equivalents across all 14 languages
  3. Update 06-article-generation.md prompt to instruct the AI to write executive-brief.md with a proper journalistic lede as its first paragraph
  4. Ensure the technical "artifact audit" sections are clearly separated from the editorial narrative (e.g., with a <details> wrapper or visual break)

🤖 Recommended Agent

code-quality-engineer — This is primarily a refactoring of the aggregation pipeline logic, requiring careful restructuring of order.ts and aggregate.ts without breaking existing test coverage.

✅ Acceptance Criteria

  • Article lede (first paragraph) is a complete journalistic sentence understandable without Swedish political context
  • No article section uses the header "BLUF (Bottom Line Up Front)" in rendered HTML
  • Section headers in rendered HTML use reader-friendly names (not artifact filenames)
  • Confidence codes (HIGH/MEDIUM/LOW) include inline explanation on first use
  • Document IDs (HDxxxxx) are contextualized as "Riksdag document #xxxxx" on first occurrence
  • All 14 languages apply the same narrative structure
  • Existing test suites pass without modification

📚 References

🏷️ Labels

type:feature, priority:high, component:data-integration

Metadata

Metadata

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions