From 09b0a97ca68bc5ec85e0e46fe558d54e4531990d Mon Sep 17 00:00:00 2001 From: Mariano Belinky Date: Sun, 8 Mar 2026 18:57:53 +0100 Subject: [PATCH] fix(acp): restore transcript helper typing --- src/agents/acp-spawn.ts | 2 +- src/commands/agent.ts | 32 +++++++++++++++----------------- 2 files changed, 16 insertions(+), 18 deletions(-) diff --git a/src/agents/acp-spawn.ts b/src/agents/acp-spawn.ts index f5702d93d68..c08cca8fcf8 100644 --- a/src/agents/acp-spawn.ts +++ b/src/agents/acp-spawn.ts @@ -408,7 +408,7 @@ export async function spawnAcpDirect( sessionCreated = true; const storePath = resolveStorePath(cfg.session?.store, { agentId: targetAgentId }); const sessionStore = loadSessionStore(storePath); - let sessionEntry = sessionStore[sessionKey]; + let sessionEntry: SessionEntry | undefined = sessionStore[sessionKey]; const sessionId = sessionEntry?.sessionId; if (sessionId) { sessionEntry = await persistAcpSpawnSessionFileBestEffort({ diff --git a/src/commands/agent.ts b/src/commands/agent.ts index b9140c23823..24e62cc8998 100644 --- a/src/commands/agent.ts +++ b/src/commands/agent.ts @@ -1049,29 +1049,27 @@ async function agentCommandInternal( }); } } - const sessionPathOpts = resolveSessionFilePathOptions({ - agentId: sessionAgentId, - storePath, - }); - let sessionFile = resolveSessionFilePath(sessionId, sessionEntry, sessionPathOpts); + let sessionFile: string | undefined; if (sessionStore && sessionKey) { - const threadIdFromSessionKey = parseSessionThreadInfo(sessionKey).threadId; - const fallbackSessionFile = !sessionEntry?.sessionFile - ? resolveSessionTranscriptPath( - sessionId, - sessionAgentId, - opts.threadId ?? threadIdFromSessionKey, - ) - : undefined; - const resolvedSessionFile = await resolveAndPersistSessionFile({ + const resolvedSessionFile = await resolveSessionTranscriptFile({ sessionId, sessionKey, sessionStore, storePath, sessionEntry, - agentId: sessionPathOpts?.agentId, - sessionsDir: sessionPathOpts?.sessionsDir, - fallbackSessionFile, + agentId: sessionAgentId, + threadId: opts.threadId, + }); + sessionFile = resolvedSessionFile.sessionFile; + sessionEntry = resolvedSessionFile.sessionEntry; + } + if (!sessionFile) { + const resolvedSessionFile = await resolveSessionTranscriptFile({ + sessionId, + sessionKey: sessionKey ?? sessionId, + sessionEntry, + agentId: sessionAgentId, + threadId: opts.threadId, }); sessionFile = resolvedSessionFile.sessionFile; sessionEntry = resolvedSessionFile.sessionEntry;