From 9f62dccde3d1f8ba9d300aaf94600d8f9eb6b42b Mon Sep 17 00:00:00 2001 From: cfdaily Date: Wed, 20 May 2026 22:40:27 +0800 Subject: [PATCH] auto-sync: 2026-05-20 22:40:27 --- .../src/components/NotificationCenter.tsx | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/frontend/src/components/NotificationCenter.tsx b/src/frontend/src/components/NotificationCenter.tsx index 3ccc4b2..115f45f 100644 --- a/src/frontend/src/components/NotificationCenter.tsx +++ b/src/frontend/src/components/NotificationCenter.tsx @@ -66,15 +66,18 @@ export default function NotificationCenter({ onClose }: { onClose: () => void }) 'agent_completed', 'agent_spawned', ]; if (importantTypes.includes(e.type || data.event_type)) { - setSseEvents(prev => [{ - id: data.id || `sse-${Date.now()}`, - type: (e.type === 'task_failed' ? 'error' : e.type === 'task_completed' ? 'success' : 'info') as NotifItem['type'], - title: data.title || data.event_type || e.type, - message: data.detail || JSON.stringify(data).slice(0, 100), - time: data.timestamp || new Date().toISOString(), - read: false, - source: 'event' as const, - }, ...prev].slice(0, 20)]); + setSseEvents(prev => { + const item: NotifItem = { + id: data.id || `sse-${Date.now()}`, + type: e.type === 'task_failed' ? 'error' : e.type === 'task_completed' ? 'success' : 'info', + title: data.title || data.event_type || e.type || 'Event', + message: data.detail || JSON.stringify(data).slice(0, 100), + time: data.timestamp || new Date().toISOString(), + read: false, + source: 'event', + }; + return [item, ...prev].slice(0, 20); + }); } } catch { /* ignore parse errors */ } };