Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Slack ack reaction not removed when block streaming is enabledΒ #2003

@lanceretter

Description

@lanceretter

Bug Description

When removeAckAfterReply: true is configured, the ack reaction (e.g., πŸ‘€) is added when a message is received but never removed after the reply is delivered β€” if block streaming is enabled.

Root Cause

In dist/slack/monitor/message-handler/dispatch.js, the code checks:

if (!queuedFinal) {
    // ... early return, never calls removeAckReactionAfterReply
    return;
}

When block streaming is used, replies are counted in counts.block (not counts.final), so queuedFinal is always false even though a reply was delivered.

Fix

Change the condition to check if ANY reply was delivered:

const anyReplyDelivered = queuedFinal || (counts.block ?? 0) > 0 || (counts.final ?? 0) > 0;
if (!anyReplyDelivered) {
    // ... early return
    return;
}

Config to reproduce

{
  "messages": {
    "ackReaction": "eyes",
    "ackReactionScope": "all",
    "removeAckAfterReply": true
  }
}

With block streaming enabled (default), the eyes reaction is added but never removed.

Version

Tested on Clawdbot 2026.1.24-3

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions