From f4698b73def827639a723cf48ddd5a641af71569 Mon Sep 17 00:00:00 2001 From: Forgotten Date: Mon, 23 Feb 2026 20:06:16 -0600 Subject: [PATCH] feat(ui): show issue title alongside identifier in activity feed MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Activity rows now display the issue title after the identifier (e.g. "CodexCoder commented on PAP-111 — fix login bug") for better context at a glance. Co-Authored-By: Claude Opus 4.6 --- ui/src/components/ActivityRow.tsx | 6 +++++- ui/src/pages/Activity.tsx | 7 +++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/ui/src/components/ActivityRow.tsx b/ui/src/components/ActivityRow.tsx index 35c55f0e..8516ffc7 100644 --- a/ui/src/components/ActivityRow.tsx +++ b/ui/src/components/ActivityRow.tsx @@ -81,10 +81,11 @@ interface ActivityRowProps { event: ActivityEvent; agentMap: Map; entityNameMap: Map; + entityTitleMap?: Map; className?: string; } -export function ActivityRow({ event, agentMap, entityNameMap, className }: ActivityRowProps) { +export function ActivityRow({ event, agentMap, entityNameMap, entityTitleMap, className }: ActivityRowProps) { const verb = formatVerb(event.action, event.details); const isHeartbeatEvent = event.entityType === "heartbeat_run"; @@ -96,6 +97,8 @@ export function ActivityRow({ event, agentMap, entityNameMap, className }: Activ ? (heartbeatAgentId ? entityNameMap.get(`agent:${heartbeatAgentId}`) : null) : entityNameMap.get(`${event.entityType}:${event.entityId}`); + const entityTitle = entityTitleMap?.get(`${event.entityType}:${event.entityId}`); + const link = isHeartbeatEvent && heartbeatAgentId ? `/agents/${heartbeatAgentId}/runs/${event.entityId}` : entityLink(event.entityType, event.entityId, name); @@ -113,6 +116,7 @@ export function ActivityRow({ event, agentMap, entityNameMap, className }: Activ /> {verb} {name && {name}} + {entityTitle && — {entityTitle}}

{timeAgo(event.createdAt)} diff --git a/ui/src/pages/Activity.tsx b/ui/src/pages/Activity.tsx index d96a48bf..17b2829f 100644 --- a/ui/src/pages/Activity.tsx +++ b/ui/src/pages/Activity.tsx @@ -74,6 +74,12 @@ export function Activity() { return map; }, [issues, agents, projects, goals]); + const entityTitleMap = useMemo(() => { + const map = new Map(); + for (const i of issues ?? []) map.set(`issue:${i.id}`, i.title); + return map; + }, [issues]); + if (!selectedCompanyId) { return ; } @@ -120,6 +126,7 @@ export function Activity() { event={event} agentMap={agentMap} entityNameMap={entityNameMap} + entityTitleMap={entityTitleMap} /> ))}