From 8f90c1e92a8ac206cb1d5385ec8ccac16baf5fab Mon Sep 17 00:00:00 2001 From: YeonGyu-Kim Date: Fri, 15 May 2026 09:56:01 +0900 Subject: [PATCH] fix(background-task): log missing output retry --- .../create-background-output.ts | 21 ++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/tools/background-task/create-background-output.ts b/src/tools/background-task/create-background-output.ts index bbf326d33..4dbc3bd4a 100644 --- a/src/tools/background-task/create-background-output.ts +++ b/src/tools/background-task/create-background-output.ts @@ -1,6 +1,7 @@ import { tool, type ToolDefinition } from "@opencode-ai/plugin" import type { BackgroundTask } from "../../features/background-agent" import { publishToolMetadata } from "../../features/tool-metadata-store" +import { log } from "../../shared/logger" import type { BackgroundOutputArgs } from "./types" import type { BackgroundOutputClient, BackgroundOutputManager } from "./clients" import { BACKGROUND_OUTPUT_DESCRIPTION } from "./constants" @@ -54,8 +55,26 @@ async function getTaskWithMissingRetry( return task } + log("[background_output] background task missing on first lookup; retrying", { + taskId, + retryDelayMs: MISSING_BACKGROUND_TASK_RETRY_DELAY_MS, + }) + await delay(MISSING_BACKGROUND_TASK_RETRY_DELAY_MS) - return manager.getTask(taskId) + const retriedTask = manager.getTask(taskId) + + log( + retriedTask + ? "[background_output] recovered background task after missing lookup retry" + : "[background_output] background task still missing after retry", + { + taskId, + status: retriedTask?.status, + sessionId: retriedTask?.sessionId, + } + ) + + return retriedTask } function formatTaskNotFoundMessage(taskId: string): string {