-
-
Notifications
You must be signed in to change notification settings - Fork 80.7k
[Bug]: Control UI webchat can leave false "In progress" / "Stop" state after completed response #87387
Copy link
Copy link
Open
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.bugSomething isn't workingSomething isn't workingclawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:session-stateSession, memory, transcript, context, or agent state can drift or corrupt.Session, memory, transcript, context, or agent state can drift or corrupt.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Description
Metadata
Metadata
Assignees
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.bugSomething isn't workingSomething isn't workingclawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:session-stateSession, memory, transcript, context, or agent state can drift or corrupt.Session, memory, transcript, context, or agent state can drift or corrupt.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Type
Fields
Priority
None yet
Bug type
Behavior bug (incorrect output/state without crash)
Beta release blocker
No
Summary
Control UI webchat can continue showing a busy or abortable state after an assistant response has completed, even though backend state is clean and messages continue working.
Steps to reproduce
Expected behavior
After the assistant response completes and no local stream is active, the bottom status badge and composer control should return to idle/send state.
Actual behavior
The chat response completes and messages still work, but the Control UI can continue showing "In progress" or keep the composer button as "Stop" even though backend state is clean.
OpenClaw version
2026.5.26 (10ad3aa)
Operating system
Windows 11 Chrome client with WSL2/Linux OpenClaw gateway
Install method
npm global
Model
gpt-5.5
Provider / routing chain
OpenClaw webchat direct session using OpenAI Codex runtime
Additional provider/model setup details
OpenClaw webchat direct session using OpenAI Codex runtime.
Environment details:
Logs, screenshots, and evidence
Impact and severity
Affected users/systems/channels:
Control UI webchat users, especially in longer/tool-heavy sessions where session metadata can lag or rehydrate stale.
Severity:
Medium. Chat still works, but the UI falsely appears to be running or abortable after completion, which makes users think the run is stuck and may cause unnecessary refreshes/restarts.
Frequency:
Reproduced repeatedly in one OpenClaw 2026.5.26 environment until patched locally.
Consequence:
False stuck/busy UI state, user confusion, unnecessary troubleshooting, and possible accidental Stop clicks after a run is already complete.
Additional information
Suggested upstream fix: split visible main composer/badge busy state from stale session-list abortability.
canAbortmay still be useful for remote/session abort affordances, but the main webchat badge and Stop button should only show active/busy while an authoritative local live send/stream/run state is active.