Skip to content

Commit 708b933

Browse files
committed
fix: assign reset transcript paths to new sessions
1 parent 14b3360 commit 708b933

2 files changed

Lines changed: 20 additions & 2 deletions

File tree

src/gateway/server.sessions.gateway-server-sessions-a.test.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1095,12 +1095,19 @@ describe("gateway server sessions", () => {
10951095
const reset = await rpcReq<{
10961096
ok: true;
10971097
key: string;
1098-
entry: { sessionId: string; modelProvider?: string; model?: string; contextTokens?: number };
1098+
entry: {
1099+
sessionId: string;
1100+
sessionFile?: string;
1101+
modelProvider?: string;
1102+
model?: string;
1103+
contextTokens?: number;
1104+
};
10991105
}>(ws, "sessions.reset", { key: "main" });
11001106

11011107
expect(reset.ok).toBe(true);
11021108
expect(reset.payload?.key).toBe("agent:main:main");
11031109
expect(reset.payload?.entry.sessionId).not.toBe("sess-stale-model");
1110+
expect(reset.payload?.entry.sessionFile).toBeTruthy();
11041111
expect(reset.payload?.entry.modelProvider).toBe("openai");
11051112
expect(reset.payload?.entry.model).toBe("gpt-test-a");
11061113
expect(reset.payload?.entry.contextTokens).toBeUndefined();

src/gateway/session-reset-service.ts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import {
1111
type SessionEntry,
1212
updateSessionStore,
1313
} from "../config/sessions.js";
14+
import { resolveSessionFilePath, resolveSessionFilePathOptions } from "../config/sessions/paths.js";
1415
import { logVerbose } from "../globals.js";
1516
import { createInternalHookEvent, triggerInternalHook } from "../hooks/internal-hooks.js";
1617
import { closeTrackedBrowserTabsForSessions } from "../plugin-sdk/browser-runtime.js";
@@ -306,8 +307,18 @@ export async function performGatewaySessionReset(params: {
306307
oldSessionId = currentEntry?.sessionId;
307308
oldSessionFile = currentEntry?.sessionFile;
308309
const now = Date.now();
310+
const nextSessionId = randomUUID();
311+
const sessionFile = resolveSessionFilePath(
312+
nextSessionId,
313+
undefined,
314+
resolveSessionFilePathOptions({
315+
storePath,
316+
agentId: sessionAgentId,
317+
}),
318+
);
309319
const nextEntry: SessionEntry = {
310-
sessionId: randomUUID(),
320+
sessionId: nextSessionId,
321+
sessionFile,
311322
updatedAt: now,
312323
systemSent: false,
313324
abortedLastRun: false,

0 commit comments

Comments
 (0)