Skip to content

Rename Cursor usage split to Cursor and Third Party - #2951

Merged
steipete merged 3 commits into
steipete:mainfrom
baanish:cursor/cursor-third-party-labels-8ccb
Aug 16, 2026
Merged

Rename Cursor usage split to Cursor and Third Party#2951
steipete merged 3 commits into
steipete:mainfrom
baanish:cursor/cursor-third-party-labels-8ccb

Conversation

@baanish

@baanish baanish commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

Cursor’s dashboard now labels the included-usage split as Cursor and Third Party (previously Auto / API).

This updates the CodexBar menu, widget, and menu-bar window titles to match. Mapping is unchanged: Total stays Total; the secondary window is Cursor; the tertiary window is Third Party.

Test plan

  • Focused macOS assertions updated in CursorMenuCardModelTests and UsageStoreWidgetSnapshotTests
  • Linux: swift test --filter 'Cursor usage split labels' (descriptor metadata)
  • AppKit menu/widget UI not exercised here (Linux Cloud Agent; no macOS AppKit)
Open in Web Open in Cursor 

cursoragent and others added 3 commits August 15, 2026 08:39
Co-authored-by: aanishbhirud <aanishbhirud@gmail.com>
Co-authored-by: aanishbhirud <aanishbhirud@gmail.com>
Co-authored-by: aanishbhirud <aanishbhirud@gmail.com>
@clawsweeper

clawsweeper Bot commented Aug 15, 2026

Copy link
Copy Markdown

🦞👀
ClawSweeper picked this up.

Pull request received. I will update this pull request when review starts.

@baanish

baanish commented Aug 15, 2026

Copy link
Copy Markdown
Contributor Author

Codexbar Pre-patch:
image

Cursor dashboard:
image

No post patch screenshot as I didn't have a mac handy to install a dev build to.

@clawsweeper clawsweeper Bot added P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. labels Aug 15, 2026
@clawsweeper

clawsweeper Bot commented Aug 15, 2026

Copy link
Copy Markdown

Codex review: needs real behavior proof before merge. Reviewed August 15, 2026, 4:51 AM ET / 08:51 UTC.

ClawSweeper review

What this changes

The PR updates Cursor usage-window labels from Auto/API to Cursor/Third Party across provider metadata, UI tests, Linux descriptor coverage, and documentation.

Merge readiness

Blocked until real behavior proof is added - 3 items remain

Current main still exposes the old Auto/API labels, so this update remains necessary. The patch is coherent and narrowly scoped, but needs after-fix macOS behavior proof before merge.

Priority: P3
Reviewed head: 65f4df5ca20d77e24c1a6faaaf80a00da8c77adc

Review scores

Measure Result What it means
Overall readiness 🧂 unranked krab (1/6) The patch is narrowly scoped and has focused coverage, but it lacks required after-fix real behavior proof.
Proof confidence 🧂 unranked krab (1/6) Needs real behavior proof before merge: No after-fix runtime evidence is provided for the updated menu, widget, or menu-bar-window labels; the PR body says AppKit UI was not exercised. After adding proof, update the PR body; ClawSweeper should re-review automatically. If it does not, the PR author or someone with repository write access can comment @clawsweeper re-review.
Patch quality 🐚 platinum hermit (4/6) No actionable review findings were identified.

Verification

Check Result Evidence
Real behavior Needs proof Needs real behavior proof before merge: No after-fix runtime evidence is provided for the updated menu, widget, or menu-bar-window labels; the PR body says AppKit UI was not exercised. After adding proof, update the PR body; ClawSweeper should re-review automatically. If it does not, the PR author or someone with repository write access can comment @clawsweeper re-review.
Evidence reviewed 4 items Current main retains old labels: The Cursor provider descriptor defines the secondary and tertiary labels as Auto and API.
Shared rendering path: Menu and generic presentation labels derive from provider metadata, making the descriptor the shared label source for the affected displays.
Current-label provenance: Blame attributes the current descriptor labels to the release commit containing v0.50.0; current main is newer but retains these labels.
Findings None None.
Security None None.

How this fits together

Cursor usage is fetched into primary, secondary, and tertiary quota windows. The provider descriptor supplies their labels to the menu card, widget snapshot, and menu-bar display layers.

flowchart LR
A[Cursor dashboard usage] --> B[Usage snapshot]
B --> C[Cursor provider descriptor]
C --> D[Menu card]
C --> E[Widget snapshot]
C --> F[Menu bar display]
Loading

Before merge

  • Add real behavior proof - Needs real behavior proof before merge: No after-fix runtime evidence is provided for the updated menu, widget, or menu-bar-window labels; the PR body says AppKit UI was not exercised. After adding proof, update the PR body; ClawSweeper should re-review automatically. If it does not, the PR author or someone with repository write access can comment @clawsweeper re-review.
  • Resolve merge risk (P1) - The updated menu, widget, and menu-bar labels have not been observed in a freshly built macOS bundle; the PR body confirms those AppKit paths were not exercised.
  • Complete next step (P2) - Contributor-supplied after-fix macOS behavior proof is required before a human merge decision; no narrow code repair is identified.
Agent review details

Security

None.

Review metrics

Metric Value Why it matters
Patch size 15 added, 7 removed across 5 files The change is limited to shared labels, focused coverage, and Cursor documentation.
Production vs test LOC production +2/-2, tests +11/-3 The production metadata edit has menu-card, widget, and Linux descriptor coverage.

Merge-risk options

Maintainer options:

  1. Decide the mitigation before merge
    Keep the shared descriptor as the terminology source, retain the focused assertions, and attach redacted macOS after-fix evidence before merging.
  2. Pause or close
    Do not merge this PR until maintainers decide whether the risk is worth taking.

Technical review

Best possible solution:

Keep the shared descriptor as the terminology source, retain the focused assertions, and attach redacted macOS after-fix evidence before merging.

Do we have a high-confidence way to reproduce the issue?

Not applicable as a bug reproduction: this is a terminology alignment, and current main confirms the old labels.

Is this the best way to solve the issue?

Yes. Updating the shared Cursor provider metadata is the narrowest way to update all label consumers without duplicating terminology.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against f15f142a7787.

Labels

Label changes:

  • add P3: This is a low-risk terminology update for existing Cursor usage displays.
  • add rating: 🧂 unranked krab: Overall readiness is 🧂 unranked krab; proof is 🧂 unranked krab and patch quality is 🐚 platinum hermit.
  • add status: 📣 needs proof: The PR needs real behavior proof before ClawSweeper can clear the contributor ask. Needs real behavior proof before merge: No after-fix runtime evidence is provided for the updated menu, widget, or menu-bar-window labels; the PR body says AppKit UI was not exercised. After adding proof, update the PR body; ClawSweeper should re-review automatically. If it does not, the PR author or someone with repository write access can comment @clawsweeper re-review.

Label justifications:

  • P3: This is a low-risk terminology update for existing Cursor usage displays.
  • rating: 🧂 unranked krab: Overall readiness is 🧂 unranked krab; proof is 🧂 unranked krab and patch quality is 🐚 platinum hermit.
  • status: 📣 needs proof: The PR needs real behavior proof before ClawSweeper can clear the contributor ask. Needs real behavior proof before merge: No after-fix runtime evidence is provided for the updated menu, widget, or menu-bar-window labels; the PR body says AppKit UI was not exercised. After adding proof, update the PR body; ClawSweeper should re-review automatically. If it does not, the PR author or someone with repository write access can comment @clawsweeper re-review.

Evidence

What I checked:

Likely related people:

  • Peter Steinberger: Current-main blame ties the descriptor's existing label metadata to this release commit; sampled history for the file is dominated by this author. (role: recent area contributor; confidence: medium; commits: 0e453c4a5b2a; files: Sources/CodexBarCore/Providers/Cursor/CursorProviderDescriptor.swift, docs/cursor.md)

Rank-up moves

Optional improvements that raise the rating; they are not merge blockers.

  • Post redacted evidence from a freshly built macOS bundle showing the updated Cursor labels in the affected UI.
  • After updating the PR body with proof, request a fresh review if one is not triggered automatically.

Rating scale

Score Internal tier Crab rank Meaning
6/6 S 🦀 challenger crab Exceptional readiness
5/6 A 🦞 diamond lobster Very strong readiness
4/6 B 🐚 platinum hermit Good normal PR; ordinary maintainer review
3/6 C 🦐 gold shrimp Useful, but confidence is limited
2/6 D 🦪 silver shellfish Proof or implementation needs work
1/6 F 🧂 unranked krab Not merge-ready
N/A NA 🌊 off-meta tidepool Rating does not apply

Overall follows the weaker of proof and patch quality.
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

Workflow

  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

@steipete
steipete merged commit 3e556cd into steipete:main Aug 16, 2026
9 checks passed
steipete added a commit that referenced this pull request Aug 16, 2026
Finesssee added a commit to nesszer/Win-CodexBar that referenced this pull request Aug 18, 2026
* Port upstream 0.50.1: Cursor rename + Ollama cookie stripping (steipete#2951, steipete#2949)

* Port upstream 0.50.1: OpenCode Go session+weekly pace in CLI (steipete#2957)

* Port upstream 0.50.1: chart axis label centering (steipete#2974)

* Port upstream 0.50.1: Kiro re-authenticate via kiro-cli login (steipete#2340)

* Port upstream 0.50.1: serve identity follows app redaction per-request (steipete#2960)

* Port upstream 0.50.1: Codex routed pricing, auth.json read-only, known-zero history, Antigravity dashboard lanes, Claude OAuth revoked detection

steipete#2946 Codex routed models pricing — codex_routed_provider() + strip_route_prefix()
    in cost_pricing.rs; deepseek/, kimi/, opencode/ routes price against
    matching models.dev provider; unknown provider/ prefixes return None.
steipete#2944 Codex auth.json read-only during refresh — codex_external_oauth_sources_allowed
    setting (default OFF); is_external_oauth + last_refresh fields on
    CodexCredentials; enforce_external_oauth_gate (8-day staleness window).
steipete#2932 Codex known-zero history — known_zero field on CostSummary; set in both
    cache-debounce and full-scan paths (history_coverage_established &&
    sessions_count == 0); knownZero JSON field + CLI text update.
steipete#2963 Antigravity dashboard lanes — quota-bucket dedup in parse_user_status;
    models sharing the same (remaining_fraction, reset_time) collapse to one
    lane.
steipete#2516 Claude revoked vs missing OAuth — ProviderError::OAuthRevoked variant;
    revocation detection (401/403 with revoked/invalid_grant/token_revoked);
    15-min CLI result cache (LazyLock<Mutex<Option<CachedCliResult>>>);
    fetch_via_auto returns cached CLI result when OAuth revoked, and stale
    cache when all live sources fail.

* Port upstream 0.50.1: Mistral PAYG spend, cost-summary display style, per-provider accent color

Item 1 — Mistral PAYG current-month API spend (steipete#2821, steipete#2947):
- Add MonthlyPlan variant to MetricPreference enum
- Add currency_symbol field to CostSnapshot with with_currency_symbol builder
- Set currency_symbol from Mistral billing API response
- Add MonthlyPlan to bridge label/parse, tray selected_metric_percent (None = no bar)
- Show formatted cost amount in provider_status_label for MonthlyPlan
- Add format_cost_amount helper in bridge.rs
- Add Mistral monthly spend row in MenuCardDetails
- Add monthlyPlan option to MenuBarMetricSection for Mistral

Item 2 — Menu cost-summary display style per provider (steipete#2976):
- Add CostSummaryDisplayStyle enum (Compact/Detailed/Hidden) in types.rs
- Add cost_summary_display_style field to Settings + Default + RawSettings round-trip
- Add to SettingsSnapshot bridge + SettingsUpdate + apply in Tauri commands
- Add bridge label/parse functions
- Apply in MenuCardDetails: hidden hides cost section, compact shows used/limit only
- Update describeCard to filter hasCost for hidden style
- Add Select control in UsageSpendTab

Item 3 — Per-provider accent color override (steipete#2972):
- Add accent_color field to ProviderConfig
- Add brand_color(ProviderId) function in provider.rs (mirrors frontend registry)
- Add accent_color/set_accent_color/effective_accent_color accessors in Settings
- Add set/get/get_effective Tauri commands + normalize_hex_accent_color validator
- Add providerAccentColors map to SettingsSnapshot bridge
- Add setProviderAccentColor/getProviderAccentColor/getProviderEffectiveAccentColor to tauri.ts
- Create AccentColorSection component (hex input, color picker, reset button)
- Inject --provider-accent CSS variable on MenuCard article and ChartsSection
- Update menu-metric__bar-fill and chart colors to use --provider-accent fallback
- Update chartPalette providerCostColor/providerCreditsColor fallback chain
- Pass providerAccentColors through TrayPanel/PopOutPanel/ProvidersTab/ProviderDetailPane

Also:
- Add 11 new locale keys to all 7 .ftl files + keys.ts
- Add costSummaryDisplayStyle + providerAccentColors to all test mock SettingsSnapshot
- Update chartPalette tests for --provider-accent fallback

* Resolve merge conflicts and fix gate checks

* Thermo-nuclear: extract ollama cookies, codex pricing, simplify accent color

* fix: correct serde attribute placement on currency_symbol after rebase
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants