Skip to content

ACP sessions silently fail/die without completion events #52452

Description

@skillz-xx

Problem

ACP sessions spawned via sessions_spawn(runtime='acp') frequently die without emitting any completion or error event back to the parent session. The parent agent has no way to know the task failed — it just never hears back.

In my testing (OpenAI Codex CLI via acpx backend), 3 out of 3 ACP runs failed:

  1. Run 1: Failed instantly with AcpRuntimeError: Permission denied — error was only visible in gateway logs, never surfaced to the parent session
  2. Run 2: Process started, did partial work, then died (likely killed by gateway restart). No error event, no completion event.
  3. Run 3: Process started (ps aux confirmed it running), did partial work on 8 files, then died silently. Again no event back to parent.

Issues

  1. No completion/error callback: When an ACP session dies (for any reason), the parent session that spawned it is never notified. subagents list shows nothing. sessions_list shows nothing. The only way to discover the failure is manually grepping gateway logs.

  2. No progress visibility: There's no way to check ACP session status. sessions_history returns forbidden (visibility scoped). subagents list doesn't show ACP sessions. The parent is completely blind.

  3. Silent failures: When the first run failed with a permission error, the error was logged but never delivered to the parent session. The parent continued telling the user "it's running" for 40 minutes while the task had failed instantly.

Expected Behavior

  • ACP session failures MUST emit an error event to the parent session
  • ACP session completions MUST emit a completion event with the result
  • subagents list or sessions_list should include active ACP sessions
  • If an ACP process dies unexpectedly, the runtime should detect this (process exit monitoring) and report it

Environment

  • OpenClaw 2026.3.13
  • ACP backend: acpx 0.1.16
  • Agent: OpenAI Codex CLI 0.116.0
  • macOS (Apple Silicon)

Related

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Fields

Priority

None yet

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions