You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Sammel-Issue aus der 3-Runden-UX-Review (2026-07-13). Bündelt Polish-Funde, die NICHT bereits durch eigene Issues abgedeckt sind (Filter-Badges, 0-Eval-Lauf, Token-Totals siehe separate Issues; Mojibake siehe #27; Duplikat-Basen/Test-Fixtures/—-Werte siehe #228/#229/#231/#232/#233; Profil siehe #235).
Checkliste
ch4-0%-Einbrüche zerstören den Trend. „Akzeptanzrate über Versionen" (ch4): Median-Linie stürzt an vielen sample-armen Versionen wiederholt auf 0 % ab (visuell drastisch bei v0.3.38/68/103, light-tradeoff.png/b2-tradeoff-section-light.png). Vorschlag: nur Versionen mit n≥Schwelle plotten oder gleitender Median; Quick-Win: 0-Werte bei Klein-N ausgrauen/interpolieren.
ch5/ch6-Überladung bei 50 Versionen (E8-Bezug). Balken auf x-Achse unlesbar klein, 2–3 dominieren, Achsenlabels gedrängt/rotiert, Cache-Segment kaum sichtbar (light-cost.png). Vorschlag: letzte ~15–20 Versionen defaulten (wie Trade-off-Scatter „letzte 10"), Rest per Toggle; oder Log-Skala. Teilweise bekannt (E8-Aggregation).
N-Guard-Inkonsistenz der Insight-Headlines.ins-overview caveatet Klein-N korrekt („n=18 — zu klein für Zielvergleich"), ins-quality/ins-compare haben KEINEN N-Guard auf den Endpunkten. Live: „Niedrigste Akzeptanz: Hrastinski 33,3 % (1 evaluierte Notes)" — beruht auf 1 Note, als saubere Headline präsentiert (Apophenie-Risiko). Vorschlag: Endpunkte mit n<Schwelle ausschließen oder „(n=X, unsicher)" annotieren wie in ins-overview.
IA: Sektion „Trade-off" fehlbenannt + „Lauf debuggen" ohne Heimat. Sektion „Trade-off" enthält ch3 (Skalierungs-Scatter) + ch4 (Akzeptanz-Trend) — keins von beiden ist ein Trade-off. Der spec-vorgesehene Pareto-Scatter Coverage×Halluzination (ch2) sitzt stattdessen unter „Qualität"; die vorgesehene Inbox-Rate-Bar fehlt ganz. Zusätzlich: keine Sektion erzählt die Lauf-Story (Funnel, Refine-Loop, Drop-Gründe) — deckt sich mit Diagnose-Bündel-Issue (d). Vorschlag: Sektion umbenennen („Skalierung & Verlauf") oder Charts sektionsgerecht sortieren; optional neue „Lauf"-Sektion bei aktivem Run-Filter.
Filter-Persistenz/URL-Sync fehlt (E7-Bezug) + einseitige Dropdown-Scopes. Reload (F5) setzt alle 5 Filter still auf „Alle" zurück (Theme/Sidebar persistieren via localStorage, Filter nicht); kein URL-Sync (_globalFilters wird nie in die URL geschrieben, Client liest URL-Query-Params auf / gar nicht — nur /data.json wertet sie serverseitig aus). Zusätzlich: PDF-Dropdown zeigt immer alle 42 PDFs unabhängig von gewählter Version/Lauf (eval_dashboard_server.py:595, _all_pdfs_opts nicht gefiltert) → wählbare 0-Treffer-Sackgassen (z. B. „Afzal" bei pver=v0.3.143, existiert nur ≤v0.3.60). Vorschlag: Filter analog theme-mode in localStorage oder URLSearchParams spiegeln; PDF-Optionen symmetrisch auf aktive Version/Lauf einschränken (wie _pver_rows bereits umgekehrt tut).
Escape schließt den Note-Drawer nicht. Kein keydown/Escape-Handler im HTML; Drawer nur per „schließen"-Button schließbar (sonst robust: übersteht Mehrfachklick + Filter-Wechsel mit Stale-Banner). Vorschlag: document.addEventListener('keydown', e=>{ if(e.key==='Escape') _closeNoteDrawer(); }).
Toter Tab-Stop „Automatisch akzeptiert". Kachel wird als <button type="button"> ohne onclick/disabled gerendert (Klasse no-spark) — fokussierbar mit Fokus-Ring, aber Enter/Space lösen nichts aus (anders als die 6 anderen KPI-Kacheln, die die Versions-Sparkline öffnen). Für Tastatur-Nutzer nicht von „reagiert nicht" unterscheidbar. Vorschlag: als <div> rendern oder tabindex="-1"/aria-disabled setzen.
Erstnutzer-Jargon. „Akzeptanz" meint Routing (automatisch in den Vault übernommen), nicht „Eval bestanden" — der M3-Fall (100 % Akzeptanz, 0 % Qualität bekannt, siehe 0-Eval-Issue) entlarvt die Fehldeutungsgefahr. Zusätzlich unerklärter Jargon: Agent-Rollen Cross-Ref/Critic/Verifier/Planner/Extractor ohne Tooltip, zwei Versionsschemata v4.1 (Eval) vs. v0.3.143 (Pipeline) nebeneinander ohne Erklärung. Vorschlag: Kachel-Untertitel „= automatisch in den Vault übernommen (nicht: Eval-Ergebnis)"; kurze Rollen-Tooltips an Agent-Namen.
Einheiten-Spacing inkonsistent. Totals-Strip: 10,07M, 48,0h (ohne Leerzeichen) vs. KPI-Kacheln: 1,51 M, 4,4 h (mit Leerzeichen). Vorschlag: einheitliches Spacing in _fmtDE/Anzeige.
Kontext
Sammel-Issue aus der 3-Runden-UX-Review (2026-07-13). Bündelt Polish-Funde, die NICHT bereits durch eigene Issues abgedeckt sind (Filter-Badges, 0-Eval-Lauf, Token-Totals siehe separate Issues; Mojibake siehe #27; Duplikat-Basen/Test-Fixtures/
—-Werte siehe #228/#229/#231/#232/#233; Profil siehe #235).Checkliste
light-tradeoff.png/b2-tradeoff-section-light.png). Vorschlag: nur Versionen mit n≥Schwelle plotten oder gleitender Median; Quick-Win: 0-Werte bei Klein-N ausgrauen/interpolieren.light-cost.png). Vorschlag: letzte ~15–20 Versionen defaulten (wie Trade-off-Scatter „letzte 10"), Rest per Toggle; oder Log-Skala. Teilweise bekannt (E8-Aggregation).ins-overviewcaveatet Klein-N korrekt („n=18 — zu klein für Zielvergleich"),ins-quality/ins-comparehaben KEINEN N-Guard auf den Endpunkten. Live: „Niedrigste Akzeptanz: Hrastinski 33,3 % (1 evaluierte Notes)" — beruht auf 1 Note, als saubere Headline präsentiert (Apophenie-Risiko). Vorschlag: Endpunkte mit n<Schwelle ausschließen oder „(n=X, unsicher)" annotieren wie inins-overview.localStorage, Filter nicht); kein URL-Sync (_globalFilterswird nie in die URL geschrieben, Client liest URL-Query-Params auf/gar nicht — nur/data.jsonwertet sie serverseitig aus). Zusätzlich: PDF-Dropdown zeigt immer alle 42 PDFs unabhängig von gewählter Version/Lauf (eval_dashboard_server.py:595,_all_pdfs_optsnicht gefiltert) → wählbare 0-Treffer-Sackgassen (z. B. „Afzal" beipver=v0.3.143, existiert nur ≤v0.3.60). Vorschlag: Filter analogtheme-modeinlocalStorageoderURLSearchParamsspiegeln; PDF-Optionen symmetrisch auf aktive Version/Lauf einschränken (wie_pver_rowsbereits umgekehrt tut).keydown/Escape-Handler im HTML; Drawer nur per „schließen"-Button schließbar (sonst robust: übersteht Mehrfachklick + Filter-Wechsel mit Stale-Banner). Vorschlag:document.addEventListener('keydown', e=>{ if(e.key==='Escape') _closeNoteDrawer(); }).<button type="button">ohneonclick/disabledgerendert (Klasseno-spark) — fokussierbar mit Fokus-Ring, aber Enter/Space lösen nichts aus (anders als die 6 anderen KPI-Kacheln, die die Versions-Sparkline öffnen). Für Tastatur-Nutzer nicht von „reagiert nicht" unterscheidbar. Vorschlag: als<div>rendern odertabindex="-1"/aria-disabledsetzen.10,07M,48,0h(ohne Leerzeichen) vs. KPI-Kacheln:1,51 M,4,4 h(mit Leerzeichen). Vorschlag: einheitliches Spacing in_fmtDE/Anzeige.ins-comparebei n=1: „1 evaluierte Notes" statt „1 evaluierte Note". Vorschlag:${n===1?'Note':'Notes'}.Nicht mit ausgearbeitet (Referenz)
Truncierte ch1-PDF-Labels, fehlendes Lade-Feedback bei Filter-Wechsel, Tooltip-Reihenfolge Totals-Strip/Quality-KPIs, KPI-Tooltips nur hover-fokussierbar,
ins-cost-Versions-Ären-Mischung (v0.3.56 neben Aktuell-Daten),ins-overview-Caveat-Platzierung missverständlich, Spec-Drift Compare-/Kosten-Sektion (Duration/Cache-Hit/Inbox-Rate laut Spec vs. Ist) — Details siehe R1–R3-Reports, niedrige Priorität / teils bewusst zurückgestellt (Issue #36).Quelle: Dashboard-Untersuchung 2026-07-13, 3 Runden Opus-Review (UX + Messlauf-Diagnose), Funde adversarial verifiziert.