Repository navigation
Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Priority: ➖ Normal Severity of issue fixed: Medium Merge Risk: ⚪ Minimal · up to
|
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes — the whole PR at 455b1e3 (single commit, 24 files): Codex unlimited-plan detection and its display across the status bar.
- Unlimited wire detection: reads
credits.unlimitedfrom both the app-serveraccount/rateLimits/readsnapshot and thewham/usagebackend response, and surfacesplanTypefrom the RPC snapshot. An empty non-unlimited RPC reply now errors ('RPC response did not include rate-limit windows') instead of settling a silent emptyok. - Backend metadata supplement:
supplementCodexSessionWindowmergesplanType/isUnlimitedinto weekly-only RPC results instead of only carrying reset credits. - Service retention:
isUnlimitedcounts as prior data for stale fallback and lets an outgoing unlimited account be cached across an account switch. - Renderer: status-bar segment, inline bars, usage-roster row, and tooltip render "Unlimited" and hide percentage windows;
isUnavailableInactiveUsageandisProviderConfiguredtreat unlimited as present data. - i18n: three new
en.jsonkeys (StatusBar,UsageRosterPanel,tooltipnamespaces).
I verified the two load-bearing external wire shapes against the openai/codex source (app-server RateLimitSnapshot nests credits/planType; /wham/usage flattens top-level plan_type + credits.unlimited), and confirmed the new tests exercise the new behavior (the WSL/RPC unlimited tests fail without the change). All 888 tests in src/main/rate-limits and src/renderer/src/components/status-bar pass, pnpm tc:web is clean, and the changed-code quality gate reports 0 findings. pnpm tc:node was OOM-killed in this sandbox (exit 137), so it was not independently confirmed here.
Two intentional behavior changes worth being aware of (not defects): every Codex account now shows its plan name in the usage roster, and a non-unlimited RPC reply with no windows now falls through to the PTY fallback rather than showing a silent empty state.
DeepSeek Flash (free via Pullfrog for OSS) | 𝕏
# Conflicts: # src/renderer/src/i18n/locales/en.json
|
This comment has been minimized.
This comment has been minimized.
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
After merging main, the RPC probe and tooltip tests crossed their line limits. The missing-windows result reuses the Codex error-result helper, and the unlimited ProviderPanel test moves to its own file. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

ELI5
Codex Business accounts with unlimited usage can show “Refresh failed” because they have no percentage limits. This change shows “Codex · Business Unlimited” instead.
What Changed
Why
Missing percentage limits can also mean a failed response. Using Codex’s explicit unlimited flag avoids guessing from missing limits or a plan name, while keeping errors visible for accounts with limits.
Linked Issue
Fixes #15764
Visual Proof
Before — unlimited usage was treated as a refresh failure
After — the Business plan is shown as Unlimited
Testing
2026-10-14, macOS,
ORCA_BACKGROUND_LAUNCH=1. Mergedmainat5eda0a0dbdc0normally; HEAD703cd42b2c(#16323:5db26dfc26, identical source tree).pnpm typecheckand repository-wideoxlintfail only on a duplicatenowkey instructured-agent-session-message-options.ts. That file is unchanged here and fails the same way onmain(fix: a Claude model that's gone switches to the list's default when you send #27826, fix(native-chat): pass the clock to a recorded option pick #28571).Reproduce focused checks:
Screenshots are earlier feature evidence, not new captures. Not run: Bun tests, live account login, Linux/Windows/SSH, Electron builds, packaging, and full-repository lint/tests/build. GitHub workflows await maintainer approval (
action_required).AI Disclosure
OpenAI Codex (GPT-5.6, GPT-6 and GPT-6 Astra) was used to investigate, implement and test this change. Claude Opus 5.5 (
claude-opus-5-5) in Claude Code was used for the 2026-10-14 main merge, conflict resolution, line-limit fixes and validation; the diff and validation output were checked.Review
Agent skill upstream boundary
Notes
#15823 fixed app-server compatibility and #25408 added credit balances. This PR still handles unlimited-plan mapping, account caching and display through refresh errors.
Ensure no issues in: Security, Cross-platoform support (Linux, Windows, Mac), Remote SSH, Mobile, general backwards compatibility, performance
Author
X (Twitter): @hgijeon
Checklist
N/Awith reasonpnpm lint,pnpm typecheck,pnpm test, andpnpm buildpass (or CI will cover; local preferred)🤖 Generated with Claude Code