gwoe-antragspruefer/tools
Dotty Dotter 57e11b3da7 chore(ci): Anti-Regression-Wache gegen neue Inline-Styles (#184)
Nicht alle 1322 Inline-Style-Vorkommen in einer Sitzung migrieren — aber
zumindest verhindern, dass es mehr werden. Drei Bausteine:

1. ``tools/audit_inline_styles.py`` — CLI für Audit (Cluster, Top-Files)
   und Baseline-Erzeugung (--baseline → JSON {file: count}).

2. ``tools/inline_styles_baseline.json`` — eingefrorene IST-Zählung pro
   Template-Datei. Wird vom Test als obere Schranke gelesen.

3. ``tests/test_inline_styles_baseline.py`` (3 Tests) — pro Datei
   und global: aktuelle Anzahl <= Baseline. Schlägt Alarm bei neuen
   Inline-Styles und auch bei neuen Templates mit Inline-Styles, die
   noch nicht in der Baseline stehen.

Workflow für künftige Migrationen: Inline-Styles in einer Datei nach
benannten Klassen überführen, Baseline neu einfrieren via
``python3 tools/audit_inline_styles.py --baseline > tools/inline_styles_baseline.json``.

Cluster-Verteilung der 1322 Treffer:
- layout: 625, typography: 323, color: 262, sonstige: 112.

Top-Brennpunkte: index.html (463, Classic-UI Legacy),
auswertungen.html (125), antrag_detail.html v2 (119),
aktuelle-themen.html (82).

1220/1220 Tests grün.
2026-05-09 02:32:35 +02:00
..
audit_inline_styles.py chore(ci): Anti-Regression-Wache gegen neue Inline-Styles (#184) 2026-05-09 02:32:35 +02:00
build_programme_literal.py refactor(programme): WAHLPROGRAMME → programme.PROGRAMME konsolidiert (#222) 2026-05-09 00:37:35 +02:00
inline_styles_baseline.json chore(ci): Anti-Regression-Wache gegen neue Inline-Styles (#184) 2026-05-09 02:32:35 +02:00