Skip to content

msteams: blockStreaming config has no effect (onBlockReply not wired) #56041

@jlian

Description

@jlian

Problem

Block streaming configuration (blockStreamingDefault, blockStreamingBreak, channels.msteams.blockStreaming) has no effect on the Microsoft Teams channel. Messages always arrive as a single block regardless of config.

Root cause

The msteams monitor handler uses dispatchReplyFromConfigWithSettledDispatcher() which omits onBlockReply from its type signature (plugin-sdk/inbound-reply-dispatch.ts line 14). Without onBlockReply, the block reply pipeline in agent-runner.ts is never created (blockReplyPipeline = null).

Other channels (Telegram, Discord, Slack) presumably wire onBlockReply through their own dispatch paths, but msteams does not.

Additional schema issue

The MSTeamsConfigSchema in zod-schema.providers-core.ts is missing blockStreaming: z.boolean().optional(). Every other channel schema includes this field. Setting channels.msteams.blockStreaming: true in config fails validation with .strict(). Even if added, it has no runtime effect due to the missing onBlockReply wiring.

Expected behavior

channels.msteams.blockStreaming: true with blockStreamingBreak: "text_end" should deliver messages in progressive chunks (separate bubbles) as text is generated, matching the behavior of other channels.

Environment

  • OpenClaw v2026.3.24 (also confirmed on v2026.3.23)
  • Microsoft Teams (personal DM scope)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions