codeburn/mac/Sources/CodeBurnMenubar
iamtoruk ce0e18eb23 Fix per-provider data loss, division-by-zero, and decode fragility
- Per-provider multi-day queries only merged cost/calls from cache,
  dropping categories/models/sessions/tokens. Remove broken cache
  shortcut and always do full parse for per-provider periods.
- Remove per-provider daily history double-counting from overlapping
  cache + live data.
- Guard maxCost against zero in ActivitySection and ModelsSection to
  prevent NaN in bar width calculations.
- Use offset-based ForEach ID in BarTooltipCard to avoid duplicate
  model name collisions.
- Make cacheHitPercent, topActivities, topModels, providers use
  decodeIfPresent for backward compat with older CLI versions.
- Skip currency switch when FX rate fetch fails with no cache,
  preventing rate/symbol desync.
- Use readSessionFile in Gemini parser for 128MB size cap.
- Truncate Codex userMessage to 500 chars like other providers.
2026-05-19 09:56:28 -07:00
..
Data Fix per-provider data loss, division-by-zero, and decode fragility 2026-05-19 09:56:28 -07:00
Security Fix menubar PATH discovery for nvm/volta/asdf/npm-global installs 2026-05-16 08:54:45 -07:00
Theme Harden menubar: fix refresh loop, concurrency, data sync, and edge cases 2026-05-01 08:01:25 -07:00
Views Fix per-provider data loss, division-by-zero, and decode fragility 2026-05-19 09:56:28 -07:00
AppStore.swift Add Optimize tab, token display modes, daily budget alerts, and project drill-down (#349) 2026-05-18 14:51:15 -07:00
AppVersion.swift Normalize menubar version display 2026-05-11 11:21:39 -07:00
CodeBurnApp.swift Add Optimize tab, token display modes, daily budget alerts, and project drill-down (#349) 2026-05-18 14:51:15 -07:00
CurrencyState.swift Harden menubar: fix refresh loop, concurrency, data sync, and edge cases 2026-05-01 08:01:25 -07:00