build(#134): Coverage-Schwelle 45% → 50% nach Test-Backfill-Welle
Aktuelle Total-Coverage 53.4% (vorher 46.2%). Mit der Phase-2-Welle: - 787 Tests (von 580) — +207 Tests - Coverage-Sprung +7 Punkte - 11 Module auf >=99% gebracht (mail, og_card, redline_utils, drucksache_typen, wahlperioden, wahlprogramme, abonnement_repository, bewertung_repository, monitoring, clustering, ingest_votes) - 3 Module auf >=85% (auth, protokoll_parsers/nrw, qwen_bewerter) - Verbleibend integration-territory: main.py (Endpoints), parlamente.py (Live-Adapters), queue.py worker-Loop, report.py WeasyPrint, embeddings.py OpenAI-Calls
This commit is contained in:
parent
16ecd31e50
commit
1769c9f349
17
.coveragerc
17
.coveragerc
@ -11,21 +11,20 @@ omit =
|
|||||||
# Faustregel ADR 0007: keine 100%-Jagd, aber kritische Pfade abdecken.
|
# Faustregel ADR 0007: keine 100%-Jagd, aber kritische Pfade abdecken.
|
||||||
# show_missing-Flag macht Luecken im CI-Output sofort sichtbar.
|
# show_missing-Flag macht Luecken im CI-Output sofort sichtbar.
|
||||||
#
|
#
|
||||||
# fail_under=45 ist die aktuelle Baseline (Stand 2026-04-28), nicht das
|
# fail_under=50 ist die aktuelle Baseline (Stand 2026-04-28). Verbleibende
|
||||||
# Ziel. Die niedrige Total-Coverage kommt aus drei Bereichen, die mit
|
# unabgedeckte Bereiche brauchen integration-Setup statt Unit-Tests:
|
||||||
# Unit-Tests schwer abzudecken sind und stattdessen via integration/e2e
|
|
||||||
# laufen sollten:
|
|
||||||
# - app/main.py (FastAPI-Endpoints, ~900 LOC) — TestClient-Smoke-Tests
|
# - app/main.py (FastAPI-Endpoints, ~900 LOC) — TestClient-Smoke-Tests
|
||||||
# sind lokal geskippt mangels App-Imports; laufen in der Docker-Suite.
|
# sind lokal geskippt mangels voller Deps; laufen in der Docker-Suite.
|
||||||
# - app/parlamente.py (16 Adapter, ~3400 LOC) — Live-HTTP gegen Landtage,
|
# - app/parlamente.py (16 Adapter, ~3400 LOC) — Live-HTTP gegen Landtage,
|
||||||
# tests/integration/ deckt das ab.
|
# tests/integration/ deckt das ab.
|
||||||
# - app/queue.py, app/report.py — Async-Worker und PDF-Renderer, eigene
|
# - app/queue.py _worker (async-Loop, while True, hart zu testen).
|
||||||
# Test-Runden noch ausstehend.
|
# - app/report.py WeasyPrint-PDF-Render-Pfade.
|
||||||
# Schwelle hochsetzen, sobald genannte Bereiche eigene Tests haben.
|
# - app/embeddings.py OpenAI/DashScope-Calls.
|
||||||
|
# Schwelle hochsetzen, wenn integration-Suite lokal lauffaehig wird.
|
||||||
show_missing = true
|
show_missing = true
|
||||||
skip_covered = false
|
skip_covered = false
|
||||||
precision = 1
|
precision = 1
|
||||||
fail_under = 45
|
fail_under = 50
|
||||||
|
|
||||||
# Zeilen, die nicht gezaehlt werden sollen — typische Boilerplate ohne
|
# Zeilen, die nicht gezaehlt werden sollen — typische Boilerplate ohne
|
||||||
# eigentliche Testbarkeit.
|
# eigentliche Testbarkeit.
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user