Skip to content

[Bug]: WebChat UI renders duplicate assistant messages on chat.status final event #85771

Description

@davidchyi-beep

Bug type

Regression (worked before, now fails)

Beta release blocker

No

Summary

After receiving a single assistant response, the WebChat frontend occasionally renders an identical duplicate message entry in the chat timeline. The backend message log (JSONL transcript) confirms only one message is stored — the duplication occurs on the frontend rendering layer.

Steps to reproduce

Open WebChat dashboard on http://127.0.0.1:18789/
Send a message
Wait for assistant response
Observe: ~1 in ~20 responses shows a duplicate of the assistant message directly below the original

Expected behavior

Each assistant message should appear exactly once in the chat timeline.

Actual behavior

Occasionally, the same assistant message renders twice consecutively. The backend JSONL transcript confirms only one copy — the issue is purely in the frontend rendering pipeline.

OpenClaw version

OpenClaw 2026.5.20 (e510042)

Operating system

macOS 24.6.0 (x64)

Install method

Node v26.0.0

Model

deepseek/deepseek-v4-flash

Provider / routing chain

deepseek

Additional provider/model setup details

No response

Logs, screenshots, and evidence

Impact and severity

No response

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Normal backlog priority with limited blast radius.bugSomething isn't workingclawsweeper:linked-pr-openClawSweeper 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:source-reproClawSweeper found a high-confidence source-level issue reproduction.impact:message-lossChannel message delivery can be lost, duplicated, or misrouted.impact:session-stateSession, 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.regressionBehavior that previously worked and now fails

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions