lobster-biscuit
Summary
Slack thread replies leak to main channel when messages are queued during agent processing.
Repro Steps
- Configure Slack with
replyToMode: all
- Send 2+ messages quickly while agent is busy
- Messages enter followup queue, get collected/drained
- Response appears in main channel instead of thread
Expected
Queued responses preserve thread_ts and reply in the correct thread.
Actual
typeof threadId === "number" in drain.ts drops Slack string thread_ts. Thread key becomes empty, collected reply goes to channel.
Environment
- OpenClaw version: 2026.2.6
- OS: macOS 15 (Apple Silicon)
- Install method: pnpm (source)
- Channel: Slack
Logs/Evidence
// drain.ts — broken check (only accepts Telegram numeric IDs)
const threadKey = typeof threadId === "number" ? String(threadId) : "";
// Slack thread_ts is string like "1770474140.187459" → fails → threadKey = ""
Impact
All Slack users with queue mode enabled lose thread context on queued replies. Moderate severity — messages work but land in wrong place.
Workarounds
None known.
Related
lobster-biscuit
Summary
Slack thread replies leak to main channel when messages are queued during agent processing.
Repro Steps
replyToMode: allExpected
Queued responses preserve
thread_tsand reply in the correct thread.Actual
typeof threadId === "number"indrain.tsdrops Slack stringthread_ts. Thread key becomes empty, collected reply goes to channel.Environment
Logs/Evidence
Impact
All Slack users with queue mode enabled lose thread context on queued replies. Moderate severity — messages work but land in wrong place.
Workarounds
None known.
Related