Repository navigation
Conversation
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 15 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
TypeSafe and V0 now use the Mac #111111, which vanishes on the dark Settings window and the dark floating bar. ProviderIcon and the float bar pills now add a lifted tint (brand mixed toward white until 3:1 on #222222) for brands under 1.5:1 on #222222; dark scopes use it, light scopes, including the tray card, keep the exact Mac color. The luminance math moves to lib/color.ts and menuSelection reuses it.
|
Adversarial validation of this PR. I pushed three commits (da969f3..db07891). The fix. The Mac palette makes TypeSafe and V0 #111111. On the dark surfaces (the float bar's default floating glass, and Settings > Providers in the sidebar and detail header), their marks almost disappeared:
Commit 482404e adds
After the fix (computed styles plus real cua-driver pixels, secondary monitor, synthetic scenario packs only):
Proof (local, not committed): Checks on db07891 (includes main #811 and #816):
Other checks:
Pre-existing, not changed here:
|
Summary
Card PR 4 of the Mac-parity port. Provider brand colors on Windows now match Mac CodexBar 0.70.0 for tray-card bars, provider icons and chart series (spec
tray-card-spec.md§4, §6.2 item 4, §7.5). Vercel keeps#737373(user decision, 2026-10-10).--provider-accentis still always set on the card root (from #813).The palette has three copies: Rust
ProviderId::brand_color, TSPROVIDER_ICON_REGISTRYand the--chart-<id>tokens instyles.css.providerIcons.test.tschecks that they agree. This PR changes all three together, so no new source of truth was needed.Color changes
#FF5C35#3184FF#13EF93#6467F2#2563EB#3370FF#111827#10A37F#F55036#F56844#4F46E5#4934E1#5D87FF#F27027#0EA5E9#4C89F0#4F46E5#24B47E#8B95B0#888888#10A37F#0F826E#6B7280#6467F2#1FB8CD#20B2AA#5D5FEF#5D5CDE#2563EB#10B981#0EA5E9#2975DB#999999#2196F2#8B5CF6#F56647#2563EB#111111#111827#111111#6366F1#938BB4#14B8A6#10A37F#22C55E#34E8BB#084CCF#084EFF#111827--mac-text); icon stays#111827#737373#737373, Mac uses white)Chart tokens: deepgram, grok, groq, llmproxy and windsurf follow the new colors. xAI used to share
--chart-grok. Grok's token is no longer black, so xAI gets its own--chart-xai(#8E8E93).MenuCardnow takes its bar color fromproviderBarAccent(id, override). It returns the user's accent override if one is set, then the label color for label-styled providers (ElevenLabs), then the brand color.Test changes and why
provider.rs.MAC_PARITY_ACCENTS(id, old, new) table.mac_parity_accents_are_pinnedtest. It pins every new hex and also asserts that Vercel stays#737373.#FFFFFFand#222222.mac_parity_accents_do_not_materially_regress_contrastapplies this rule to all 24 changes.MAC_PARITY_CONTRAST_EXEMPTIONS, because they are the exact Mac colors and the user chose Mac colors:#222222: 3.08 to 1.19.passes != exempt. An exemption that becomes unnecessary therefore also fails, so the list cannot grow silently..provider-icon--letter,styles.css). TypeSafe ("T") is one of them, so on dark surfaces its glyph drops from 3.08 to 1.19 against#222222. v0 ("V") was already near-black (#111827), so it was already in this state.providerIcons.test.ts.#737373.#111827).chartPalette.test.ts. New test that xai and grok map to separate tokens.Commands run
cargo fmt --allcargo test --manifest-path rust/Cargo.tomlcargo clippy --manifest-path rust/Cargo.toml --all-targets -- -D warningscargo test --manifest-path apps/desktop-tauri/src-tauri/Cargo.tomlcargo clippy --manifest-path apps/desktop-tauri/src-tauri/Cargo.toml --all-targets -- -D warningspnpm test(apps/desktop-tauri)pnpm run buildProof
I built a local desktop exe twice, once from main (
f54421c3b) and once from this branch, and captured the tray panel for 18 synthetic-data packs with each: Claude, Codex, OpenRouter, Copilot, Cursor, Vercel, Gemini, Kilo, Qoder, Chutes, T3Chat, ElevenLabs, Grok, Windsurf, Deepgram, LLMProxy, TypeSafe and StepFun.For each pack, a side-by-side sheet shows Mac 0.70.0, Windows main and this PR. I counted pixels near the old and new hex in each Windows panel (old px / new px):
Sheets (Mac 0.70.0 | Windows main | this PR), at
W:/mac-parity/report/card-palette/<Pack>.pngon the proof host: Claude, Codex, OpenRouter, Copilot, Cursor, Vercel, Gemini, Kilo, Qoder, Chutes, T3Chat, ElevenLabs, Grok, Windsurf, Deepgram, LLMProxy, TypeSafe, StepFun.Limit: no CUA tray check. The captures show the WebView content, captured through CDP. I did not run a CUA check of the native tray. Only two places call Rust
brand_color:Settings::effective_accent_color(rust/src/settings.rs), which nothing calls, and a Hyper test. Nothing underrust/src/tray/,tray_bridge.rsorfloatbar/calls it. So the tray icon pixels should be unchanged. The float bar border and the provider icons take their color from the TS registry, so they do change.Open questions
#111111, as on the Mac. Their icon tints are almost invisible on dark surfaces such as the Settings sidebar and the float bar. v0 and Grok were already near-black (#111827) before this PR.#DEDEE2card. This matches the Mac.currentColor. Thepalette-basecapture shows it was already the case on main.