Repository navigation
fix(menu-bar): keep colored provider icons spanning two rows - #5081
Conversation
|
🦞👀 Pull request received. I will update this pull request when review starts. ClawSweeper review completeClawSweeper finished reviewing this revision. The review result is being finalized. |
Codex Review Summary: ✅ CompletedThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex review: needs maintainer review before merge. What this changesKeep eligible colored provider icons spanning both custom layout rows, with additional Codex and Claude characterization coverage. Example: Claude uses Color by provider with Icon, Session Usage bar and Session reset on row one, and Weekly percentage and reset on row two.
Review scores
ProductKind: Bug fix · Worth it: Yes · Fix scope: Complete Merge readiness✅ Ready for maintainer review Keep open: this maintainer-authored PR makes a useful, focused rendering correction absent from current main; no actionable correctness or security defects were found. Priority: P2 Before mergeNone. FindingsNone. Tests
Agent review detailsHow this fits togetherThe menu-bar renderer combines saved layout tokens, provider usage, artwork and display options into an attributed title and optional image consumed by the status button and Settings preview. flowchart LR
A[Saved layout] --> D[Layout renderer]
B[Provider usage] --> D
C[Artwork and display options] --> D
D --> E[Attributed title and image]
E --> F[Status button]
E --> G[Settings preview]
Technical reviewBest possible solution: Retain the shared tint preparation and existing placement rules so eligible colored icons match monochrome geometry without changing provider data or saved layouts. Do we have a high-confidence way to reproduce the issue? Current main deterministically suppresses the separate leading image whenever provider tint is active, explaining the reported first-row icon; this review ran no target code. Is this the best way to solve the issue? Preparing tint through the existing image helper before placement addresses the rendering cause with no parallel owner, while preserving non-template warning artwork and existing contrast exclusions. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning medium; reviewed against 9ffcdb62b72c. Provenance checked
TestingProof path: in-process harness. SecurityNone. EvidenceWhat I checked:
Likely related people:
Preflight sourceSource unknown. Source comparison at the observed PR snapshot only. Completion is self-reported; body, policy, tests, execution, and report bytes are not verified. Review metrics
LabelsLabel changes:
Label justifications:
Rank-up movesOptional improvements that raise the rating; they are not merge blockers.
Rating scale6/6 🦀 challenger crab · 5/6 🦞 diamond lobster · 4/6 🐚 platinum hermit · 3/6 🦐 gold shrimp · 2/6 🦪 silver shellfish · 1/6 🧂 unranked krab. Overall follows the weaker of proof and patch quality; ✨ marks media proof (a screenshot, video, or linked artifact) that directly shows the changed behavior. WorkflowClawSweeper edits this one comment on every review. Comment Reviewed November 14, 2026, 1:52 AM ET / 06:52 UTC. |
# Conflicts: # docs/configuration.md
|
Landed in 5107b45. Provider-colored icons now stay full height beside both rows of a two-line layout, and the docs cover how Claude subscription dates can be unavailable when a web account check is challenged while OAuth quota keeps working. It ships in the next release. |
Provider coloring forced icons into the first line of custom two-line layouts, while the monochrome path could show a full-height leading icon. Keep eligible colored icons beside both rows by preparing the tint once and sharing it with inline rendering. Existing high-contrast, merged-provider-row, multiple-icon and icon-only-row behavior stays intact.
Also add characterization coverage for the reported Codex
Session 2% / Weekly 6%layout, including switching from Automatic to Session, and Claude OAuth quota followed by a challenged optional web account check. The Claude change documents and tests existing fail-soft behavior; it does not add a transport or billing fetch. Thanks @elpinguinofrio, @capt-riley and @mySebbe for the detailed reports.Validation:
colored.leadingIcon; the Codex 2%/6% fixture passed on unchanged production code.source Scripts/test_environment.shthenswift test --build-system native --jobs 2 -Xswiftc -gnone --filter 'MenuBarLayoutRendererTests|CodexMenuBarLayoutTests|ClaudeSubscription.*Tests|BrowserCookiePromptContractTests|ProviderSwitcherEventPeekGateTests'— 163 tests in 7 suites passed. Heavy commands ran under the shared build lock.make check, catalog precheck, andgit diff --checkpassed.No live account probe or running-app relaunch was used.
Fixes #5031
Refs #5037
Refs #5047