fix(client-runtime): never reuse an archived blank session in connectWorkspace

Reusing one would open a session no grouping surface can show; the New
Session flow mints a fresh blank instead.
This commit is contained in:
imccyu
2026-07-31 03:07:53 +08:00
committed by imccyu
parent 3b86c288d6
commit fc0042e47e
2 changed files with 11 additions and 1 deletions

View File

@@ -183,6 +183,12 @@ describe('WorkspacesService', () => {
// Unknown workspace fails loud instead of silently creating in nowhere.
await expect(workspaces.connectWorkspace(wid('ghost'))).rejects.toThrow(/unknown workspace ghost/)
// An archived blank is never reused: no surface can show it, so New
// Session mints a fresh one for alpha instead.
await workspaces.archiveSession(sid('s-blank'))
api.onCreate = () => Promise.resolve(ok({ sessionId: sid('s-fresh-2') }))
await expect(workspaces.connectWorkspace(wid('alpha'))).resolves.toBe('s-fresh-2')
})
it('a rejected first prompt keeps the blank session eligible for connectWorkspace reuse', async () => {