Skip to content

Latest commit

 

History

History
206 lines (182 loc) · 10.4 KB

File metadata and controls

206 lines (182 loc) · 10.4 KB
name News: EU Parliament Month in Review — Unified
description Generates a single PR containing analysis artifacts and the rendered month-in-review article (Stages A → B → C → D → E in one workflow).
strict false
checkout
fetch-depth
1
true
schedule workflow_dispatch
cron
0 10 28 * *
permissions
copilot-requests contents issues pull-requests actions discussions security-events
write
read
read
read
read
read
read
timeout-minutes 60
max-turns 500
max-ai-credits 1000
imports
.github/agents/news-generation.agent.md
shared/config/news-common-settings.md
shared/config/news-safe-outputs-domains.md
shared/config/news-safe-outputs-head.md
uses with
shared/config/news-tools.md
slug
month-in-review
uses with
shared/config/news-pat-pr-fallback.md
slug workflowName
month-in-review
News: EU Parliament Month in Review — Unified
shared/mcp/news-mcp-servers.md
shared/prompts/news-unified-runtime.md
uses with
shared/prompts/news-unified-stages.md
slug
month-in-review
concurrency
group cancel-in-progress
news-month-in-review
true
safe-outputs
max-patch-size max-patch-files report-failure-as-issue create-pull-request dispatch-workflow
10240
200
false
github-token title-prefix labels draft expires allowed-base-branches max if-no-changes fallback-as-issue auto-close-issue excluded-files
${{ secrets.COPILOT_MCP_GITHUB_PERSONAL_ACCESS_TOKEN || secrets.GITHUB_TOKEN }}
[news]
agentic-news
analysis-data
type:month-in-review
false
14d
main
1
warn
true
false
**/*.lock
node_modules/**
.github/workflows/*.lock.yml
analysis/**/data/**
workflows max
news-translate
1
steps
name uses with
Setup Node.js
actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f
node-version
26
name run
Install dependencies
npm ci --prefer-offline --no-audit
name run
Build TypeScript
npm run build
name run
Copy mermaid + chart vendor assets
npm run copy-vendor
name run
Pre-fetch EP feeds (deterministic Stage A)
bash scripts/prefetch-ep-feeds.sh month-in-review procedures documents events adopted-texts
engine
id model
copilot
claude-opus-4.8

📰 EU Parliament Month in Review — Unified Workflow

🔖 Workflow Parameters

Parameter Value
ARTICLE_TYPE_SLUG month-in-review
Family Unified (Stages A → B → C → D → E in one workflow)
Data window last 30 days
Primary feeds get_adopted_texts_feed, get_events_feed, get_procedures_feed with timeframe: "one-month".
Stage A budget ≤ 4 min (tighter than other workflows — 30-day data window is larger)
Stage B budget (2 passes) 22–28 min — HARD CEILING per article-horizons.ts (do not exceed the per-slug ceiling on Stage B even if Pass 2 still has shallow sections; force GATE_RESULT=ANALYSIS_ONLY instead)
Stage C budget (gate + optional Pass 3) ≤ 4 min
Stage D budget ≤ 2 min (deterministic)
Stage E budget (commit + single PR) ≤ 2 min
Stage C exit tripwire minute 36 elapsed (long-horizon prospective: 39; long-horizon retrospective: 38; electoral: 42) — the decision threshold for forcing GATE_RESULT=ANALYSIS_ONLY and (if late) skipping Stage D so the run can still reach the PR call. Per-slug stage ceilings live in src/config/article-horizons.ts; the tripwire backstops any per-stage overrun. Note: Stage D + E run after this tripwire, between the Stage C exit and the PR-call deadline.
Hard PR-call deadline minute ≤ 45 elapsed (target ≤ 42) — deadline for the single safe-outputs create_pull_request call. Note: engine.mcp.session-timeout is intentionally NOT set — gh-aw v0.71.3 advertises this field but the bundled gateway image (v0.3.1) rejects it; the agent must finish within the 60-min timeout-minutes cap regardless.
Hard safety cap 60-min timeout-minutes
PR rule Exactly one [news] PR at end of run

🎯 Article-Type Specifics

Stage A — Data Collection (Ref: 01, 07)

Run the canonical gateway block from 08-infrastructure.md §4. Source scripts/mcp-setup.sh, then scripts/wb-mcp-probe.sh and scripts/imf-mcp-probe.sh. Collect EP feed data first; fall back to direct endpoints on failure. Deep-fetch up to 10 procedures / voting records / meeting decisions into ${ANALYSIS_DIR}/data/. Target ≤ 5 min.

source scripts/mcp-setup.sh
mkdir -p "${ANALYSIS_DIR}/data" "${ANALYSIS_DIR}/cache/imf"
scripts/imf-mcp-probe.sh > "${ANALYSIS_DIR}/cache/imf/probe-summary.json" &
IMF_PROBE_PID=$!
source scripts/wb-mcp-probe.sh
# Run EP MCP collection now while the IMF probe is still in the background.
# Wait immediately before Stage B so cache/imf is available for provenance.
wait "$IMF_PROBE_PID" || true