refactor(messages): delete triple department signal + decorative read-state indicator

Two subtractions in the message bubble header row:

1. Department chip next to each agent name. Department was already
   communicated by (a) the avatar tile colour (`bg-{color}18`, tinted
   by department via DEPARTMENT_COLORS) and (b) the sender name's
   text colour (`color: senderColor = deptColor`). The explicit
   uppercase chip ("ENGINEERING", "PRODUCT", …) was the third signal
   in the same row and the loudest — hardest-to-read typography
   (10px uppercase tracking) re-stating what colour already says.
   Deleted; colour continues to carry the semantics.

2. `CheckCircle` as the read-state marker. It only appeared
   on hover at 60% opacity — invisible most of the time and purely
   decorative when visible. The absence of the unread dot already
   communicates "read"; a second glyph just to mark the negative
   case added nothing. Deleted along with the now-unused CheckCircle
   import.

Typecheck + lint pass.
This commit is contained in:
ZacharyZhang-NY committed 2026-04-17 21:22:10 -04:00
1 parent 7c4d7a4a5e
commit 7f4acd0fb7
1 file changed
+1 -15
@@ -4,7 +4,6 @@ import {
ChatCircle,
At,
Circle,
CheckCircle,
WarningCircle,
ArrowBendUpLeft,
UserCircle,
@@ -98,13 +97,6 @@ export const MessageBubble = memo(function MessageBubble({
{agent?.title ? (
<span className="truncate text-[11px] text-muted-foreground">{agent.title}</span>
) : null}
{agent?.department ? (
<span
className="shrink-0 rounded-full bg-muted px-1.5 py-0.5 text-[10px] font-bold uppercase tracking-[0.06em] text-muted-foreground"
>
{agent.department.replace("_", " ")}
</span>
) : null}
<span className="whitespace-nowrap shrink-0 text-[11px] text-muted-foreground">
{formatMessageTime(message.createdAt)}
</span>
@@ -118,13 +110,7 @@ export const MessageBubble = memo(function MessageBubble({
) : null}
{isUnread ? (
<Circle size={8} weight="fill" className="shrink-0" style={{ color: "var(--primary)" }} aria-label={t("msg.unread")} />
) : (
<CheckCircle
size={10}
weight="fill"
className="shrink-0 text-muted-foreground opacity-0 group-hover:opacity-60 group-focus-within:opacity-60"
/>
)}
) : null}
</div>
{message.subject ? (