Skip to content

Commit 528faf1

Browse files
Copilotpethers
andcommitted
fix: prevent broken hybrid translations in compound words and committee meetings
- Add word boundary check in translatePhrase prefix matching to prevent splitting compound words (e.g., "Interpellationssvar" no longer becomes "质询ssvar") - Add multi-segment translation with Swedish possessive 's' stripping for phrases like "Arbetsmarknadsutskottets sammanträde" - Add dictionary entries for "interpellationssvar", "sammanträde", "återrapportering" - Simplify Swedish detection to use X.titel presence (API source indicator) instead of fragile regex character checks - Fix 91 old articles with broken hybrid translations - Add 2 new tests for compound word protection Co-authored-by: pethers <1726836+pethers@users.noreply.github.com>
1 parent 3166e48 commit 528faf1

56 files changed

Lines changed: 1267 additions & 1194 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

news/2026-02-22-month-ahead-ar.html

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -214,77 +214,77 @@ <h3>لماذا هذا الأسبوع مهم</h3>
214214
<h2>جدول الأعمال التشريعي القادم</h2>
215215

216216
<div class="document-entry">
217-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDC120260324ip/" target="_blank" rel="noopener noreferrer"><span lang="sv">استجوابssvar</span></a></h4>
217+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDC120260324ip/" target="_blank" rel="noopener noreferrer"><span lang="sv">ردود الاستجواب</span></a></h4>
218218
<p class="policy-significance">يتطلب مراجعة في اللجنة ونقاش في الجلسة العامة قبل اتخاذ القرار.</p>
219219
</div>
220220

221221
<div class="document-entry">
222-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDC120260324ar/" target="_blank" rel="noopener noreferrer"><span lang="sv">Återrapportering från Europeiska rådets möte</span></a></h4>
222+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDC120260324ar/" target="_blank" rel="noopener noreferrer"><span lang="sv">تقرير متابعة från Europeiska rådets möte</span></a></h4>
223223
<p class="policy-significance">Touches on EU and foreign affairs. Parliamentary committee review and chamber debate will shape the final outcome.</p>
224224
</div>
225225

226226
<div class="document-entry">
227-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3F%C3%B6U202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الدفاعs sammanträde</span></a></h4>
227+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3F%C3%B6U202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الدفاع اجتماع</span></a></h4>
228228
<p class="policy-significance">Touches on defence and security policy. Parliamentary committee review and chamber debate will shape the final outcome.</p>
229229
</div>
230230

231231
<div class="document-entry">
232-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3UbU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة التعليمs sammanträde</span></a></h4>
232+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3UbU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة التعليم اجتماع</span></a></h4>
233233
<p class="policy-significance">Touches on education policy. Parliamentary committee review and chamber debate will shape the final outcome.</p>
234234
</div>
235235

236236
<div class="document-entry">
237-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3CU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الشؤون المدنيةs sammanträde</span></a></h4>
237+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3CU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الشؤون المدنية اجتماع</span></a></h4>
238238
<p class="policy-significance">يتطلب مراجعة في اللجنة ونقاش في الجلسة العامة قبل اتخاذ القرار.</p>
239239
</div>
240240

241241
<div class="document-entry">
242-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3MJU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة البيئة والزراعةs sammanträde</span></a></h4>
242+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3MJU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة البيئة والزراعة اجتماع</span></a></h4>
243243
<p class="policy-significance">Touches on environmental and climate policy. Parliamentary committee review and chamber debate will shape the final outcome.</p>
244244
</div>
245245

246246
<div class="document-entry">
247-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3AU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة سوق العملs sammanträde</span></a></h4>
247+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3AU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة سوق العمل اجتماع</span></a></h4>
248248
<p class="policy-significance">Touches on labour market policy. Parliamentary committee review and chamber debate will shape the final outcome.</p>
249249
</div>
250250

251251
<div class="document-entry">
252-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3JuU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة العدلs sammanträde</span></a></h4>
252+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3JuU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة العدل اجتماع</span></a></h4>
253253
<p class="policy-significance">Touches on EU and foreign affairs. Parliamentary committee review and chamber debate will shape the final outcome.</p>
254254
</div>
255255

256256
<div class="document-entry">
257-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SfU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة التأمين الاجتماعيs sammanträde</span></a></h4>
257+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SfU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة التأمين الاجتماعي اجتماع</span></a></h4>
258258
<p class="policy-significance">يتطلب مراجعة في اللجنة ونقاش في الجلسة العامة قبل اتخاذ القرار.</p>
259259
</div>
260260

261261
<div class="document-entry">
262-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3KU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الدستورs sammanträde</span></a></h4>
262+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3KU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الدستور اجتماع</span></a></h4>
263263
<p class="policy-significance">يتطلب مراجعة في اللجنة ونقاش في الجلسة العامة قبل اتخاذ القرار.</p>
264264
</div>
265265

266266
<div class="document-entry">
267-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3NU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الصناعة والتجارةs sammanträde</span></a></h4>
267+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3NU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الصناعة والتجارة اجتماع</span></a></h4>
268268
<p class="policy-significance">Touches on trade and industry policy. Parliamentary committee review and chamber debate will shape the final outcome.</p>
269269
</div>
270270

271271
<div class="document-entry">
272-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3KrU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الثقافةs sammanträde</span></a></h4>
272+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3KrU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الثقافة اجتماع</span></a></h4>
273273
<p class="policy-significance">يتطلب مراجعة في اللجنة ونقاش في الجلسة العامة قبل اتخاذ القرار.</p>
274274
</div>
275275

276276
<div class="document-entry">
277-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3FiU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الماليةs sammanträde</span></a></h4>
277+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3FiU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة المالية اجتماع</span></a></h4>
278278
<p class="policy-significance">يتطلب مراجعة في اللجنة ونقاش في الجلسة العامة قبل اتخاذ القرار.</p>
279279
</div>
280280

281281
<div class="document-entry">
282-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SkU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الضرائبs sammanträde</span></a></h4>
282+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SkU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الضرائب اجتماع</span></a></h4>
283283
<p class="policy-significance">Touches on fiscal policy, EU and foreign affairs. Parliamentary committee review and chamber debate will shape the final outcome.</p>
284284
</div>
285285

286286
<div class="document-entry">
287-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SoU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الشؤون الاجتماعيةs sammanträde</span></a></h4>
287+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SoU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">لجنة الشؤون الاجتماعية اجتماع</span></a></h4>
288288
<p class="policy-significance">يتطلب مراجعة في اللجنة ونقاش في الجلسة العامة قبل اتخاذ القرار.</p>
289289
</div>
290290

news/2026-02-22-month-ahead-da.html

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -219,72 +219,72 @@ <h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDC120260324ip/
219219
</div>
220220

221221
<div class="document-entry">
222-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDC120260324ar/" target="_blank" rel="noopener noreferrer"><span lang="sv">Återrapportering från Europeiska rådets möte</span></a></h4>
222+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDC120260324ar/" target="_blank" rel="noopener noreferrer"><span lang="sv">tilbagerapportering från Europeiska rådets möte</span></a></h4>
223223
<p class="policy-significance">Touches on EU and foreign affairs. Parliamentary committee review and chamber debate will shape the final outcome.</p>
224224
</div>
225225

226226
<div class="document-entry">
227-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3F%C3%B6U202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Forsvarsudvalgets sammanträde</span></a></h4>
227+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3F%C3%B6U202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Forsvarsudvalget møde</span></a></h4>
228228
<p class="policy-significance">Touches on defence and security policy. Parliamentary committee review and chamber debate will shape the final outcome.</p>
229229
</div>
230230

231231
<div class="document-entry">
232-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3UbU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Uddannelsesudvalgets sammanträde</span></a></h4>
232+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3UbU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Uddannelsesudvalget møde</span></a></h4>
233233
<p class="policy-significance">Touches on education policy. Parliamentary committee review and chamber debate will shape the final outcome.</p>
234234
</div>
235235

236236
<div class="document-entry">
237-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3CU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Civiludvalgets sammanträde</span></a></h4>
237+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3CU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Civiludvalget møde</span></a></h4>
238238
<p class="policy-significance">Kræver udvalgsbehandling og kammerdebat, før der træffes afgørelse.</p>
239239
</div>
240240

241241
<div class="document-entry">
242-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3MJU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Miljø- og Landbrugsudvalgets sammanträde</span></a></h4>
242+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3MJU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Miljø- og Landbrugsudvalget møde</span></a></h4>
243243
<p class="policy-significance">Touches on environmental and climate policy. Parliamentary committee review and chamber debate will shape the final outcome.</p>
244244
</div>
245245

246246
<div class="document-entry">
247-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3AU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Arbejdsmarkedsudvalgets sammanträde</span></a></h4>
247+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3AU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Arbejdsmarkedsudvalget møde</span></a></h4>
248248
<p class="policy-significance">Touches on labour market policy. Parliamentary committee review and chamber debate will shape the final outcome.</p>
249249
</div>
250250

251251
<div class="document-entry">
252-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3JuU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Retsudvalgets sammanträde</span></a></h4>
252+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3JuU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Retsudvalget møde</span></a></h4>
253253
<p class="policy-significance">Touches on EU and foreign affairs. Parliamentary committee review and chamber debate will shape the final outcome.</p>
254254
</div>
255255

256256
<div class="document-entry">
257-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SfU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Socialforsikringsudvalgets sammanträde</span></a></h4>
257+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SfU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Socialforsikringsudvalget møde</span></a></h4>
258258
<p class="policy-significance">Kræver udvalgsbehandling og kammerdebat, før der træffes afgørelse.</p>
259259
</div>
260260

261261
<div class="document-entry">
262-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3KU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Forfatningsudvalgets sammanträde</span></a></h4>
262+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3KU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Forfatningsudvalget møde</span></a></h4>
263263
<p class="policy-significance">Kræver udvalgsbehandling og kammerdebat, før der træffes afgørelse.</p>
264264
</div>
265265

266266
<div class="document-entry">
267-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3NU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Erhvervsudvalgets sammanträde</span></a></h4>
267+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3NU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Erhvervsudvalget møde</span></a></h4>
268268
<p class="policy-significance">Touches on trade and industry policy. Parliamentary committee review and chamber debate will shape the final outcome.</p>
269269
</div>
270270

271271
<div class="document-entry">
272-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3KrU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Kulturudvalgets sammanträde</span></a></h4>
272+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3KrU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Kulturudvalget møde</span></a></h4>
273273
<p class="policy-significance">Kræver udvalgsbehandling og kammerdebat, før der træffes afgørelse.</p>
274274
</div>
275275

276276
<div class="document-entry">
277-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3FiU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Finansudvalgets sammanträde</span></a></h4>
277+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3FiU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Finansudvalget møde</span></a></h4>
278278
<p class="policy-significance">Kræver udvalgsbehandling og kammerdebat, før der træffes afgørelse.</p>
279279
</div>
280280

281281
<div class="document-entry">
282-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SkU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Skatteudvalgets sammanträde</span></a></h4>
282+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SkU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Skatteudvalget møde</span></a></h4>
283283
<p class="policy-significance">Touches on fiscal policy, EU and foreign affairs. Parliamentary committee review and chamber debate will shape the final outcome.</p>
284284
</div>
285285

286286
<div class="document-entry">
287-
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SoU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Socialudvalgets sammanträde</span></a></h4>
287+
<h4><a href="https://riksdagen.se/sv/dokument-och-lagar/dokument/HDA3SoU202603241100/" target="_blank" rel="noopener noreferrer"><span lang="sv">Socialudvalget møde</span></a></h4>
288288
<p class="policy-significance">Kræver udvalgsbehandling og kammerdebat, før der træffes afgørelse.</p>
289289
</div>
290290

0 commit comments

Comments
 (0)