Adapter-Bugs aus #61: BB Datum + BB/RP Type-Filter
Drei aus #61 identifizierte Production-Bugs gefixt: - **Bug 4 (BB Datum)**: BB.wahlperiode_start vom 2024-10-23 (Konstituie- rende Sitzung) auf 2024-09-22 (Wahltag) zurückgesetzt. Damit fällt die Geschäftsordnungs-Drucksache 8/2 vom 2024-10-17 in den Plausibilitäts-Check. Ist auch semantisch sauberer — die WP fängt mit der Wahl an, nicht mit der formalen Konstituierung. - **Bug 2/3 (BB/RP Type-Filter leakt Kleine Anfrage / Beschluss- empfehlung)**: Server-side ETYPF/DTYPF-Filter ist best-effort über die portala-Instanzen — BB+RP lassen die nicht-Antrag-Typen durch. Client-side strict-filter im PortalaAdapter.search() nach Aufruf von _parse_hit_list_html: nur Hits, deren typ-String das Substring "antrag" enthält, kommen weiter. Substring-Match (nicht exact), damit "Antrag gemäß § 79 GO" und ähnliche Subtypen passieren. 176 Unit-Tests grün, Live-Verifikation via Sub-A im Container nach Deploy. Refs: #61 (Bug 2, 3, 4) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
4bc583e490
commit
e72dd3ec21
@ -141,7 +141,10 @@ BUNDESLAENDER: dict[str, Bundesland] = {
|
||||
name="Brandenburg",
|
||||
parlament_name="Landtag Brandenburg",
|
||||
wahlperiode=8,
|
||||
wahlperiode_start="2024-10-23",
|
||||
# Wahltag (statt Konstituierende Sitzung am 2024-10-23), damit
|
||||
# die Geschäftsordnungs-Drucksachen der konstituierenden Sitzung
|
||||
# in den Plausibilitäts-Check fallen (siehe #61 Bug 4).
|
||||
wahlperiode_start="2024-09-22",
|
||||
naechste_wahl="2029-09-23",
|
||||
regierungsfraktionen=["SPD", "BSW"],
|
||||
landtagsfraktionen=["SPD", "AfD", "CDU", "BSW"],
|
||||
|
||||
@ -770,6 +770,17 @@ class PortalaAdapter(ParlamentAdapter):
|
||||
return []
|
||||
|
||||
results = self._parse_hit_list_html(report_resp.text, query_filter=query)
|
||||
# Server-side ETYPF/DTYPF filter is best-effort across portala
|
||||
# instances — BB/RP let "Kleine Anfrage" und "Beschluss-
|
||||
# empfehlung" durch (siehe #61 Bug 2/3). Client-side strict
|
||||
# filter on the parsed typ-string. Whitelist via Substring,
|
||||
# damit "Antrag gemäß § 79 GO" und ähnliche Subtypen passieren.
|
||||
if self.document_type:
|
||||
target = self.document_type.lower()
|
||||
results = [
|
||||
d for d in results
|
||||
if target in (d.typ or "").lower()
|
||||
]
|
||||
return results[:limit]
|
||||
|
||||
except Exception:
|
||||
|
||||
Loading…
Reference in New Issue
Block a user