From e42b95bcaea834444c71b76c4f14a2a8ee602bd4 Mon Sep 17 00:00:00 2001 From: metaphorics <152830360+metaphorics@users.noreply.github.com> Date: Mon, 3 Aug 2026 22:26:24 +0900 Subject: [PATCH] fix(task): report non-isolated cleanup state (#7488) --- packages/coding-agent/src/task/executor.ts | 6 +++++- .../test/task/executor-async-quiescence.test.ts | 4 +++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/coding-agent/src/task/executor.ts b/packages/coding-agent/src/task/executor.ts index 83c238377..610696357 100644 --- a/packages/coding-agent/src/task/executor.ts +++ b/packages/coding-agent/src/task/executor.ts @@ -3204,6 +3204,10 @@ export async function runSubprocess(options: ExecutorOptions): Promise[] = []; let deferredSessionShutdown: Promise | undefined; const deferCleanup = (completion: Promise): void => { @@ -3211,7 +3215,7 @@ export async function runSubprocess(options: ExecutorOptions): Promise { expect(result.exitCode).toBe(1); expect(result.aborted).toBe(true); expect(result.abortReason).toBe("cleanup exceeded 10000 ms"); - expect(result.error).toContain("Cleanup did not finish within 10000 ms"); + expect(result.error).toBe( + "Task aborted. Cleanup did not finish within 10000 ms. This task was not isolated, so its changes may remain in the working directory.", + ); expect(result.output).toContain("yielded output"); expect(result.usage?.totalTokens).toBe(7); expect(lateJobId).toBeDefined();