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}
/>
))}