From d32db985b57bc90f4234677f71ba449de1e43237 Mon Sep 17 00:00:00 2001 From: 777genius Date: Tue, 26 May 2026 17:42:12 +0300 Subject: [PATCH] fix(context): clear switch state on direct ssh reset --- src/renderer/store/slices/connectionSlice.ts | 4 ++++ test/renderer/store/contextSliceTeamReset.test.ts | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/src/renderer/store/slices/connectionSlice.ts b/src/renderer/store/slices/connectionSlice.ts index a59b23e7..7b551f0f 100644 --- a/src/renderer/store/slices/connectionSlice.ts +++ b/src/renderer/store/slices/connectionSlice.ts @@ -103,6 +103,8 @@ export const createConnectionSlice: StateCreator { }, ], globalTasksInitialized: true, + isContextSwitching: true, + targetContextId: 'local', } as never); await store.getState().connectSsh({ @@ -366,6 +368,8 @@ describe('context slice team/task reset', () => { expect(store.getState().teams).toEqual([]); expect(store.getState().teamByName).toEqual({}); expect(store.getState().globalTasks).toEqual([]); + expect(store.getState().isContextSwitching).toBe(false); + expect(store.getState().targetContextId).toBeNull(); expect(apiMock.teams.list).toHaveBeenCalledTimes(1); expect(apiMock.teams.getAllTasks).toHaveBeenCalledTimes(1); }); @@ -400,6 +404,8 @@ describe('context slice team/task reset', () => { }, ], globalTasksInitialized: true, + isContextSwitching: true, + targetContextId: 'local', } as never); await store.getState().disconnectSsh(); @@ -408,6 +414,8 @@ describe('context slice team/task reset', () => { expect(store.getState().teams).toEqual([]); expect(store.getState().teamByName).toEqual({}); expect(store.getState().globalTasks).toEqual([]); + expect(store.getState().isContextSwitching).toBe(false); + expect(store.getState().targetContextId).toBeNull(); expect(apiMock.teams.list).toHaveBeenCalledTimes(1); expect(apiMock.teams.getAllTasks).toHaveBeenCalledTimes(1); });