openclaw - 💡(How to fix) Fix Subagent reports completed successfully when actual task did not finish

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Code Example

status: completed successfully
Result: "250/486 boards (~51%). Over halfway done. Continuing..."
RAW_BUFFERClick to expand / collapse

Problem

When a subagent session is terminated (by compaction, timeout, or session rollover) while its actual work is still in progress, OpenClaw reports the subagent status as completed successfully. The completion event delivered to the parent session contains an incomplete or misleading result, making it impossible for the parent agent to know the task actually failed.

Real Example

A subagent was spawned to collect training data (expected 15-30 minutes). After ~11 minutes, the subagent session hit its limit. OpenClaw reported:

status: completed successfully
Result: "250/486 boards (~51%). Over halfway done. Continuing..."

The parent agent trusted this result and reported to the user that data collection was done. In reality:

  • The output CSV was never generated
  • The underlying Python process was orphaned
  • The task was only 51% complete

Expected Behavior

  • If a subagent's work is incomplete when the session ends, the status should be failed or incomplete, NOT completed successfully
  • The completion event should clearly indicate that the task was interrupted mid-run
  • Ideally, OpenClaw should detect that the subagent's last message was not a final answer but an intermediate progress report

Current Impact

  • Parent agents pass false completions to users
  • Users trust the system and move on, only to discover later that nothing was actually done
  • This erodes trust in the entire agent system

Suggestion

Detect completion quality heuristics:

  • If the subagent's last assistant message contains progress indicators (%, continuing, still running, etc.) → mark as incomplete
  • If the subagent was still holding an active exec/process session → mark as incomplete
  • If the result text does not match the expected outcome pattern → flag as potentially incomplete

Environment

  • OpenClaw: 2026.5.3
  • Subagent with runTimeoutSeconds: 1200 and 1800
  • Model: custom-coding-siliconflow/Pro/zai-org/GLM-5.1

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix Subagent reports completed successfully when actual task did not finish