From 9169e7699d7048fb5de33e8c61778be84cc68b90 Mon Sep 17 00:00:00 2001 From: Dotty Dotter Date: Fri, 8 May 2026 14:28:12 +0200 Subject: [PATCH] =?UTF-8?q?fix(parteien):=20BIW=20=E2=86=92=20BiW=20(kanon?= =?UTF-8?q?ische=20Schreibweise)=20f=C3=BCr=20HB-Wahlprogramme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit parteien.py listet 'BiW' als kanonischen Key (Mixed-Case), 'BIW' nur als Alias. Bestehende HB-Assessments tragen bereits 'BiW' in wahlprogramm_scores. Beim Block 2.4 hatte ich die historischen BiW- Wahlprogramme aber mit "BIW" angelegt — Folge: find_relevant_chunks mit parteien=["BiW"] hätte die 131 Chunks der biw-hb-*-PDFs nicht gefunden, weil der partei-Filter exakt matcht. Geändert: - embeddings.PROGRAMME: 3 biw-hb-* Einträge "partei": "BIW" → "BiW" - wahlprogramme.WAHLPROGRAMME["HB"]: Key "BIW" → "BiW", "partei" Feld "BIW Bremen" → "BiW Bremen" - test_hb_has_five_parteien: erwartete Set entsprechend angepasst Folge-Schritt: chunks.partei in der embeddings.db muss von 'BIW' auf 'BiW' migriert werden — die 131 betroffenen Chunks werden beim nächsten Reindex der biw-hb-* Programme ohnehin überschrieben. 92/92 Programme-Tests grün, 1242 Unit-Tests grün. --- app/embeddings.py | 6 +++--- app/wahlprogramme.py | 2 +- tests/test_wahlprogramme.py | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/app/embeddings.py b/app/embeddings.py index 52c21da..f57c028 100644 --- a/app/embeddings.py +++ b/app/embeddings.py @@ -629,8 +629,8 @@ PROGRAMME = { # Total: 83 historische Einträge # Block 2.4 — direkte 2019-Lücken - "biw-hb-2019": {"name": "BIW Bremen Wahlprogramm 2019", "typ": "wahlprogramm", "partei": "BIW", "bundesland": "HB", "pdf": "biw-hb-2019.pdf", "gueltig_ab": "2019-05-26", "gueltig_bis": "2023-05-14", "wp": 20}, - "biw-hb-2023": {"name": "BIW Bremen Wahlprogramm 2023", "typ": "wahlprogramm", "partei": "BIW", "bundesland": "HB", "pdf": "biw-hb-2023.pdf", "gueltig_ab": "2023-05-14", "gueltig_bis": None, "wp": 21}, + "biw-hb-2019": {"name": "BIW Bremen Wahlprogramm 2019", "typ": "wahlprogramm", "partei": "BiW", "bundesland": "HB", "pdf": "biw-hb-2019.pdf", "gueltig_ab": "2019-05-26", "gueltig_bis": "2023-05-14", "wp": 20}, + "biw-hb-2023": {"name": "BIW Bremen Wahlprogramm 2023", "typ": "wahlprogramm", "partei": "BiW", "bundesland": "HB", "pdf": "biw-hb-2023.pdf", "gueltig_ab": "2023-05-14", "gueltig_bis": None, "wp": 21}, "cdu-bund-2017": {"name": "CDU/CSU Wahlprogramm BTW 2017", "typ": "wahlprogramm", "partei": "CDU", "bundesland": "BUND", "pdf": "cdu-bund-2017.pdf", "gueltig_ab": "2017-09-24", "gueltig_bis": "2021-09-26", "wp": 19}, "csu-bund-2017": {"name": "CSU Bayernplan 2017", "typ": "wahlprogramm", "partei": "CSU", "bundesland": "BUND", "pdf": "csu-bund-2017.pdf", "gueltig_ab": "2017-09-24", "gueltig_bis": "2021-09-26", "wp": 19}, "spd-bund-2017": {"name": "SPD Zukunftsprogramm BTW 2017", "typ": "wahlprogramm", "partei": "SPD", "bundesland": "BUND", "pdf": "spd-bund-2017.pdf", "gueltig_ab": "2017-09-24", "gueltig_bis": "2021-09-26", "wp": 19}, @@ -688,7 +688,7 @@ PROGRAMME = { "cdu-hb-2015": {"name": "CDU HB Wahlprogramm 2015", "typ": "wahlprogramm", "partei": "CDU", "bundesland": "HB", "pdf": "cdu-hb-2015.pdf", "gueltig_ab": "2015-05-10", "gueltig_bis": "2019-05-26", "wp": 19}, "afd-hb-2015": {"name": "AfD HB Wahlprogramm 2015", "typ": "wahlprogramm", "partei": "AfD", "bundesland": "HB", "pdf": "afd-hb-2015.pdf", "gueltig_ab": "2015-05-10", "gueltig_bis": "2019-05-26", "wp": 19}, "fdp-hb-2015": {"name": "FDP HB Wahlprogramm 2015", "typ": "wahlprogramm", "partei": "FDP", "bundesland": "HB", "pdf": "fdp-hb-2015.pdf", "gueltig_ab": "2015-05-10", "gueltig_bis": "2019-05-26", "wp": 19}, - "biw-hb-2015": {"name": "BIW Bremen HB Wahlprogramm 2015", "typ": "wahlprogramm", "partei": "BIW", "bundesland": "HB", "pdf": "biw-hb-2015.pdf", "gueltig_ab": "2015-05-10", "gueltig_bis": "2019-05-26", "wp": 19}, + "biw-hb-2015": {"name": "BIW Bremen HB Wahlprogramm 2015", "typ": "wahlprogramm", "partei": "BiW", "bundesland": "HB", "pdf": "biw-hb-2015.pdf", "gueltig_ab": "2015-05-10", "gueltig_bis": "2019-05-26", "wp": 19}, # HE WP19 (Wahl 2013-09-22) "cdu-he-2013": {"name": "CDU HE Wahlprogramm 2013", "typ": "wahlprogramm", "partei": "CDU", "bundesland": "HE", "pdf": "cdu-he-2013.pdf", "gueltig_ab": "2013-09-22", "gueltig_bis": "2019-01-18", "wp": 19}, "gruene-he-2013": {"name": "Grüne HE Wahlprogramm 2013", "typ": "wahlprogramm", "partei": "GRÜNE", "bundesland": "HE", "pdf": "gruene-he-2013.pdf", "gueltig_ab": "2013-09-22", "gueltig_bis": "2019-01-18", "wp": 19}, diff --git a/app/wahlprogramme.py b/app/wahlprogramme.py index 9d0f18b..b442edd 100644 --- a/app/wahlprogramme.py +++ b/app/wahlprogramme.py @@ -128,7 +128,7 @@ WAHLPROGRAMME: dict[str, dict[str, dict]] = { "CDU": {"file": "cdu-hb-2023.pdf", "titel": "CDU Bremen Wahlprogramm Bürgerschaftswahl 2023", "partei": "CDU Bremen", "jahr": 2023, "seiten": 100, "regierungsbildung": "2023-07-05", "regierungsende": None}, "GRÜNE": {"file": "gruene-hb-2023.pdf","titel": "BÜNDNIS 90/DIE GRÜNEN Bremen Wahlprogramm 2023", "partei": "BÜNDNIS 90/DIE GRÜNEN Bremen", "jahr": 2023, "seiten": 100, "regierungsbildung": "2023-07-05", "regierungsende": None}, "LINKE": {"file": "linke-hb-2023.pdf", "titel": "DIE LINKE Bremen Wahlprogramm Bürgerschaftswahl 2023", "partei": "DIE LINKE Bremen", "jahr": 2023, "seiten": 100, "regierungsbildung": "2023-07-05", "regierungsende": None}, - "BIW": {"file": "biw-hb-2023.pdf", "titel": "BÜRGER IN WUT — Programm für die Bürgerschaftswahl 2023", "partei": "BIW Bremen", "jahr": 2023, "seiten": 26, "regierungsbildung": "2023-07-05", "regierungsende": None}, + "BiW": {"file": "biw-hb-2023.pdf", "titel": "BÜRGER IN WUT — Programm für die Bürgerschaftswahl 2023", "partei": "BiW Bremen", "jahr": 2023, "seiten": 26, "regierungsbildung": "2023-07-05", "regierungsende": None}, }, # Hessen — LTW 08.10.2023. Kabinett Rhein II (CDU+SPD) vereidigt 18.01.2024. "HE": { diff --git a/tests/test_wahlprogramme.py b/tests/test_wahlprogramme.py index b819eef..fbc28c5 100644 --- a/tests/test_wahlprogramme.py +++ b/tests/test_wahlprogramme.py @@ -184,9 +184,9 @@ class TestParteienMitWahlprogramm: def test_hb_has_five_parteien(self): # AfD war wegen Listenstreit nicht zur Bürgerschaftswahl 2023 zugelassen. - # Stattdessen ist BIW (Bürger in Wut) als 6. Fraktion in der 21. WP. + # Stattdessen ist BiW (Bürger in Wut) als 6. Fraktion in der 21. WP. parteien = parteien_mit_wahlprogramm("HB") - assert set(parteien) == {"SPD", "CDU", "GRÜNE", "LINKE", "BIW"} + assert set(parteien) == {"SPD", "CDU", "GRÜNE", "LINKE", "BiW"} def test_he_has_five_parteien(self): parteien = parteien_mit_wahlprogramm("HE")