Conversation
…- 2026-02-23 Three new interpellations filed today targeting the Kristersson government: - IP 2025/26:352: Crisis preparedness for accelerating warming (Guteland → Pourmokhtari) - IP 2025/26:351: Government response to Environmental Goals Committee report (Guteland → Pourmokhtari) - IP 2025/26:353: Stricter sanctions for discrimination (Magnusson → N. Larsson) Generated 14 language versions with full translations. Updated news indexes, metadata, and sitemap. Co-authored-by: Copilot <[email protected]>
|
✅ Pull request created: #471 |
There was a problem hiding this comment.
Pull request overview
This PR adds a new “Breaking News” package (“Climate Accountability Push”) across multiple languages, updates the language-specific news indexes to surface it, and refreshes generation/metadata tracking files used by the news pipeline.
Changes:
- Add new breaking-news article pages (multi-language variants shown in this PR excerpt).
- Update news index pages (multiple languages) to include the new article and adjust ItemList metadata.
- Update metadata artifacts (
news/metadata/last-generation.json,data/news-articles.json) to reflect the latest generation run and new articles.
Reviewed changes
Copilot reviewed 30 out of 31 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| news/metadata/last-generation.json | Updates generation metadata for the realtime/breaking run (but changes schema). |
| news/index.html | Adds the breaking-news item to the EN news index and bumps ItemList count. |
| news/index_sv.html | Adds the breaking-news item to the SV news index and bumps ItemList count. |
| news/index_da.html | Adds the breaking-news item to the DA news index and bumps ItemList count. |
| news/index_no.html | Adds the breaking-news item to the NO news index and bumps ItemList count. |
| news/index_fi.html | Adds the breaking-news item to the FI news index and bumps ItemList count. |
| news/index_de.html | Adds the breaking-news item to the DE news index and bumps ItemList count. |
| news/index_fr.html | Adds the breaking-news item to the FR news index and bumps ItemList count. |
| news/index_es.html | Adds the breaking-news item to the ES news index and bumps ItemList count. |
| news/index_nl.html | Adds the breaking-news item to the NL news index and bumps ItemList count. |
| news/index_ar.html | Adds the breaking-news item to the AR news index and bumps ItemList count. |
| news/index_he.html | Adds the breaking-news item to the HE news index and bumps ItemList count. |
| news/index_ja.html | Adds the breaking-news item to the JA news index and bumps ItemList count. |
| news/index_ko.html | Adds the breaking-news item to the KO news index and bumps ItemList count. |
| news/index_zh.html | Adds the breaking-news item to the ZH news index and bumps ItemList count. |
| news/2026-02-23-climate-accountability-push-zh.html | Adds the ZH breaking-news article page. |
| news/2026-02-23-climate-accountability-push-nl.html | Adds the NL breaking-news article page. |
| news/2026-02-23-climate-accountability-push-ko.html | Adds the KO breaking-news article page. |
| news/2026-02-23-climate-accountability-push-ja.html | Adds the JA breaking-news article page. |
| news/2026-02-23-climate-accountability-push-he.html | Adds the HE breaking-news article page (RTL). |
| news/2026-02-23-climate-accountability-push-fr.html | Adds the FR breaking-news article page. |
| news/2026-02-23-climate-accountability-push-es.html | Adds the ES breaking-news article page. |
| news/2026-02-23-climate-accountability-push-ar.html | Adds the AR breaking-news article page (RTL). |
| data/news-articles.json | Refreshes the extracted news-article metadata DB to include the new breaking-news slug across languages. |
news/metadata/last-generation.json
Outdated
| "timestamp": "2026-02-23T10:30:00.000Z", | ||
| "types": [ | ||
| "committee-reports", | ||
| "motions", | ||
| "propositions", | ||
| "week-ahead", | ||
| "weekend-analysis", | ||
| "weekly-review" | ||
| "realtime-monitor", | ||
| "breaking-news" | ||
| ], | ||
| "languagesGenerated": [ | ||
| "en", | ||
| "sv", | ||
| "da", | ||
| "no", | ||
| "fi", | ||
| "de", | ||
| "fr", | ||
| "es", | ||
| "nl", | ||
| "ar", | ||
| "he", | ||
| "ja", | ||
| "ko", | ||
| "zh" | ||
| "en", "sv", "da", "no", "fi", "de", "fr", "es", "nl", "ar", "he", "ja", "ko", "zh" | ||
| ], | ||
| "allRequestedLanguages": [ | ||
| "en", | ||
| "sv", | ||
| "da", | ||
| "no", | ||
| "fi", | ||
| "de", | ||
| "fr", | ||
| "es", | ||
| "nl", | ||
| "ar", | ||
| "he", | ||
| "ja", | ||
| "ko", | ||
| "zh" | ||
| "en", "sv", "da", "no", "fi", "de", "fr", "es", "nl", "ar", "he", "ja", "ko", "zh" | ||
| ], | ||
| "batchSize": "all", | ||
| "skipExisting": false, | ||
| "generated": 70, | ||
| "errors": 0, | ||
| "articles": [ | ||
| "2026-02-22-committee-reports-ar.html", | ||
| "2026-02-22-committee-reports-da.html", | ||
| "2026-02-22-committee-reports-de.html", | ||
| "2026-02-22-committee-reports-en.html", | ||
| "2026-02-22-committee-reports-es.html", | ||
| "2026-02-22-committee-reports-fi.html", | ||
| "2026-02-22-committee-reports-fr.html", | ||
| "2026-02-22-committee-reports-he.html", | ||
| "2026-02-22-committee-reports-ja.html", | ||
| "2026-02-22-committee-reports-ko.html", | ||
| "2026-02-22-committee-reports-nl.html", | ||
| "2026-02-22-committee-reports-no.html", | ||
| "2026-02-22-committee-reports-sv.html", | ||
| "2026-02-22-committee-reports-zh.html", | ||
| "2026-02-22-government-propositions-ar.html", | ||
| "2026-02-22-government-propositions-da.html", | ||
| "2026-02-22-government-propositions-de.html", | ||
| "2026-02-22-government-propositions-en.html", | ||
| "2026-02-22-government-propositions-es.html", | ||
| "2026-02-22-government-propositions-fi.html", | ||
| "2026-02-22-government-propositions-fr.html", | ||
| "2026-02-22-government-propositions-he.html", | ||
| "2026-02-22-government-propositions-ja.html", | ||
| "2026-02-22-government-propositions-ko.html", | ||
| "2026-02-22-government-propositions-nl.html", | ||
| "2026-02-22-government-propositions-no.html", | ||
| "2026-02-22-government-propositions-sv.html", | ||
| "2026-02-22-government-propositions-zh.html", | ||
| "2026-02-22-opposition-motions-ar.html", | ||
| "2026-02-22-opposition-motions-da.html", | ||
| "2026-02-22-opposition-motions-de.html", | ||
| "2026-02-22-opposition-motions-en.html", | ||
| "2026-02-22-opposition-motions-es.html", | ||
| "2026-02-22-opposition-motions-fi.html", | ||
| "2026-02-22-opposition-motions-fr.html", | ||
| "2026-02-22-opposition-motions-he.html", | ||
| "2026-02-22-opposition-motions-ja.html", | ||
| "2026-02-22-opposition-motions-ko.html", | ||
| "2026-02-22-opposition-motions-nl.html", | ||
| "2026-02-22-opposition-motions-no.html", | ||
| "2026-02-22-opposition-motions-sv.html", | ||
| "2026-02-22-opposition-motions-zh.html", | ||
| "2026-02-22-week-ahead-ar.html", | ||
| "2026-02-22-week-ahead-da.html", | ||
| "2026-02-22-week-ahead-de.html", | ||
| "2026-02-22-week-ahead-en.html", | ||
| "2026-02-22-week-ahead-es.html", | ||
| "2026-02-22-week-ahead-fi.html", | ||
| "2026-02-22-week-ahead-fr.html", | ||
| "2026-02-22-week-ahead-he.html", | ||
| "2026-02-22-week-ahead-ja.html", | ||
| "2026-02-22-week-ahead-ko.html", | ||
| "2026-02-22-week-ahead-nl.html", | ||
| "2026-02-22-week-ahead-no.html", | ||
| "2026-02-22-week-ahead-sv.html", | ||
| "2026-02-22-week-ahead-zh.html", | ||
| "2026-02-22-weekend-security-preparedness-ar.html", | ||
| "2026-02-22-weekend-security-preparedness-da.html", | ||
| "2026-02-22-weekend-security-preparedness-de.html", | ||
| "2026-02-22-weekend-security-preparedness-en.html", | ||
| "2026-02-22-weekend-security-preparedness-es.html", | ||
| "2026-02-22-weekend-security-preparedness-fi.html", | ||
| "2026-02-22-weekend-security-preparedness-fr.html", | ||
| "2026-02-22-weekend-security-preparedness-he.html", | ||
| "2026-02-22-weekend-security-preparedness-ja.html", | ||
| "2026-02-22-weekend-security-preparedness-ko.html", | ||
| "2026-02-22-weekend-security-preparedness-nl.html", | ||
| "2026-02-22-weekend-security-preparedness-no.html", | ||
| "2026-02-22-weekend-security-preparedness-sv.html", | ||
| "2026-02-22-weekend-security-preparedness-zh.html", | ||
| "2026-02-22-weekly-review-ar.html", | ||
| "2026-02-22-weekly-review-da.html", | ||
| "2026-02-22-weekly-review-de.html", | ||
| "2026-02-22-weekly-review-en.html", | ||
| "2026-02-22-weekly-review-es.html", | ||
| "2026-02-22-weekly-review-fi.html", | ||
| "2026-02-22-weekly-review-fr.html", | ||
| "2026-02-22-weekly-review-he.html", | ||
| "2026-02-22-weekly-review-ja.html", | ||
| "2026-02-22-weekly-review-ko.html", | ||
| "2026-02-22-weekly-review-nl.html", | ||
| "2026-02-22-weekly-review-no.html", | ||
| "2026-02-22-weekly-review-sv.html", | ||
| "2026-02-22-weekly-review-zh.html" | ||
| "articlesGenerated": 14, | ||
| "eventsDetected": [ | ||
| { | ||
| "type": "interpellation", |
There was a problem hiding this comment.
last-generation.json no longer matches the documented/expected generation-metadata shape (e.g., missing generated, errors, and articles). This risks breaking scripts/workflows that parse these fields (see .github/workflows/news-article-generator.md Step 8 example and scripts/generate-news-enhanced.ts LastGenerationMetadata). Consider preserving the existing fields for backward compatibility (or updating all consumers/docs in the same PR).
news/index_sv.html
Outdated
| "url": "https://riksdagsmonitor.com/news/2026-02-23-climate-accountability-push-sv.html", | ||
| "datePublished": "2026-02-23", | ||
| "description": "Analys av 20 oppositionsmotioner från S, MP, C och V som utmanar regeringen inom förnybar energi, straffrätt, avfallsreform och grundlagsrättigheter", | ||
| "description": "Tre nya interpellationer inlämnade den 23 februari utmanar Sveriges klimatminister om krisberedskap vid ekosystemkollaps och miljömål, samtidigt som e", |
There was a problem hiding this comment.
The JSON-LD description for the newest item is truncated mid-sentence (ends with "... samtidigt som e"), which is likely a generation bug and degrades SEO/preview quality. Please ensure descriptions are complete sentences (or explicitly add an ellipsis when truncating).
| "description": "Tre nya interpellationer inlämnade den 23 februari utmanar Sveriges klimatminister om krisberedskap vid ekosystemkollaps och miljömål, samtidigt som e", | |
| "description": "Tre nya interpellationer inlämnade den 23 februari utmanar Sveriges klimatminister om krisberedskap vid ekosystemkollaps och miljömål, samtidigt som ...", |
news/index_fr.html
Outdated
| "headline": "Motions d&#039;opposition: Lignes de bataille cette semaine", | ||
| "url": "https://riksdagsmonitor.com/news/2026-02-22-opposition-motions-fr.html", | ||
| "datePublished": "2026-02-22", | ||
| "description": "Calendrier parlementaire, réunions de commission et débats pour la semaine à venir", | ||
| "description": "Analyse de 10 motions d&#039;opposition", | ||
| "inLanguage": "fr", |
There was a problem hiding this comment.
This headline/description is double-escaped (d&#039;opposition), so it will render incorrectly. In JSON-LD blocks you generally want the literal apostrophe (or at most a single escape), not HTML entity encoding.
| <ul> | ||
| <li><strong>3</strong> — New interpellations filed by Social Democrats on February 23</li> | ||
| <li><strong>IP 2025/26:351, 352, 353</strong> — Reference numbers for the new filings</li> | ||
| <li><strong>4 months</strong> — Time since Environmental Goals Committee submitted its report</li> | ||
| <li><strong>€450 billion</strong> — Annual cost of climate-related catastrophes in Europe (EU Advisory Board)</li> | ||
| <li><strong>3°C</strong> — Temperature increase Europe must prepare for (EU Climate Science Advisory Board)</li> | ||
| <li><strong>September 2026</strong> — Next Swedish general election</li> |
There was a problem hiding this comment.
This Chinese article still contains substantial English UI/content in the "数字概览" box (and later in "值得关注"). The PR description claims fully translated articles; these sections should be translated to Chinese for consistency and to satisfy the translation quality gate.
| { | ||
| "@type": "ListItem", | ||
| "position": 3, | ||
| "name": "Sociaaldemocraten lanceren klimaatoffensief in het Zweedse p", |
There was a problem hiding this comment.
BreadcrumbList item name is truncated (ends with "... Zweedse p"), which makes the structured data inaccurate. The breadcrumb name should match the full article title.
| "name": "Sociaaldemocraten lanceren klimaatoffensief in het Zweedse p", | |
| "name": "Sociaaldemocraten lanceren klimaatoffensief in het Zweedse parlement", |
|
@copilot open a new pull request to apply changes based on the comments in this thread |
…postrophe encoding, ZH translation, NL breadcrumb Co-authored-by: pethers <[email protected]>
Fix Copilot review issues in PR #471: metadata schema, JSON-LD encoding, ZH translation, truncated structured data
🔍 Lighthouse Performance Audit
📥 Download full Lighthouse report Budget Compliance: Performance budgets enforced via |
🔍 Lighthouse Performance Audit
📥 Download full Lighthouse report Budget Compliance: Performance budgets enforced via |
🔴 Breaking News: Climate Accountability Push
Summary
Social Democrats launch coordinated interpellation offensive targeting the Kristersson government on climate and discrimination policy.
Events Detected (3 HIGH/MEDIUM significance)
Key Highlights
Articles Generated
14 language versions: EN, SV, DA, NO, FI, DE, FR, ES, NL, AR, HE, JA, KO, ZH
Quality Checks
Data Source
MCP Server sync status:
live(2026-02-23T10:25:25Z)Generated by Real-Time Riksdag Monitor workflow