Implement hybrid session storage
8 months ago
40 files changed
- apps/TUI/component/dialog-session-list.tsx+35−97
- apps/TUI/context/sync.tsx+62−21
- apps/desktop/bun.lock+1−1
- apps/desktop/electron/ipc.ts+78−9
- apps/desktop/electron/preload.ts+78−1
- apps/desktop/electron/services/ipcSecurity.ts+4−0
- apps/desktop/electron/services/persistence.ts+16−3
- apps/desktop/electron/services/validation.ts+14−1
- apps/desktop/package.json+1−1
- apps/desktop/src/app/store.actions.ts+183−4
- apps/desktop/src/app/store.helpers.ts+31−5
- apps/desktop/src/app/store.ts+2−1
- apps/desktop/src/app/types.ts+19−2
- apps/desktop/src/lib/desktopApi.ts+45−2
- apps/desktop/src/lib/desktopCommands.ts+27−3
- apps/desktop/src/ui/ContextSidebar.tsx+9−23
- apps/desktop/src/ui/Sidebar.tsx+15−0
- apps/desktop/src/ui/file-explorer/WorkspaceFileExplorer.tsx+160−0
- apps/desktop/src/ui/settings/SettingsShell.tsx+2−0
- apps/desktop/src/ui/settings/pages/DeveloperPage.tsx+64−0
- apps/desktop/src/ui/settings/pages/WorkspacesPage.tsx+0−14
- apps/desktop/test/ipc-file-ops.test.ts+38−0
- apps/desktop/test/ipc-security.test.ts+16−0
- apps/desktop/test/persistence-permissions.test.ts+1−0
- apps/desktop/test/persistence-state-sanitization.test.ts+4−1
- apps/desktop/test/protocol-v2-events.test.ts+33−0
- apps/desktop/test/settings-nav.test.ts+6−0
- apps/desktop/test/store-explorer.test.ts+116−0
- apps/desktop/test/thread-reconnect.test.ts+7−1
- docs/session-storage-architecture.md+69−0
- docs/websocket-protocol.md+10−6
- src/cli/repl.ts+157−70
- src/server/protocol.ts+2−1
- src/server/session.ts+203−28
- src/server/sessionDb.ts+700−0
- src/server/startServer.ts+86−31
- test/repl.test.ts+12−0
- test/server.test.ts+24−4
- test/session-db.test.ts+131−0
- test/session.test.ts+21−0