Skip to content

Improve Month Ahead: Add strategic legislative forecasting, pipeline tracking, and trend analysisΒ #597

@pethers

Description

@pethers

πŸ“‹ Issue Type

Enhancement β€” Extend Month Ahead articles with strategic legislative forecasting and trend analysis

🎯 Objective

Enhance scripts/news-types/month-ahead.ts to go beyond basic calendar event listing into strategic legislative forecasting. Add deeper document analysis, committee pipeline tracking, budget cycle awareness, and cross-party legislative momentum analysis.

πŸ“Š Current State

  • File: scripts/news-types/month-ahead.ts (291 lines β€” smallest of all 8 article types)
  • REQUIRED_TOOLS: get_calendar_events, search_dokument (conditional fallback)
  • Gap: Month ahead articles are calendar-driven but lack strategic depth β€” they list events but don't forecast legislative outcomes, track committee pipelines, or identify emerging policy trends
  • Impact: Monthly previews read like expanded calendars rather than strategic intelligence briefs

πŸš€ Desired State

  • Month ahead articles include strategic legislative forecasts
  • Committee report pipeline tracking (what's coming through which committee)
  • Budget cycle awareness (flag critical fiscal deadlines)
  • Cross-party legislative momentum (which parties are pushing which policies)
  • Historical comparison (same month in previous parliamentary terms)
  • Identification of policy convergence/divergence trends
  • Enhanced template with "Strategic Outlook" and "Legislative Pipeline" sections

πŸ”§ Implementation Approach

1. Add legislative pipeline tracking (~100 lines)

// Track propositions and motions in committee pipeline
const pendingBetankanden = await mcpClient.call('get_betankanden', {
  rm: currentRiksmote,
  limit: 20
});
const pendingPropositioner = await mcpClient.call('get_propositioner', {
  rm: currentRiksmote,
  limit: 15
});
  • Map propositions/motions to their committee processing stage
  • Estimate when key items will reach plenary voting

2. Add trend analysis (~80 lines)

// Analyze motion volume and topic distribution
const recentMotions = await mcpClient.call('get_motioner', {
  rm: currentRiksmote,
  limit: 50
});
  • Identify which policy domains are most active
  • Track party-by-party legislative activity levels
  • Flag unusual patterns (surge in motions, committee bottlenecks)

3. Budget cycle integration (~40 lines)

  • Detect proximity to key fiscal milestones (spring/autumn budget, economic forecasts)
  • Highlight finance committee deadlines
  • Flag EU-related fiscal coordination events

4. Update REQUIRED_TOOLS

Add newly integrated tools: get_betankanden, get_propositioner, get_motioner

5. Enhanced article templates

  • Add "Strategic Legislative Outlook" section
  • Add "Committee Pipeline" summary
  • Add "Policy Trends" analysis
  • Update all 14 language templates

πŸ€– Recommended Agent

code-quality-engineer β€” TypeScript implementation extending the smallest article generator

βœ… Acceptance Criteria

  • Legislative pipeline tracking implemented (committee β†’ plenary flow)
  • Trend analysis identifies active policy domains
  • Budget cycle awareness flags fiscal milestones
  • REQUIRED_TOOLS updated to include newly integrated tools
  • Article templates include "Strategic Outlook" and "Pipeline" sections
  • All 14 language templates updated
  • Prospective tone maintained (forecasting, not reporting)
  • Article quality validation passes
  • No regression in existing month-ahead generation
  • File grows from 291 lines to ~500 lines (proportional to other article types)

πŸ“š References

  • File: scripts/news-types/month-ahead.ts (entire file β€” smallest article type)
  • MCP Tools: get_betankanden, get_propositioner, get_motioner, get_calendar_events
  • Pattern reference: scripts/news-types/weekly-review.ts (full enrichment pipeline example)
  • Content generators: scripts/data-transformers/content-generators.ts
  • Policy analysis: scripts/data-transformers/policy-analysis.ts

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions