Files
hermes-desktop/docs/chat-chain-changes/2026-10-20-chat-cyber-dark-residue.md
T
toor 01d9e301fc
Build / build (push) Canceled after 0s
Playwright / browser (push) Canceled after 0s
initialize Electron desktop app and remove unused files
2026-10-25 01:09:01 +08:00

1.9 KiB
Raw Blame History

date, pr, feature, impact
date pr feature impact
2026-10-20 pending Chat and group chat dark-theme residue cleanup Message attachments, file cards, audio blocks, thinking headers and tool detail headers now paint from the CYBER token set instead of the light-theme black/white washes, so they are visible against the dark surfaces. Purely visual; no message shapes, socket events, or emission timing changed.

Light-theme residue in the chat surface

The CYBER theme is a single dark theme. A handful of surfaces inside the chat chain still carried the light-theme habit of tinting with rgba(0, 0, 0, α): a 4% black wash reads as "slightly grey" on white, and as "nothing at all" on --bg-input. Those surfaces had lost their fill entirely.

What changed

File Surface Before After
MarkdownRenderer.vue audio container, file card rgba(0,0,0,0.04) --bg-input
MarkdownRenderer.vue file card hover rgba(0,0,0,0.08) --bg-card-hover
MessageItem.vue attachment block rgba(0,0,0,0.04) --bg-input
MessageItem.vue thinking header hover, tool row hover rgba(0,0,0,0.03) rgba(255,255,255,0.05)
MessageItem.vue tool detail code header rgba(0,0,0,0.02) rgba(255,255,255,0.02)
GroupMessageItem.vue same three hover/header rules same same

The rule is directional: a fill uses a background token, a hover lift uses a white wash (there is no lighter token that reads correctly on top of --bg-input), and a divider tint uses a 2% white wash.

Not changed

Message rendering, streaming, tool-call grouping, and the /chat-run event contract. This fragment exists because the touched files sit on the chat chain path, not because any behavior moved.

Verification

npm run harness:check and npm run build pass. The existing tests/e2e/chat-cyber-semantics.spec.ts still passes unchanged.