Skip to content

msteams: streaming double-posts replies over 4000 chars after SDK rebase (#76262 regressed #59297) #91723

Description

@devinkuhn

Summary

After the msteams SDK rebase (#76262), Teams streaming double-posts replies longer than ~4000 chars: the streamed preview persists AND the full final text is re-sent via chunked/block fallback. Short replies collapse correctly. This is a regression of #59297 (which fixed the same >4000-char duplicate on the pre-rebase pipeline).

Environment

  • OpenClaw: 2026.6.1
  • Channel: channels.msteams, streaming.mode=partial
  • Provider: bifrost-claude/claude-opus-4-8 via Bifrost -> Azure AI Foundry Anthropic
  • Install: openshell sandbox image (K3s on Docker)

Steps to reproduce

  1. channels.msteams.streaming.mode=partial
  2. Send a prompt that yields a >4000-char reply in a DM
  3. Observe: the streamed preview AND a second full copy of the reply (chunked block delivery) both persist as separate bubbles. Replies under 4000 chars collapse correctly (single bubble).

Root cause (from PR history + source)

Expected

When a streamed reply exceeds the limit and falls back to block delivery, the fallback should trim the already-streamed prefix (or be suppressed entirely if the prefix covered the full text), as #59297 did. No duplicate.

Related

Workaround

channels.msteams.streaming.mode: "off" (loses streaming UX).

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1High-priority user-facing bug, regression, or broken workflow.clawsweeper: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.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions