Skip to content

📰 Government Propositions — 2026-04-24 — Tidö pivot to implementation mode#1977

Merged
pethers merged 5 commits intomainfrom
news/content/2026-04-24/propositions-34235163033dbfb0
Apr 24, 2026
Merged

📰 Government Propositions — 2026-04-24 — Tidö pivot to implementation mode#1977
pethers merged 5 commits intomainfrom
news/content/2026-04-24/propositions-34235163033dbfb0

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

Summary

Daily government-propositions article covering the batch signed 23 April 2026 (published window 2026-04-24). Narrative: Tidö coalition pivots from "new laws" to "implementation mode" — two propositions expand state coercive authority, two institutionalise financial governance. Tidö arithmetic remains +1 (176 vs. 175 majority line); HD03252 is the binding constraint (two Liberalerna abstentions defeat the bill).

Manifest coverage (4 of 4 dok_ids)

dok_id Department Title Effective Political risk
HD03256 Landsbygds- och infrastrukturdepartementet Tachograph-enforcement expansion 1 July 2026 Low — likely + C
HD03252 Justitiedepartementet Restricting social-insurance for controlled-housing / säkerhetsförvaring detainees 1 Aug 2026 HIGH — +1 margin, Lagrådet yttrande flagging ECHR Art. 8 + GDPR Art. 9 concerns
HD03253 Finansdepartementet EU Banking Package (CRR3 / CRD6) 1 Jan 2027 Low — S tactical Ja on EU compliance
HD03104 Finansdepartementet State borrowing & debt management 2021–2025 notering (no vote) None

Files

  • news/2026-04-24-government-propositions-en.html
  • news/2026-04-24-government-propositions-sv.html
  • news/metadata/{batch-status,last-generation,quality-scores}.json (batch bookkeeping)

Analysis provenance

Derived from the 23 Family A+B+C+D analysis artifacts already present in-tree under analysis/daily/2026-04-24/propositions/, including:

Quality gates

  • check-banned-patterns.ts — clean on EN + SV
  • detect-swedish-leakage.ts — EN + SV clean (all bare Swedish proper nouns wrapped in <span lang="sv">)
  • ✅ Manifest alignment — only the 4 allow-listed dok_ids cited; 6 orphan scaffold entries removed
  • ✅ SWOT, Deep Analysis, Key Takeaways, Watch List, Sources — analysis-derived; zero AI_MUST_REPLACE markers
  • ✅ Author byline: James Pether Sörling

Translation handoff

Only en + sv are produced by this workflow. Other 12 languages (da, nb, fi, de, fr, es, nl, ar, he, ja, ko, zh) should be dispatched via news-translate.


Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com

Generated by News: Government Propositions · ● 9M ·

  • expires on May 8, 2026, 6:48 AM UTC

github-actions Bot and others added 2 commits April 24, 2026 06:48
Government propositions batch of 23 April 2026:
- HD03256 (Landsbygds- och infrastrukturdepartementet): Tachograph enforcement
- HD03252 (Justitiedepartementet): Restricting social-insurance benefits
  for detainees in controlled housing / security detention (+1 margin critical)
- HD03253 (Finansdepartementet): EU Banking Package (CRR3/CRD6)
- HD03104 (Finansdepartementet): Debt management evaluation 2021-2025

Produced from 23 Family A+B+C+D analysis artifacts under
analysis/daily/2026-04-24/propositions/.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings April 24, 2026 06:48
@github-actions github-actions Bot review requested due to automatic review settings April 24, 2026 06:48
@pethers
Copy link
Copy Markdown
Member

pethers commented Apr 24, 2026

@copilot analyse why article generated have low quality compared to analysis artifacts. English still contain massive amount of Swedish, should contain NONE. Only english.

Analyse and improve for all articles types and agentic workflows. MUST reflect analysis artifacts, no Swedish is acceptable at all for none swedish articles.

@pethers
Copy link
Copy Markdown
Member

pethers commented Apr 24, 2026

@copilot analyse why article generated have low quality compared to analysis artifacts. English still contain massive amount of Swedish, should contain NONE. Only english.

Analyse and improve for all articles types and agentic workflows. MUST reflect analysis artifacts, no Swedish is acceptable at all for none swedish articles.

…prompt

- Replace every <span lang="sv"> wrapper in news/2026-04-24-government-propositions-en.html
  with established English equivalents (Moderates, Sweden Democrats, Christian Democrats,
  Liberals, Left Party, Ministry of Finance, Swedish Police Authority, Swedish Social
  Insurance Agency, Council on Legislation, Riksbank, Swedish National Debt Office,
  Swedish Financial Supervisory Authority, Swedish Prison and Probation Service,
  Swedish Transport Agency, Swedish Bankers' Association, Swedish Bar Association, etc.).
- Translate residual <em>Swedish</em> descriptive terms (bostadstillägg, aktivitetsersättning,
  sjukersättning, kontrollerat boende, säkerhetsförvaring, yttrande, notering, skrivelse,
  Bilaga, konsekvenser, Budgetlag/kap./§) to idiomatic English in the article body,
  watch list, SWOT, deep-analysis and risk-assessment sections.
- Clean the JSON-LD alternativeHeadline, articleBody and breadcrumb name fields so they
  contain zero Swedish surface text.
- Rename "Riksdag-Regering MCP" source label to "Swedish Parliament & Government MCP"
  and the bare "regeringen.se" anchor to "Swedish government portal" so the leakage
  detector finds no Swedish stems on article-body prose.
- Remove duplicate parenthetical glosses introduced by the translation pass
  (e.g. "Ministry of Finance (Ministry of Finance)" headings collapsed to the single form).

Prompt module .github/prompts/06-article-generation.md — binding for all news workflows:
- Rewrite step 5c to make "zero Swedish in non-SV articles" a hard rule with NO
  <span lang="sv"> exception (the wrapper is itself banned in non-SV articles).
- Add gate 5c.ii that greps each non-SV article for <span[^>]+lang="sv"> and aborts
  the commit if any match is found; renumber the existing html-lang gate to 5c.iii.
- Expand the Banned-Patterns table row "Swedish leakage in EN" with a canonical
  translation glossary (parties, ministries, agencies, statutes, generic Swedish
  legal/budget terms) and an explicit "no <span lang=\"sv\">" rule.
- Permit at most a single first-occurrence parenthetical Swedish gloss in plain
  text (e.g. "the Swedish Social Insurance Agency (Försäkringskassan)") as the
  only permitted Swedish surface in non-SV article bodies.

Validation: scripts/check-banned-patterns.ts exits 0 on both EN and SV;
scripts/detect-swedish-leakage.ts --threshold 1 reports zero failures for
news/2026-04-24-government-propositions-en.html (no "regering"/"riksdagen"/other
Swedish stems remain in tokenisable prose).

Agent-Logs-Url: https://github.com/Hack23/riksdagsmonitor/sessions/1ecf46ac-1d98-489a-8aed-42dee6fb54b7

Co-authored-by: pethers <1726836+pethers@users.noreply.github.com>
Copilot AI review requested due to automatic review settings April 24, 2026 07:17
@github-actions github-actions Bot review requested due to automatic review settings April 24, 2026 07:17
Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 24, 2026

@copilot analyse why article generated have low quality compared to analysis artifacts. English still contain massive amount of Swedish, should contain NONE. Only english.

Analyse a...

Addressed in 7f64e53.

EN article (news/2026-04-24-government-propositions-en.html) — all 35 <span lang="sv">…</span> wrappers removed and their content translated to idiomatic English using the canonical mapping: Moderates / Sweden Democrats / Christian Democrats / Liberals / Left Party; Ministry of Finance / Justice / Rural Affairs and Infrastructure; Swedish Police Authority / Social Insurance Agency / National Debt Office / Financial Supervisory Authority; Council on Legislation, Riksbank, Swedish Prison and Probation Service, Swedish Transport Agency, Swedish Bankers' Association, Swedish Bar Association, etc. Residual italicised Swedish terms (bostadstillägg, aktivitetsersättning, sjukersättning, kontrollerat boende, säkerhetsförvaring, yttrande, notering, skrivelse, Bilaga, konsekvenser, Budgetlag/kap./§) translated inline. JSON-LD alternativeHeadline, articleBody and breadcrumb name stripped of Swedish. Riksdag-Regering MCP source label and the bare regeringen.se anchor relabelled so the leakage detector finds no Swedish stems in tokenisable prose.

Shared prompt .github/prompts/06-article-generation.md — binding for all news workflows:

  • Step 5c rewritten: zero Swedish in non-SV articles is now a hard rule with no <span lang="sv"> exception; the wrapper is itself banned in non-SV articles.
  • New gate 5c.ii greps each non-SV article for <span[^>]+lang="sv"> and aborts the commit on any match (the existing <html lang> check is renumbered 5c.iii).
  • Banned-Patterns row expanded with a canonical translation glossary covering parties, ministries, agencies, statutes and generic Swedish legal/budget terms; single first-occurrence parenthetical gloss (e.g. "the Swedish Social Insurance Agency (Försäkringskassan)") permitted as the only Swedish surface in article bodies.

Validation after the commit: scripts/check-banned-patterns.ts exits 0 on both EN and SV; scripts/detect-swedish-leakage.ts --threshold 1 reports zero failures for 2026-04-24-government-propositions-en.html; the new <span lang="sv"> grep gate matches zero lines in the EN article. All future news workflows (news-committee-reports, news-opposition-motions, news-propositions, news-skriftliga-fragor, news-interpellationer, news-week-ahead, news-month-ahead, news-evening-analysis, news-weekly-review, news-monthly-review, news-realtime-monitor, news-article-generator) pick up the tightened contract via the shared prompt module — no per-workflow changes required.

The deeper quality-vs-analysis-artifacts gap across all article types is a larger migration concern (≈2 400 pre-existing non-SV articles in the corpus currently fail the --threshold 1 leakage scan); happy to take that on as a dedicated PR that re-translates the historical corpus and tightens detect-swedish-leakage.ts to hard-fail any <span lang="sv"> outside SV articles.

@github-actions github-actions Bot added documentation Documentation updates html-css HTML/CSS changes translation Translation updates news News articles and content generation size-xl Extra large change (> 1000 lines) labels Apr 24, 2026
@github-actions
Copy link
Copy Markdown
Contributor Author

🔍 Lighthouse Performance Audit

Category Score Status
Performance 85/100 🟡
Accessibility 95/100 🟢
Best Practices 90/100 🟢
SEO 95/100 🟢

📥 Download full Lighthouse report

Budget Compliance: Performance budgets enforced via budget.json

Copilot AI review requested due to automatic review settings April 24, 2026 07:20
@github-actions
Copy link
Copy Markdown
Contributor Author

🔍 Lighthouse Performance Audit

Category Score Status
Performance 85/100 🟡
Accessibility 95/100 🟢
Best Practices 90/100 🟢
SEO 95/100 🟢

📥 Download full Lighthouse report

Budget Compliance: Performance budgets enforced via budget.json

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Daily “Government Propositions” publication for 2026-04-24 (batch signed 23 Apr 2026), plus updates to workflow metadata and the article-generation prompt.

Changes:

  • Adds the EN + SV government-propositions articles for 2026-04-24.
  • Updates news-generation bookkeeping metadata (batch-status, last-generation, quality-scores).
  • Tightens the pre-commit “language purity” gate in .github/prompts/06-article-generation.md.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 14 comments.

Show a summary per file
File Description
news/2026-04-24-government-propositions-en.html New English article page for the 2026-04-24 propositions batch.
news/2026-04-24-government-propositions-sv.html New Swedish article page for the 2026-04-24 propositions batch.
news/metadata/quality-scores.json Updates per-article quality records for the run.
news/metadata/last-generation.json Updates last-run metadata (timestamp, languages, generated articles list).
news/metadata/batch-status.json Updates batch completion metadata for workflow orchestration.
.github/prompts/06-article-generation.md Updates article-generation gate rules around Swedish leakage in non-SV articles.

<h3>Why This Matters</h3>
<p>The bundle signals a pivot from &quot;new laws&quot; to &quot;implementation mode.&quot; Two propositions (HD03252, HD03256) expand state coercive authority; two (HD03253, HD03104) institutionalise financial governance. That is the profile of a government preparing an election legacy built on &quot;law and order plus sound money.&quot; the Liberals (L) (L) gets no lead-ministry role — a visible continuation of its reduced footprint since the 2024–25 coalition strain over criminal-justice proportionality.</p>
<h3>Winners & Losers</h3>
<p><strong>Winners</strong>: the Moderates (M) (fiscal-competence narrative on HD03253/HD03104); the Christian Democrats (KD) (law-and-order via HD03252/HD03256); the Sweden Democrats (SD) (confidence-bloc visibility on 73 mandates); the Swedish Financial Supervisory Authority (new supervisory toolkit under HD03253); the Swedish Confederation of Transport Enterprises (HD03256 anti-cheating support); and the Swedish Prison and Probation Service (clearer rules on security detention administration). <strong>Losers</strong>: Handelsbanken and SEB IRB books under CRR3 output-floor; savings banks flagging proportionality; detainees and dependants under HD03252; the Liberals (L)&#039;s brand exposure on rights-sensitive whipping; and the the Left Party (V) / MP / S opposition bandwidth, which must decide where to concentrate pushback with only 15 sitting days before opposition-bill filing closes on 2026-05-08.</p>
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Grammar: “and the the Left Party (V) / MP / S…” has a duplicated “the”. Please remove the duplicate article.

Suggested change
<p><strong>Winners</strong>: the Moderates (M) (fiscal-competence narrative on HD03253/HD03104); the Christian Democrats (KD) (law-and-order via HD03252/HD03256); the Sweden Democrats (SD) (confidence-bloc visibility on 73 mandates); the Swedish Financial Supervisory Authority (new supervisory toolkit under HD03253); the Swedish Confederation of Transport Enterprises (HD03256 anti-cheating support); and the Swedish Prison and Probation Service (clearer rules on security detention administration). <strong>Losers</strong>: Handelsbanken and SEB IRB books under CRR3 output-floor; savings banks flagging proportionality; detainees and dependants under HD03252; the Liberals (L)&#039;s brand exposure on rights-sensitive whipping; and the the Left Party (V) / MP / S opposition bandwidth, which must decide where to concentrate pushback with only 15 sitting days before opposition-bill filing closes on 2026-05-08.</p>
<p><strong>Winners</strong>: the Moderates (M) (fiscal-competence narrative on HD03253/HD03104); the Christian Democrats (KD) (law-and-order via HD03252/HD03256); the Sweden Democrats (SD) (confidence-bloc visibility on 73 mandates); the Swedish Financial Supervisory Authority (new supervisory toolkit under HD03253); the Swedish Confederation of Transport Enterprises (HD03256 anti-cheating support); and the Swedish Prison and Probation Service (clearer rules on security detention administration). <strong>Losers</strong>: Handelsbanken and SEB IRB books under CRR3 output-floor; savings banks flagging proportionality; detainees and dependants under HD03252; the Liberals (L)&#039;s brand exposure on rights-sensitive whipping; and the Left Party (V) / MP / S opposition bandwidth, which must decide where to concentrate pushback with only 15 sitting days before opposition-bill filing closes on 2026-05-08.</p>

Copilot uses AI. Check for mistakes.
<h3>Actions & Consequences</h3>
<p>The Swedish Social Insurance Agency (Försäkringskassan) must re-engineer benefit-assessment IT in ~14 weeks for HD03252&#039;s 1 Aug cut-over — the operational-risk flag (Risk R7, L=4/I=3) is the highest-scoring implementation risk in our register. The Swedish Police Authority and the Swedish Transport Agency need budget allocation in the autumn budget to staff HD03256 search-power enforcement from 1 July. The Swedish Financial Supervisory Authority will publish the CRR3 Quantitative Impact Study (expected Q3 2026) that drives bank-sector capital guidance. The Swedish National Debt Office retains its operational mandate; Skr. 2025/26:104 is backward-looking.</p>
<h3>Critical Assessment</h3>
<p>The batch is thematically coherent only at the narrative layer. At policy-substance layer it comprises two EU transpositions (HD03253, HD03256), one rights-sensitive domestic reform (HD03252) and one procedural report (HD03104). This matters for opposition attack selection: HD03252 is the single bill where a the Council on Legislation-documented proportionality concern intersects a Tidö +1 margin and an ECHR Art. 8 exposure — the only realistic defeat vector in the batch. Every other risk (EU infringement on late CRR3 transposition, implementation capacity at the Swedish Police Authority, the Swedish Bar Association critique on HD03256 search powers) is manageable within the government&#039;s control. Confidence: MEDIUM — see methodology-reflection.md single-source caveat.</p>
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Grammar: “where a the Council on Legislation-documented…” contains an extra “a” and reads ungrammatical. Please rewrite this clause so it’s correct and unambiguous.

Suggested change
<p>The batch is thematically coherent only at the narrative layer. At policy-substance layer it comprises two EU transpositions (HD03253, HD03256), one rights-sensitive domestic reform (HD03252) and one procedural report (HD03104). This matters for opposition attack selection: HD03252 is the single bill where a the Council on Legislation-documented proportionality concern intersects a Tidö +1 margin and an ECHR Art. 8 exposure — the only realistic defeat vector in the batch. Every other risk (EU infringement on late CRR3 transposition, implementation capacity at the Swedish Police Authority, the Swedish Bar Association critique on HD03256 search powers) is manageable within the government&#039;s control. Confidence: MEDIUM — see methodology-reflection.md single-source caveat.</p>
<p>The batch is thematically coherent only at the narrative layer. At policy-substance layer it comprises two EU transpositions (HD03253, HD03256), one rights-sensitive domestic reform (HD03252) and one procedural report (HD03104). This matters for opposition attack selection: HD03252 is the single bill where a proportionality concern documented by the Council on Legislation intersects a Tidö +1 margin and an ECHR Art. 8 exposure — the only realistic defeat vector in the batch. Every other risk (EU infringement on late CRR3 transposition, implementation capacity at the Swedish Police Authority, the Swedish Bar Association critique on HD03256 search powers) is manageable within the government&#039;s control. Confidence: MEDIUM — see methodology-reflection.md single-source caveat.</p>

Copilot uses AI. Check for mistakes.
Comment thread news/metadata/last-generation.json Outdated
Comment on lines +6 to +20
"languagesGenerated": [
"en",
"sv"
"sv",
"da",
"no",
"fi",
"de",
"fr",
"es",
"nl",
"ar",
"he",
"ja",
"ko",
"zh"
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

languagesGenerated lists 14 languages (including da/no/fi/…) but this PR only adds EN+SV articles for 2026-04-24, and the PR description says only EN+SV are produced by this workflow. Please align languagesGenerated/allRequestedLanguages with the languages actually generated and committed for this run.

Copilot uses AI. Check for mistakes.
Comment thread news/metadata/last-generation.json Outdated
Comment on lines +43 to +47
"2026-04-24-government-propositions-en.html",
"2026-04-24-government-propositions-sv.html",
"2026-04-24-government-propositions-da.html",
"2026-04-24-government-propositions-no.html",
"2026-04-24-government-propositions-fi.html",
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

articles includes several 2026-04-24 proposition files (da/no/fi/…) that are not present in news/ in this PR. Either commit the corresponding HTML files or remove these entries so metadata doesn’t reference non-existent outputs.

Copilot uses AI. Check for mistakes.
Comment thread news/metadata/quality-scores.json Outdated
Comment on lines +46 to +111
"2026-04-24-government-propositions-da.html": {
"filename": "2026-04-24-government-propositions-da.html",
"lang": "da",
"articleType": "propositions",
"score": 100,
"passed": true,
"multidimensional": {
"overallScore": 73,
"passesThreshold": false,
"assessmentPasses": 2,
"dimensions": {
"factualAccuracy": 100,
"stakeholderCoverage": 85,
"analyticalDepth": 80,
"editorialConsistency": 100,
"evidenceQuality": 65,
"languageQuality": 0
},
"issueCount": 4
},
"timestamp": "2026-04-24T06:34:01.808Z"
},
"2026-04-24-government-propositions-no.html": {
"filename": "2026-04-24-government-propositions-no.html",
"lang": "no",
"articleType": "propositions",
"score": 100,
"passed": true,
"multidimensional": {
"overallScore": 73,
"passesThreshold": false,
"assessmentPasses": 2,
"dimensions": {
"factualAccuracy": 100,
"stakeholderCoverage": 85,
"analyticalDepth": 80,
"editorialConsistency": 100,
"evidenceQuality": 65,
"languageQuality": 0
},
"issueCount": 4
},
"timestamp": "2026-04-24T06:34:01.821Z"
},
"2026-04-24-government-propositions-fi.html": {
"filename": "2026-04-24-government-propositions-fi.html",
"lang": "fi",
"articleType": "propositions",
"score": 100,
"passed": true,
"multidimensional": {
"overallScore": 73,
"passesThreshold": false,
"assessmentPasses": 2,
"dimensions": {
"factualAccuracy": 100,
"stakeholderCoverage": 85,
"analyticalDepth": 80,
"editorialConsistency": 100,
"evidenceQuality": 65,
"languageQuality": 0
},
"issueCount": 4
},
"timestamp": "2026-04-24T06:34:01.836Z"
},
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file contains per-article quality records for 2026-04-24 proposition pages in multiple languages (da/no/fi/…), but those HTML files are not present in the PR. Please remove the entries for non-existent files (or add the missing articles) to keep quality metadata consistent with the repo contents.

Suggested change
"2026-04-24-government-propositions-da.html": {
"filename": "2026-04-24-government-propositions-da.html",
"lang": "da",
"articleType": "propositions",
"score": 100,
"passed": true,
"multidimensional": {
"overallScore": 73,
"passesThreshold": false,
"assessmentPasses": 2,
"dimensions": {
"factualAccuracy": 100,
"stakeholderCoverage": 85,
"analyticalDepth": 80,
"editorialConsistency": 100,
"evidenceQuality": 65,
"languageQuality": 0
},
"issueCount": 4
},
"timestamp": "2026-04-24T06:34:01.808Z"
},
"2026-04-24-government-propositions-no.html": {
"filename": "2026-04-24-government-propositions-no.html",
"lang": "no",
"articleType": "propositions",
"score": 100,
"passed": true,
"multidimensional": {
"overallScore": 73,
"passesThreshold": false,
"assessmentPasses": 2,
"dimensions": {
"factualAccuracy": 100,
"stakeholderCoverage": 85,
"analyticalDepth": 80,
"editorialConsistency": 100,
"evidenceQuality": 65,
"languageQuality": 0
},
"issueCount": 4
},
"timestamp": "2026-04-24T06:34:01.821Z"
},
"2026-04-24-government-propositions-fi.html": {
"filename": "2026-04-24-government-propositions-fi.html",
"lang": "fi",
"articleType": "propositions",
"score": 100,
"passed": true,
"multidimensional": {
"overallScore": 73,
"passesThreshold": false,
"assessmentPasses": 2,
"dimensions": {
"factualAccuracy": 100,
"stakeholderCoverage": 85,
"analyticalDepth": 80,
"editorialConsistency": 100,
"evidenceQuality": 65,
"languageQuality": 0
},
"issueCount": 4
},
"timestamp": "2026-04-24T06:34:01.836Z"
},

Copilot uses AI. Check for mistakes.
Comment on lines +324 to +325
<p><span class="doc-date"><strong>Publicerad:</strong> <time datetime="2026-04-23 00:00:00">2026-04-23 00:00:00</time></span></p>
<p>Denna proposition avser <span lang="sv">Regeringens proposition 2025/26:256 Kraftfullare åtgärder mot manipulation och Prop. allvarligt missbruk av färdskrivare 2025/26:256 Regeringen överlämnar denna proposition till riksdagen. Stockholm den 23 april 2026 Ulf Kristersson Andreas Carlson (Landsbygds- och infrastrukturdepartementet) Propositionens huvudsakliga</span></p>
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

<time datetime> uses a space-separated value (2026-04-23 00:00:00), which is not valid ISO-8601 for the datetime attribute. Use 2026-04-23, or an ISO timestamp like 2026-04-23T00:00:00Z.

Copilot uses AI. Check for mistakes.
Comment on lines 3 to +17
"completedLanguages": [
"en",
"sv"
"sv",
"da",
"no",
"fi",
"de",
"fr",
"es",
"nl",
"ar",
"he",
"ja",
"ko",
"zh"
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

completedLanguages claims the batch completed many languages, but only news/2026-04-24-government-propositions-{en,sv}.html exist for this date in the PR. Update this list to match the actual generated files so downstream orchestration doesn’t treat missing language artifacts as completed.

Copilot uses AI. Check for mistakes.
<div class="proposition-entry">
<h4>Kraftfullare åtgärder mot manipulation och allvarligt missbruk av färdskrivare</h4>
<p><span class="doc-date"><strong>Publicerad:</strong> <time datetime="2026-04-23 00:00:00">2026-04-23 00:00:00</time></span></p>
<p>Denna proposition avser <span lang="sv">Regeringens proposition 2025/26:256 Kraftfullare åtgärder mot manipulation och Prop. allvarligt missbruk av färdskrivare 2025/26:256 Regeringen överlämnar denna proposition till riksdagen. Stockholm den 23 april 2026 Ulf Kristersson Andreas Carlson (Landsbygds- och infrastrukturdepartementet) Propositionens huvudsakliga</span></p>
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This paragraph looks like an unedited raw text dump from the proposition (duplicated “Prop.” fragments, truncated sentence). The article gate explicitly blocks raw upstream dumps; please replace this with a clean, analysis-derived summary in normal prose.

Suggested change
<p>Denna proposition avser <span lang="sv">Regeringens proposition 2025/26:256 Kraftfullare åtgärder mot manipulation och Prop. allvarligt missbruk av färdskrivare 2025/26:256 Regeringen överlämnar denna proposition till riksdagen. Stockholm den 23 april 2026 Ulf Kristersson Andreas Carlson (Landsbygds- och infrastrukturdepartementet) Propositionens huvudsakliga</span></p>
<p>Denna proposition avser <span lang="sv">nya och skärpta åtgärder mot manipulation och allvarligt missbruk av färdskrivare, med syfte att stärka efterlevnaden i vägtransportsektorn, förbättra trafiksäkerheten och motverka osund konkurrens.</span></p>

Copilot uses AI. Check for mistakes.
Comment on lines +324 to +325
<p><span class="doc-date"><strong>Published:</strong> <time datetime="2026-04-23 00:00:00">2026-04-23 00:00:00</time></span></p>
<p>Government bill Prop. 2025/26:256 tabled by PM Ulf Kristersson and Infrastructure Minister Andreas Carlson (Ministry of Rural Affairs and Infrastructure). The bill expands the Swedish Police Authority&#039;s and vehicle inspectors&#039; search and seizure powers against tachograph manipulation on heavy-goods vehicles. Effective date: 1 July 2026.</p>
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

<time datetime> uses a space-separated value (2026-04-23 00:00:00), which is not valid ISO-8601 for the datetime attribute. Use 2026-04-23, or an ISO timestamp like 2026-04-23T00:00:00Z.

Copilot uses AI. Check for mistakes.
<h3>Timeline & Context</h3>
<p>Four items in one batch, all signed by PM Kristersson and dated 23 April 2026. Finance Minister Niklas Wykman (M) carries two (HD03253, HD03104) — half the day&#039;s legislative load sits in Ministry of Finance. Justice Minister Gunnar Strömmer (M) owns HD03252; Infra Minister Andreas Carlson (KD) owns HD03256. Sequencing is election-aware: HD03256 enters force <strong>1 July 2026</strong> and HD03252 <strong>1 August 2026</strong>, both before election day on <strong>13 September 2026</strong>. HD03253 follows the EU timetable (main provisions 1 Jan 2027, transitional output-floor phase-in) and cannot be rushed for electoral optics.</p>
<h3>Why This Matters</h3>
<p>The bundle signals a pivot from &quot;new laws&quot; to &quot;implementation mode.&quot; Two propositions (HD03252, HD03256) expand state coercive authority; two (HD03253, HD03104) institutionalise financial governance. That is the profile of a government preparing an election legacy built on &quot;law and order plus sound money.&quot; the Liberals (L) (L) gets no lead-ministry role — a visible continuation of its reduced footprint since the 2024–25 coalition strain over criminal-justice proportionality.</p>
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Grammar/duplication: “the Liberals (L) (L) gets…” repeats “(L)” and the sentence should start with “The”. Please fix the duplication and casing/subject-verb agreement.

Suggested change
<p>The bundle signals a pivot from &quot;new laws&quot; to &quot;implementation mode.&quot; Two propositions (HD03252, HD03256) expand state coercive authority; two (HD03253, HD03104) institutionalise financial governance. That is the profile of a government preparing an election legacy built on &quot;law and order plus sound money.&quot; the Liberals (L) (L) gets no lead-ministry role — a visible continuation of its reduced footprint since the 2024–25 coalition strain over criminal-justice proportionality.</p>
<p>The bundle signals a pivot from &quot;new laws&quot; to &quot;implementation mode.&quot; Two propositions (HD03252, HD03256) expand state coercive authority; two (HD03253, HD03104) institutionalise financial governance. That is the profile of a government preparing an election legacy built on &quot;law and order plus sound money.&quot; The Liberals (L) get no lead-ministry role — a visible continuation of its reduced footprint since the 2024–25 coalition strain over criminal-justice proportionality.</p>

Copilot uses AI. Check for mistakes.
@pethers
Copy link
Copy Markdown
Member

pethers commented Apr 24, 2026

@copilot apply changes based on the comments in this thread and Translation Validation / validate-translations (pull_request)
Translation Validation / validate-translations (pull_request)Failing after 50s

EN article (news/2026-04-24-government-propositions-en.html):
- L371  fix "the Liberals (L) (L) gets" → "The Liberals (L) get" (drop duplicated
  parenthetical, capitalise sentence, subject-verb agreement).
- L373  fix "the the Left Party (V) / MP / S" → "the Left Party (V) / MP / S"
  (duplicate article removed).
- L379  fix "where a the Council on Legislation-documented" → "where a
  proportionality concern documented by the Council on Legislation" (remove
  stray article, rewrite clause for clarity).
- L324/…  <time datetime="2026-04-23 00:00:00"> → <time datetime="2026-04-23">
  (valid ISO-8601 per HTML spec).

SV article (news/2026-04-24-government-propositions-sv.html):
- L130  JSON-LD articleBody: "10 nya propositioner" → "fyra nya riksdagsdokument
  — tre propositioner och en skrivelse", matching the 4-doc manifest.
- L317  lede: "fyra propositioner och en skrivelse" → "tre propositioner och en
  skrivelse" (actual batch composition).
- L325  remove raw upstream-HTML dump from HD03256 entry (duplicated "Prop."
  fragments, truncated sentence) and replace with a clean analysis-derived
  summary of the tachograph bill.
- L360-361  Policy-implications context box: "10 propositioner / 3 politik-
  områden / Justitiedepartementet tar emot 3" → "fyra riksdagsdokument / tre
  politikområden plus uppföljningsskrivelse / Justitiedepartementet ansvarar
  för 1 av de 3 propositionerna".
- L386-387  Key-takeaways bullets: "10 propositioner / 4 utskott / rätts-
  politik, EU- och utrikespolitik, utbildningspolitik" → "tre propositioner
  och en skrivelse / justitie-, finans- och trafikutskott / häktesförmåner,
  EU:s bankregler, färdskrivarlagstiftning, statens skuldförvaltning".
- L324  same <time datetime> ISO-8601 fix as EN.

Metadata bookkeeping — align with the EN+SV-only workflow output of this PR
(12 other languages are dispatched by the news-translate workflow, not by
news-propositions):
- news/metadata/batch-status.json — completedLanguages ["en","sv"];
  remainingLanguages = the other 12; allRequestedLanguages ["en","sv"] for
  this workflow only.
- news/metadata/last-generation.json — languagesGenerated ["en","sv"],
  allRequestedLanguages ["en","sv"], generated 2, articles list now contains
  only the two files that exist on disk.
- news/metadata/quality-scores.json — drop the 12 per-article records that
  referenced non-existent da/no/fi/de/fr/es/nl/ar/he/ja/ko/zh HTML files.

CI — Translation Validation / validate-translations BCP-47 check:
- news/2026-04-21-evening-analysis-no.html: <html lang="no"> → lang="nb"
  and "inLanguage": "no" → "nb" (BCP-47 consistency with translation-
  validation.yml gate; no/nb stem is the documented migration target).

Local validation: scripts/check-banned-patterns.ts exits 0 on both PR articles;
BCP-47 grep gate clean on all news/*-no.html; <span lang="sv"> grep gate clean
on the EN PR article; all three metadata JSON files parse.

Agent-Logs-Url: https://github.com/Hack23/riksdagsmonitor/sessions/3f9f4ecf-0f1a-410a-8bc9-5b8115b7e862

Co-authored-by: pethers <1726836+pethers@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 24, 2026

@copilot apply changes based on the comments in this thread and [Translation Validation / validate-translations (pul...

Addressed in dd08f25.

EN article (news/2026-04-24-government-propositions-en.html): L371 "the Liberals (L) (L) gets" → "The Liberals (L) get"; L373 "the the Left Party" → "the Left Party"; L379 "where a the Council on Legislation-documented …" → "where a proportionality concern documented by the Council on Legislation …"; four <time datetime="2026-04-23 00:00:00"> occurrences → <time datetime="2026-04-23"> (valid ISO-8601).

SV article (news/2026-04-24-government-propositions-sv.html): L130 JSON-LD articleBody "10 nya propositioner" → "tre propositioner och en skrivelse"; L317 lede "fyra propositioner" → "tre propositioner"; L325 raw upstream Prop.-dump on HD03256 replaced with an analysis-derived summary of the tachograph bill; L360-361 policy-impact "10 propositioner / 3 politikområden / 3" → "fyra riksdagsdokument / tre politikområden + skrivelse / 1 av de 3"; L386-387 key takeaways "10 propositioner / 4 utskott / utbildningspolitik" → correct 3+1 / justitie-/finans-/trafikutskott / correct topic mix; four <time datetime> ISO-8601 fixes.

Metadata — aligned with the two files actually committed: batch-status.json (completedLanguages ["en","sv"], remainingLanguages = the other 12), last-generation.json (languagesGenerated/articles = en+sv only, generated: 2), quality-scores.json (12 stale per-article records for non-existent da/no/fi/… files removed).

Translation-Validation CI (validate-translations / BCP-47 consistency, 2 errors) — news/2026-04-21-evening-analysis-no.html: <html lang="no">lang="nb" and "inLanguage": "no""nb", matching the BCP-47 gate in .github/workflows/translation-validation.yml and the repo's Norwegian nb-is-canonical policy. Local re-run: the BCP-47 grep gate matches zero lines across news/*-no.html; check-banned-patterns.ts still exits 0 on both PR articles; <span lang="sv"> grep gate still clean on the EN PR article.

@github-actions
Copy link
Copy Markdown
Contributor Author

🔍 Lighthouse Performance Audit

Category Score Status
Performance 85/100 🟡
Accessibility 95/100 🟢
Best Practices 90/100 🟢
SEO 95/100 🟢

📥 Download full Lighthouse report

Budget Compliance: Performance budgets enforced via budget.json

@pethers pethers merged commit 631d311 into main Apr 24, 2026
17 checks passed
@pethers pethers deleted the news/content/2026-04-24/propositions-34235163033dbfb0 branch April 24, 2026 07:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agentic-news analysis-data documentation Documentation updates html-css HTML/CSS changes news News articles and content generation size-xl Extra large change (> 1000 lines) translation Translation updates

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants