feat(background-agent): handle "interrupt" in notifications, output, and formatting

Update notification systems to display INTERRUPTED status.

Add interrupt handling to background_output tool (terminal status).

Add interrupt-specific status note to formatTaskStatus.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
YeonGyu-Kim
2026-02-09 18:26:16 +09:00
parent a709cb5b1b
commit ea9cd17b45
6 changed files with 37 additions and 29 deletions
@@ -93,10 +93,10 @@ export function createBackgroundOutput(manager: BackgroundOutputManager, client:
return await formatTaskResult(task, client)
}
// Error or cancelled: return status immediately
if (task.status === "error" || task.status === "cancelled") {
return formatTaskStatus(task)
}
// Error or cancelled: return status immediately
if (task.status === "error" || task.status === "cancelled" || task.status === "interrupt") {
return formatTaskStatus(task)
}
// Non-blocking and still running: return status
if (!shouldBlock) {
@@ -118,9 +118,9 @@ export function createBackgroundOutput(manager: BackgroundOutputManager, client:
return await formatTaskResult(currentTask, client)
}
if (currentTask.status === "error" || currentTask.status === "cancelled") {
return formatTaskStatus(currentTask)
}
if (currentTask.status === "error" || currentTask.status === "cancelled" || currentTask.status === "interrupt") {
return formatTaskStatus(currentTask)
}
}
// Timeout exceeded: return current status