fix(continuation): mark atlas resumes synthetic

This commit is contained in:
YeonGyu-Kim
2026-05-13 13:25:01 +09:00
parent e49ba94728
commit 1189b96d42
6 changed files with 46 additions and 9 deletions
+8 -1
View File
@@ -74,7 +74,14 @@ describe("session-recovery resume", () => {
expect(promptBody?.variant).toBe("max")
expect(promptBody?.tools).toEqual({ question: false, bash: true })
expect(Array.isArray(promptBody?.parts)).toBe(true)
const firstPart = (promptBody?.parts as Array<{ text?: string }>)?.[0]
const firstPart = (promptBody?.parts as Array<{
text?: string
synthetic?: boolean
metadata?: Record<string, unknown>
}>)?.[0]
expect(firstPart?.text).toContain(OMO_INTERNAL_INITIATOR_MARKER)
expect(firstPart?.synthetic).toBe(true)
expect(firstPart?.metadata?.compaction_continue).toBe(true)
expect(promptBody?.noReply).toBeUndefined()
})
})
+2 -2
View File
@@ -1,6 +1,6 @@
import type { createOpencodeClient } from "@opencode-ai/sdk"
import type { MessageData, ResumeConfig } from "./types"
import { createInternalAgentTextPart, resolveInheritedPromptTools } from "../../shared"
import { createInternalAgentContinuationTextPart, resolveInheritedPromptTools } from "../../shared"
const RECOVERY_RESUME_TEXT = "[session recovered - continuing previous task]"
@@ -35,7 +35,7 @@ export async function resumeSession(client: Client, config: ResumeConfig): Promi
await client.session.promptAsync({
path: { id: config.sessionID },
body: {
parts: [createInternalAgentTextPart(RECOVERY_RESUME_TEXT)],
parts: [createInternalAgentContinuationTextPart(RECOVERY_RESUME_TEXT)],
agent: config.agent,
...(launchModel ? { model: launchModel } : {}),
...(launchVariant ? { variant: launchVariant } : {}),