diff --git a/src/gateway/server.sessions.gateway-server-sessions-a.test.ts b/src/gateway/server.sessions.gateway-server-sessions-a.test.ts index 08b3b06be62..d2b77e5e027 100644 --- a/src/gateway/server.sessions.gateway-server-sessions-a.test.ts +++ b/src/gateway/server.sessions.gateway-server-sessions-a.test.ts @@ -1043,6 +1043,10 @@ describe("gateway server sessions", () => { execAsk: "on-miss", execNode: "mac-mini", displayName: "Ops Child", + cliSessionIds: { + "claude-cli": "cli-session-123", + }, + claudeCliSessionId: "cli-session-123", deliveryContext: { channel: "discord", to: "discord:child", @@ -1091,6 +1095,8 @@ describe("gateway server sessions", () => { execAsk?: string; execNode?: string; displayName?: string; + cliSessionIds?: Record; + claudeCliSessionId?: string; deliveryContext?: { channel?: string; to?: string; @@ -1134,6 +1140,10 @@ describe("gateway server sessions", () => { expect(reset.payload?.entry.execAsk).toBe("on-miss"); expect(reset.payload?.entry.execNode).toBe("mac-mini"); expect(reset.payload?.entry.displayName).toBe("Ops Child"); + expect(reset.payload?.entry.cliSessionIds).toEqual({ + "claude-cli": "cli-session-123", + }); + expect(reset.payload?.entry.claudeCliSessionId).toBe("cli-session-123"); expect(reset.payload?.entry.deliveryContext).toEqual({ channel: "discord", to: "discord:child", @@ -1177,6 +1187,8 @@ describe("gateway server sessions", () => { execAsk?: string; execNode?: string; displayName?: string; + cliSessionIds?: Record; + claudeCliSessionId?: string; deliveryContext?: { channel?: string; to?: string; @@ -1218,6 +1230,10 @@ describe("gateway server sessions", () => { expect(store["agent:main:subagent:child"]?.execAsk).toBe("on-miss"); expect(store["agent:main:subagent:child"]?.execNode).toBe("mac-mini"); expect(store["agent:main:subagent:child"]?.displayName).toBe("Ops Child"); + expect(store["agent:main:subagent:child"]?.cliSessionIds).toEqual({ + "claude-cli": "cli-session-123", + }); + expect(store["agent:main:subagent:child"]?.claudeCliSessionId).toBe("cli-session-123"); expect(store["agent:main:subagent:child"]?.deliveryContext).toEqual({ channel: "discord", to: "discord:child", diff --git a/src/gateway/session-reset-service.ts b/src/gateway/session-reset-service.ts index eb4aa1b7519..dcc00e372c0 100644 --- a/src/gateway/session-reset-service.ts +++ b/src/gateway/session-reset-service.ts @@ -354,6 +354,8 @@ export async function performGatewaySessionReset(params: { space: currentEntry?.space, origin: snapshotSessionOrigin(currentEntry), deliveryContext: currentEntry?.deliveryContext, + cliSessionIds: currentEntry?.cliSessionIds, + claudeCliSessionId: currentEntry?.claudeCliSessionId, lastChannel: currentEntry?.lastChannel, lastTo: currentEntry?.lastTo, lastAccountId: currentEntry?.lastAccountId,