diff --git a/src/components/ChatPanel.vue b/src/components/ChatPanel.vue index 4a09c9d..3ec94b7 100644 --- a/src/components/ChatPanel.vue +++ b/src/components/ChatPanel.vue @@ -46,13 +46,16 @@ const messagesEl = ref(null) let unlisten: UnlistenFn | null = null onMounted(async () => { - // Drain any events that fired while the panel was closed - const pending = await invoke('get_pending_events') - for (const e of pending) { - pushRobinEvent(e) + try { + const pending = await invoke('get_pending_events') + for (const e of pending) { + pushRobinEvent(e) + } + } catch (err) { + console.warn('Robin: failed to drain pending events:', err) } - // Listen for live events while panel is open + // Always set up the live listener, even if drain failed unlisten = await listen('robin:event', ({ payload }) => { pushRobinEvent(payload) })