From a53b56bbf6cc16422831765ca4f438059feb4b79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Padez?= Date: Wed, 19 Aug 2026 23:24:19 +0000 Subject: [PATCH] chat header: one green, and it is the token MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit the connection dot was `bg-green-500` and the bell followed it there to match. both are `success` now — #16a34a where the palette value was #22c55e. the raw palette value was the wrong thing for either to hold. tone.ts already says why: once a view can reach for any of tailwind's twenty-two palettes, green stops reading as "open" and starts reading as "the author liked green here". two elements in one header meaning the same thing should say so by sharing a token, not by two people picking the same number. --- .../officerdev/src/apps/ChatHistory/ChatDetailPanel.tsx | 2 +- .../officerdev/src/apps/ChatHistory/NotifyMenu.tsx | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/workspaces/officerdev/src/apps/ChatHistory/ChatDetailPanel.tsx b/src/workspaces/officerdev/src/apps/ChatHistory/ChatDetailPanel.tsx index 33e369ec..ba8b5ea7 100644 --- a/src/workspaces/officerdev/src/apps/ChatHistory/ChatDetailPanel.tsx +++ b/src/workspaces/officerdev/src/apps/ChatHistory/ChatDetailPanel.tsx @@ -135,7 +135,7 @@ function DetailBar({ ) : isGenerating ? ( ) : ( - + )} {!isConnected ? 'Disconnected' : isGenerating ? 'Working...' : ''} {isConnected && onDisconnect && ( diff --git a/src/workspaces/officerdev/src/apps/ChatHistory/NotifyMenu.tsx b/src/workspaces/officerdev/src/apps/ChatHistory/NotifyMenu.tsx index 2026696e..3017c2ed 100644 --- a/src/workspaces/officerdev/src/apps/ChatHistory/NotifyMenu.tsx +++ b/src/workspaces/officerdev/src/apps/ChatHistory/NotifyMenu.tsx @@ -13,16 +13,16 @@ const OPTIONS: { value: NotifyPreference; label: string }[] = [ /** * The bell says what it will do without being opened. * - * Green is `green-500` on purpose rather than `text-success` — it has to be the SAME green as the - * connection dot two elements away, and a semantic token that drifted from it would leave two greens in - * one header meaning two different things. + * `text-success`, and the connection dot two elements away is `bg-success` — the same token, so they + * cannot drift into two greens in one header meaning two different things. Both were the raw `green-500` + * until 2026-08-19; the token is `#16a34a` where the palette value was `#22c55e`. * * Amber for `input_needed` because it is the conditional setting: it will speak, but only sometimes. * Muted for `none`, which is also the only state that draws a struck-through bell — colour alone is not * a state anyone should have to learn. */ const BELL_TONE: Record = { - every_turn: 'text-green-500', + every_turn: 'text-success', input_needed: 'text-warning', none: 'text-muted-foreground', };