codeburn/mac/Sources/CodeBurnMenubar
AgentSeal 6b6b6b8df6 feat(menubar): Claude config selector, hardened (supersedes #635)
Scopes the menubar to one Claude config for multi-config (CLAUDE_CONFIG_DIRS)
setups, with All as the default. Rebased onto main and fixed the review
findings from the original #635:

- Fix a TS2206 build break (a 'type' modifier inside an import type block).
- Reject --claude-config-source with a non-Claude --provider, and scan Claude
  only in the scoped branch (a config is Claude-only): fixes provider data
  leaking into a scoped query and avoids parsing every provider's corpus.
- Scope the macOS menu-bar figure to the selected config (badge matched the
  popover), clear the selection when switching to a non-Claude provider tab,
  and stop the on-disk badge fallback from showing an unscoped number while
  scoped.
- Tag Claude Desktop / Cowork sessions as their own 'claude-desktop' source so
  they are a selectable bucket instead of silently vanishing from per-config
  views (sum of options now equals All).
- Skip the redundant Claude discovery walk for plain single-config users while
  keeping idle configs and Claude Desktop selectable.

Reviewed by Codex 5.6; all findings addressed. Full suite: 1581 TS tests, 76
Swift tests, tsc clean.
2026-07-10 01:44:51 +02:00
..
Data feat(menubar): Claude config selector, hardened (supersedes #635) 2026-07-10 01:44:51 +02:00
Security fix(menubar): cut idle energy by gating spawns on popover, power, and display state 2026-07-09 22:47:30 +02:00
Theme Harden menubar: fix refresh loop, concurrency, data sync, and edge cases 2026-05-01 08:01:25 -07:00
Views feat(menubar): Claude config selector, hardened (supersedes #635) 2026-07-10 01:44:51 +02:00
AppStore.swift feat(menubar): Claude config selector, hardened (supersedes #635) 2026-07-10 01:44:51 +02:00
AppVersion.swift Normalize menubar version display 2026-05-11 11:21:39 -07:00
CodeBurnApp.swift feat(menubar): Claude config selector, hardened (supersedes #635) 2026-07-10 01:44:51 +02:00
CurrencyState.swift feat: add devin provider (#444) 2026-06-09 21:58:31 +02:00
MenubarScope.swift feat(menubar): add Local/Combined usage toggle (#566) (#568) 2026-06-28 22:01:01 +02:00
RefreshCadence.swift feat(menubar): user-selectable usage refresh cadence (Auto / 1m / 5m / 15m / Manual) 2026-07-09 22:48:07 +02:00