diff --git a/src/renderer/src/components/activity/ActivityPrototypePage.tsx b/src/renderer/src/components/activity/ActivityPrototypePage.tsx
index e5b0cf2569d..ea135ee5405 100644
--- a/src/renderer/src/components/activity/ActivityPrototypePage.tsx
+++ b/src/renderer/src/components/activity/ActivityPrototypePage.tsx
@@ -347,34 +347,32 @@ function AgentEventRow({
}
}}
className={cn(
- 'group grid grid-cols-[2rem_minmax(0,1fr)_7.25rem] gap-3 border-b border-border px-3 cursor-pointer transition-colors hover:bg-accent/40',
+ 'group relative grid grid-cols-[2rem_minmax(0,1fr)_7.25rem] gap-3 border-b border-border px-3 cursor-pointer transition-colors hover:bg-accent/40',
compact ? 'py-2' : 'py-3.5',
event.unread && 'bg-accent/20'
)}
>
+ {/* Why (left-edge bar): matches ThreadRow's unread treatment so the two
+ surfaces share one unread vocabulary. A row-level marker keeps the
+ state-icon column uncrowded — earlier attempts (mini-dot, bell glyph)
+ competed with the AgentStateDot. */}
+ {event.unread ? (
+
+ ) : null}
-
- {/* Why (bell as unread glyph): visually rhymes with the Bell button on
- ThreadRow so both surfaces share one unread vocabulary. Sits at
- the icon's top-right corner with a fill-background halo so the
- bell reads cleanly against the row's tinted unread background. */}
- {event.unread ? (
-
- ) : null}
-
-
-
-
-
-
-
- {event.entry.interrupted ? 'Interrupted' : agentStateLabel(dotState)}
-
-
-
+
+
+
+
+
+
+
+ {event.entry.interrupted ? 'Interrupted' : agentStateLabel(dotState)}
+
+
@@ -449,23 +447,20 @@ function WorktreeEventRow({
}
}}
className={cn(
- 'group grid grid-cols-[2rem_minmax(0,1fr)_7.25rem] gap-3 border-b border-border px-3 cursor-pointer transition-colors hover:bg-accent/40',
+ 'group relative grid grid-cols-[2rem_minmax(0,1fr)_7.25rem] gap-3 border-b border-border px-3 cursor-pointer transition-colors hover:bg-accent/40',
compact ? 'py-2' : 'py-3.5',
event.unread && 'bg-accent/20'
)}
>
+ {/* Why: see AgentEventRow — left-edge bar matches ThreadRow's unread cue. */}
+ {event.unread ? (
+
+ ) : null}
-
- {/* Why: see AgentEventRow — bell at the icon's top-right matches the
- unread vocabulary used on ThreadRow. */}
- {event.unread ? (
-
- ) : null}
-
-
+