diff --git a/packages/server/src/server/agent/providers/claude/agent.integration.test.ts b/packages/server/src/server/agent/providers/claude/agent.integration.test.ts index 8402b282c..3e39c9ba9 100644 --- a/packages/server/src/server/agent/providers/claude/agent.integration.test.ts +++ b/packages/server/src/server/agent/providers/claude/agent.integration.test.ts @@ -378,9 +378,9 @@ describe("ClaudeAgentSession integration", () => { streamSession( handle.session, [ - "Use the Task tool to start a background sub-agent.", - "In that task, run the Bash command exactly: sleep 3 && echo BACKGROUND_DONE", - "Do not wait for task completion.", + "Use the Bash tool with run_in_background.", + "Run exactly: sleep 3", + "Do not wait for the task result.", "Reply immediately with exactly: SPAWNED", `When the background task completes later, reply with exactly: ${autonomousWakeToken}`, ].join(" "), diff --git a/packages/server/src/server/schedule/service.test.ts b/packages/server/src/server/schedule/service.test.ts index 3b39b3089..4bfa62404 100644 --- a/packages/server/src/server/schedule/service.test.ts +++ b/packages/server/src/server/schedule/service.test.ts @@ -27,6 +27,9 @@ describe("ScheduleService", () => { }); afterEach(async () => { + // Drain pending background persists before deleting the dir to avoid + // ENOTEMPTY races when AgentManager flushes a snapshot mid-cleanup. + await agentStorage.flush(); await rm(tempDir, { recursive: true, force: true }); });