fix: Validator akzeptiert Bundesrats-3-Komponenten-Drucksachen
Damit /api/analyze-drucksache die Bundesrats-spezifische 400-Meldung liefern kann (vorher haengen blieb am Path-Traversal-Validator mit generischem 'Ungueltige Drucksache-ID'). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
5667259bff
commit
c13292133c
@ -12,9 +12,14 @@ from fastapi import HTTPException
|
|||||||
|
|
||||||
|
|
||||||
# Drucksache-Format: erlaubt sind alle bisher beobachteten Schreibweisen:
|
# Drucksache-Format: erlaubt sind alle bisher beobachteten Schreibweisen:
|
||||||
# "8/6390", "18/12345", "8/6390(neu)", "23/3700-A", "21/754S" (HB: S=Stadtbürgerschaft).
|
# "8/6390", "18/12345", "8/6390(neu)", "23/3700-A", "21/754S" (HB: S=Stadtbürgerschaft),
|
||||||
|
# Bundesrat: "186/3/26" (3 Komponenten, mittlere = Sub-Nummer, letzte = Jahr).
|
||||||
# Restriktiv genug für Path-Traversal-Schutz (#57 Befund #3).
|
# Restriktiv genug für Path-Traversal-Schutz (#57 Befund #3).
|
||||||
_DRUCKSACHE_RE = re.compile(r"^\d{1,3}/\d{1,7}[A-Z]?([-(].{1,20})?$")
|
# Bundesrats-Drucksachen kommen durch den Validator und werden in
|
||||||
|
# /api/analyze-drucksache explizit per is_bundesrat-Flag abgelehnt.
|
||||||
|
_DRUCKSACHE_RE = re.compile(
|
||||||
|
r"^\d{1,3}/\d{1,7}(?:/\d{1,4})?[A-Z]?([-(].{1,20})?$"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
def validate_drucksache(drucksache: str) -> str:
|
def validate_drucksache(drucksache: str) -> str:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user