Beim Umsetzen von #198 P3 (PR #226: total_tokens nur noch DB-gejoint via db_matched-Marker) wurde per Audit festgestellt: Die danebenstehende Lifetime-Laufzeit summiert weiterhin ALLE Traces inkl. Waisen — 40,1 h angezeigt vs. 31,2 h DB-gejoint (22 % Differenz; Zahlen aus dem #226-Nachbar-KPI-Audit gegen echte Daten). Bewusst NICHT in #226 mitgefixt (Mandat nannte nur total_tokens; Scope-Disziplin).
Folge (Review-Minor aus #226): Die Strip-Zelle „Alle Versionen — Gesamt" mischt aktuell zwei Filterbasen — Tokens DB-gejoint, Laufzeit ungefiltert — ohne Hinweis.
Fix-Richtung
Empfehlung: gleiche Behandlung — denselben db_matched-Filter (tr.get("db_matched", True)) auf die Dauer-Summe in _calc_kpis anwenden (3-Zeilen-Analogie zu PR #226 inkl. Test) + Hint-Text angleichen. Alternativ, falls die ungefilterte Dauer bewusst gewollt ist: die abweichende Basis im Hint ausweisen.
Falls beim #226-Merge direkt nachgetragen wird (Maintainer-Go), dieses Issue schließen.
Beim Umsetzen von #198 P3 (PR #226:
total_tokensnur noch DB-gejoint viadb_matched-Marker) wurde per Audit festgestellt: Die danebenstehende Lifetime-Laufzeit summiert weiterhin ALLE Traces inkl. Waisen — 40,1 h angezeigt vs. 31,2 h DB-gejoint (22 % Differenz; Zahlen aus dem #226-Nachbar-KPI-Audit gegen echte Daten). Bewusst NICHT in #226 mitgefixt (Mandat nannte nur total_tokens; Scope-Disziplin).Folge (Review-Minor aus #226): Die Strip-Zelle „Alle Versionen — Gesamt" mischt aktuell zwei Filterbasen — Tokens DB-gejoint, Laufzeit ungefiltert — ohne Hinweis.
Fix-Richtung
Empfehlung: gleiche Behandlung — denselben
db_matched-Filter (tr.get("db_matched", True)) auf die Dauer-Summe in_calc_kpisanwenden (3-Zeilen-Analogie zu PR #226 inkl. Test) + Hint-Text angleichen. Alternativ, falls die ungefilterte Dauer bewusst gewollt ist: die abweichende Basis im Hint ausweisen.Falls beim #226-Merge direkt nachgetragen wird (Maintainer-Go), dieses Issue schließen.