fix(v50.1.1): Testakten-Sektion bei dekorierten Direkt-Download-Headings korrekt positionieren (#149)

Codex-Review zu PR #148: Regex in scripts/inject-testakten-section.py
matchte nur Headings, die exakt mit '## Direkt-Download' beginnen.
Dekorierte Varianten wie '## ⬇️ Direkt-Download (einzelnes ZIP)'
fielen durch, der Auto-Block landete oberhalb statt unterhalb des
Direkt-Downloads.

Aenderungen:
- Regex aufgeweitet auf ^##[^\n]*Direkt-Download[^\n]*
- 10 READMEs mit dekorierten Headings neu sortiert:
  arbeitsrecht, arbeitszeugnis-analyse, betreuungsrecht,
  datenschutzrecht, fachanwalt-verwaltungsrecht, fluggastrechte,
  forderungsmanagement-klagewerkstatt, legistik-werkstatt,
  steuerrecht-anwalt-und-berater, vertragsrecht.

Versionen:
- Marketplace top-level 50.1.0 -> 50.1.1
- Plugin-Versionen unveraendert (nur READMEs)

Validatoren gruen.
This commit is contained in:
Klotzkette
2026-05-30 12:23:27 +02:00
committed by GitHub
parent 353d03bc1a
commit b4ada07d77
13 changed files with 153 additions and 127 deletions
+8 -2
View File
@@ -170,8 +170,14 @@ def find_insert_position(text: str) -> int:
Falls nicht gefunden, suche nach Plugin-Description (vor erstem '## Start' o.ae.).
Falls auch das fehlt: nach H1-Titel + leerer Zeile + erstem Absatz.
"""
# Variant 1: nach Direkt-Download-Sektion
m = re.search(r"^## Direkt-Download\b.*?(?=^## )", text, re.MULTILINE | re.DOTALL)
# Variant 1: nach Direkt-Download-Sektion. Heading darf beliebig dekoriert sein,
# z.B. '## Direkt-Download', '## ⬇️ Direkt-Download (einzelnes ZIP)',
# '## Arbeitsakte (Direkt-Download)', '## Direkt-Download (je ein ZIP pro Akte)'.
m = re.search(
r"^##[^\n]*Direkt-Download[^\n]*\n.*?(?=^## |\Z)",
text,
re.MULTILINE | re.DOTALL,
)
if m:
return m.end()
# Variant 2: vor erster '##'-Section