• v4.7.2 e00eae08e8

    v4.7.2
    CI / verify (push) Successful in 57s
    Release / release (push) Successful in 38s
    Stable

    torben released this 2026-09-04 17:22:51 +00:00 | 56 commits to main since this release

    4.7.2 - 2026-09-04 - Coverage-Untergrenze bei 85 %, gegen beobachtete 87,0 %

    Author: Torben Nehmer

    • Coverage-Untergrenze 85 % in tools/.coveragerc

    Die Suite hat jetzt einen Boden: fail_under = 85 in tools/.coveragerc, gemessen gegen 87,0 %
    (CI-Lauf 163, 6498 Statements, 975 Tests). Damit ist Gitea #10 geschlossen — das Issue, das die
    Messung eingerichtet und die Schwelle danach absichtlich zurückgehalten hat, bis die Zahl
    beobachtet war.

    Die Beobachtung ist der eigentliche Inhalt dieses Bumps. Zwischen der ersten Messung (86,9 % von
    5105 Statements, 730 Tests, Lauf 87, Stack 1.8.1) und heute ist der gemessene Code um ein Viertel
    gewachsen und die Suite um ein Drittel, über 38 grüne Läufe — und die Quote hat sich um einen
    Zehntelpunkt bewegt. Eine Untergrenze, die auf dieser Beobachtung steht, ist etwas anderes als
    eine gegriffene Zahl.

    85 und nicht 87, und das ist keine Bequemlichkeit. Der Coverage-Bericht unterscheidet drei
    Sorten ungedeckter Zeilen, und nur eine davon bedeutet Arbeit (EVALS.md § „How much of the
    stack the suite reaches"). Ein neuer dünner Typer-Wrapper senkt den Gesamtwert, ohne dass
    irgendetwas schlechter geworden wäre — seine Logik liegt daneben und ist dort getestet. Eine
    Schwelle auf dem gemessenen Wert würde genau an diesem Commit rot, und eine Schwelle, die aus
    einem Nicht-Grund rot wird, wird gesenkt statt verdient. Das ist die Fehlerweise, die #10
    verhindern wollte, nur von der anderen Seite. Die zwei Punkte sind der Platz, den die Taxonomie
    verlangt.

    fail_under steht in der Konfiguration und nicht als --cov-fail-under im CI-Schritt: so sitzt
    die Zahl neben der Begründung, die sie erzeugt hat, und gilt für jeden --cov-Lauf statt nur für
    den einen, den CI schreibt.

    Was der Boden nicht tut: die drei echten Lücken schließen (provenance_cmd.py 44 %,
    migrate_cmd.py 65 %, type_resolver.py 79 %). Er friert den erreichten Stand ein. Diese Liste
    ist die einzige, die sich nicht bewegt hat, während alles um sie herum wuchs — migrate_cmd.py
    ist sogar von 71 % gefallen, weil das Modul gewachsen ist und die neuen Zeilen ungetestet ankamen.
    Das ist Gitea #51.

    Mitgenommen, weil es dieselbe Frage beantwortet: der Coverage-Bericht ist als Artefakt
    abrufbar, über die Run-Seite. Die Actions-Artefakt-Endpunkte melden dafür total_count: 0, weil
    upload-artifact@v3 über die ältere Artifact-API ablegt, die diese Endpunkte nicht lesen. Eine
    leere Liste ist kein fehlgeschlagener Upload — steht jetzt in EVALS.md und im Kommentar an der
    Coverage report-Stufe, damit die naheliegende „Korrektur" auf v4 (hier eingeschränkt) niemandem
    mehr einfällt.


    This note is a snapshot of the CHANGES.md entry as it stood when the tag was cut, and
    is never edited afterwards. The maintained version of this text - including any later
    correction - is the entry for this version in CHANGES.md in the repository.

    Downloads