codeburn/app/renderer/sections
reviewer 35f3e3cb5b sessions: reconcile mixed PR rows, harden v5 adoption, bound models
Round-2 review follow-ups.

- Mixed legacy/live category breakdown: a PR row that combines an expired
  legacy contribution (even-split, no turn data) with a live per-turn
  contribution now emits an explicit "Legacy estimate (no per-turn detail)"
  category carrying the legacy share, so the expansion reconciles to the row
  cost instead of silently dropping it. A legacy-only row still shows no
  breakdown.
- v5 adoption is now per cached file: one malformed entry is skipped instead
  of rejecting the whole v5 cache and dropping every valid expired PR session.
- The desktop "Other (N more PRs)" line moved to the table footer as a muted,
  separated summary rather than a sorted row.
- Row expansion resets when the PR set changes (period/provider/data), so a
  stale expansion cannot linger on a row that is gone.
- Payload models per row are capped to the top 4 by attributed cost, with a
  name-ascending tie-break; categories get the same stable tie-break.

Tests: mixed live+legacy reconciliation, legacy-only omission, model cap and
tie-break, corrupt-plus-valid v5 adoption, and the desktop expansion-reset.
2026-07-21 01:26:06 +02:00
..
Compare.test.tsx fix(app): accuracy batch A — provider scoping, honest chart axes, range threading, stale-error banner 2026-07-16 01:14:41 -07:00
Compare.tsx feat(app): refresh cadence, instant switching, cache coherence, telemetry v1 2026-07-16 11:47:05 -07:00
Models.test.tsx fix(app): models rows name their provider; picker shows all detected 2026-07-16 09:27:46 -07:00
Models.tsx feat(app): refresh cadence, instant switching, cache coherence, telemetry v1 2026-07-16 11:47:05 -07:00
Optimize.test.tsx feat(app): refresh cadence, instant switching, cache coherence, telemetry v1 2026-07-16 11:47:05 -07:00
Optimize.tsx feat(app): refresh cadence, instant switching, cache coherence, telemetry v1 2026-07-16 11:47:05 -07:00
Overview.test.tsx app: Workflow card on Overview and session titles in the Sessions view (#784) 2026-07-20 13:55:33 -07:00
Overview.tsx app: Workflow card on Overview and session titles in the Sessions view (#784) 2026-07-20 13:55:33 -07:00
Plans.test.tsx fix: audit batch — prefetch one-shot, turn-anchored day bucketing, warm-path collapse 2026-07-16 15:37:03 -07:00
Plans.tsx feat(app): refresh cadence, instant switching, cache coherence, telemetry v1 2026-07-16 11:47:05 -07:00
PullRequests.test.tsx sessions: reconcile mixed PR rows, harden v5 adoption, bound models 2026-07-21 01:26:06 +02:00
PullRequests.tsx sessions: reconcile mixed PR rows, harden v5 adoption, bound models 2026-07-21 01:26:06 +02:00
Sessions.test.tsx app: Workflow card on Overview and session titles in the Sessions view (#784) 2026-07-20 13:55:33 -07:00
Sessions.tsx app: Workflow card on Overview and session titles in the Sessions view (#784) 2026-07-20 13:55:33 -07:00
Settings.test.tsx fix(app): provider logos key on internal ids + monogram fallback 2026-07-16 09:27:46 -07:00
Settings.tsx app: Download button direct-downloads the update asset (#777) 2026-07-20 10:02:43 -07:00
Spend.test.tsx feat(app): Sessions provider quick-filter + Spend project inline expand 2026-07-16 02:49:17 -07:00
Spend.tsx app,dash: render pre-history days as no data, not a currency zero (#765) 2026-07-20 08:03:24 -07:00