-
-
Notifications
You must be signed in to change notification settings - Fork 69.5k
[Bug]: mode="run" sub-agent completions fail to trigger parent session turn #36081
Description
Bug type
Behavior bug (incorrect output/state without crash)
Summary
When a parent session spawns a mode="run" sub-agent, completion events intermittently fail to wake the parent for a new turn, causing the pendulum to stall.
Steps to reproduce
- Spawn a sub-agent from a WhatsApp group session with sessions_spawn({ task: "...", mode: "run" })
- Wait for sub-agent to complete
- Observe parent session for auto-announce turn
Expected behavior
Parent session automatically receives a new turn with the sub-agent's output.
Actual behavior
Parent session stalls. Sub-agent completes successfully (visible via sessions_history) but auto-announce event is lost.
OpenClaw version
2026.3.3, commit 809f951
Operating system
macOS 12.7.4 / Darwin 21.6.0 (x64) [on both tested Machines, 1 and 2]
Install method
npm / development
Logs, screenshots, and evidence
**Test Results: 4 rounds across 2 independent machines**
Round 1 (orchestrator → web scout (Grok 4.1 Fast) → guardian (Gemini 3 Flash) → orchestrator):
• Machine 1 (macOS, Opus 4.6 orchestrator): ✅ auto-announce worked
• Machine 2 (macOS, Opus 4.6 orchestrator): ❌ stalled — no auto-announce
Round 2 (orchestrator → web scout (Haiku 4.5) → guardian (Gemini 3 Flash) → orchestrator):
• Machine 1 (macOS, Opus 4.6 orchestrator): ❌ stalled — no auto-announce
• Machine 2 (macOS, Opus 4.6 orchestrator): ❌ stalled — no auto-announce
Round 3 (New Guardian pipeline: orchestrator → web scout (Haiku 4.5) → guardian (Grok 4.1 Fast) → orchestrator):
• Machine 1 (macOS, Opus 4.6 orchestrator): ❌ stalled at initial spawn
• Machine 2 (macOS, Opus 4.6 orchestrator): ✅ clean run
Round 4 (Machine 2 solo spawn, Machine 1 inactive):
• Machine 1: — (not participating)
• Machine 2 (macOS, Opus 4.6 orchestrator): ❌ stalled on both steps
• Critical finding: Confirms NOT caused by multi-machine/multi-agent message interference. Solo spawn on Machine 2 still stalled despite Machine 1 being completely inactive.
**Key Findings:**
- Intermittent race condition — same code path, same config, different outcomes each run
- Occurs across different models (Grok 4.1 Fast, Haiku 4.5, Gemini 3 Flash)
- Occurs across independent machines (both affected)
- Occurs even in solo runs (Machine 1 completely silent in Round 4)Impact and severity
Affected: Multi-agent Guardian pipelines (orchestrator → web scout → guardian → orchestrator ). Severity: High (breaks async workflows). Frequency: Intermittent but reproducible. Consequence: Requires manual sessions_history calls to retrieve results.
Additional information
Note: Team appears to be working on this already (fix/subagent-announce-delivery branch spotted in git fetch). Filing to confirm real-world reproduction from Guardian pipeline use case.