From 382158fb3093bed96fc7d3bdc2cdabb62b65e98a Mon Sep 17 00:00:00 2001 From: Santosh Date: Mon, 16 Feb 2026 15:23:03 -0400 Subject: [PATCH] fix(ui): auto-refresh sessions list after deletion Remove dead loadSessions call from deleteSession controller that was silently failing due to sessionsLoading guard. The refresh now happens explicitly in the UI layer after successful deletion. - src/ui/controllers/sessions.ts: remove internal loadSessions call - src/ui/app-render.ts: add async onDelete handler with explicit refresh --- ui/src/ui/app-render.ts | 5 ++++- ui/src/ui/controllers/sessions.ts | 1 - 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ui/src/ui/app-render.ts b/ui/src/ui/app-render.ts index 160cf91034..ca15ea96d4 100644 --- a/ui/src/ui/app-render.ts +++ b/ui/src/ui/app-render.ts @@ -301,7 +301,10 @@ export function renderApp(state: AppViewState) { }, onRefresh: () => loadSessions(state), onPatch: (key, patch) => patchSession(state, key, patch), - onDelete: (key) => deleteSession(state, key), + onDelete: async (key) => { + await deleteSession(state, key); + await loadSessions(state); + }, }) : nothing } diff --git a/ui/src/ui/controllers/sessions.ts b/ui/src/ui/controllers/sessions.ts index cb20390416..181d98b2c8 100644 --- a/ui/src/ui/controllers/sessions.ts +++ b/ui/src/ui/controllers/sessions.ts @@ -108,7 +108,6 @@ export async function deleteSession(state: SessionsState, key: string) { state.sessionsError = null; try { await state.client.request("sessions.delete", { key, deleteTranscript: true }); - await loadSessions(state); } catch (err) { state.sessionsError = String(err); } finally {