openclaw/docs
Vincent Koc 89a1e99815
fix(slack): finalize replyToMode off threading behavior (#23799)
* fix: make replyToMode 'off' actually prevent threading in Slack

Three independent bugs caused Slack replies to always create threads
even when replyToMode was set to 'off':

1. Typing indicator created threads via statusThreadTs fallback (#16868)
   - resolveSlackThreadTargets fell back to messageTs for statusThreadTs
   - 'is typing...' was posted as thread reply, creating a thread
   - Fix: remove messageTs fallback, let statusThreadTs be undefined

2. [[reply_to_current]] tags bypassed replyToMode entirely (#16080)
   - Slack dock had allowExplicitReplyTagsWhenOff: true
   - Reply tags from system prompt always threaded regardless of config
   - Fix: set allowExplicitReplyTagsWhenOff to false for Slack

3. Contradictory replyToMode defaults in codebase (#20827)
   - monitor/provider.ts defaulted to 'all'
   - accounts.ts defaulted to 'off' (matching docs)
   - Fix: align provider.ts default to 'off' per documentation

Fixes: openclaw/openclaw#16868, openclaw/openclaw#16080, openclaw/openclaw#20827

* fix(slack): respect replyToMode in DMs even with typing indicator thread

When replyToMode is 'off' in DMs, replies should stay in the main
conversation even when the typing indicator creates a thread context.

Previously, when incomingThreadTs was set (from the typing indicator's
thread), replyToMode was forced to 'all', causing all replies to go
into the thread.

Now, for direct messages, the user's configured replyToMode is always
respected. For channels/groups, the existing behavior is preserved
(stay in thread if already in one).

This fix:
- Keeps the typing indicator working (statusThreadTs fallback preserved)
- Prevents DM replies from being forced into threads
- Maintains channel thread continuity

Fixes #16868

* refactor(slack): eliminate redundant resolveSlackThreadContext call

- Add isThreadReply to resolveSlackThreadTargets return value
- Remove duplicate call in dispatch.ts
- Addresses greptile review feedback with cleaner DRY approach

* docs(slack): add JSDoc to resolveSlackThreadTargets

Document return values including isThreadReply distinction between
genuine user thread replies vs bot status message thread context.

* docs(changelog): record Slack replyToMode off threading fixes

---------

Co-authored-by: James <jamesrp13@gmail.com>
Co-authored-by: theoseo <suhong.seo@gmail.com>
2026-02-22 13:27:50 -05:00
..
.i18n fix(docs): revert accidental es/pt-BR translation scaffold from #18473 2026-02-17 02:23:41 +01:00
assets docs: add sponsors section to README 2026-02-21 13:00:02 +01:00
automation fix(heartbeat): run when HEARTBEAT.md is missing 2026-02-19 19:32:18 -05:00
channels fix(slack): finalize replyToMode off threading behavior (#23799) 2026-02-22 13:27:50 -05:00
cli feat(update): add core auto-updater and dry-run preview 2026-02-22 17:11:36 +01:00
concepts fix: document onboarding dmScope default as breaking change (#23468) (thanks @bmendonca3) 2026-02-22 12:36:49 +01:00
debug Docs: enable markdownlint autofixables except list numbering (#10476) 2026-02-06 10:08:59 -05:00
diagnostics Docs: add nav titles across docs (#5689) 2026-01-31 15:04:03 -06:00
experiments docs: update pty supervision test command paths 2026-02-22 10:48:37 +00:00
gateway refactor(gateway): unify credential precedence across entrypoints 2026-02-22 18:55:44 +01:00
help Feat/logger support log level validation0222 (#23436) 2026-02-22 11:15:13 +01:00
images Docs: add screenshot showing model picker usability issue 2026-02-17 09:15:55 +01:00
install feat(update): add core auto-updater and dry-run preview 2026-02-22 17:11:36 +01:00
ja-JP docs: fix ja-JP dashboard URL link 2026-02-09 11:26:27 -06:00
nodes fix(security): block shell env allowlist bypass in system.run 2026-02-22 12:47:05 +01:00
platforms fix(security): block shell env allowlist bypass in system.run 2026-02-22 12:47:05 +01:00
plugins docs: add community plugins guide 2026-02-17 17:42:37 +01:00
providers docs: normalize Amazon Bedrock setup section labels (#22549) 2026-02-21 03:40:54 -05:00
refactor fix(config): accept $schema key in root config (#15280) 2026-02-14 03:07:12 +01:00
reference refactor: tighten onboarding dmScope typing and docs links 2026-02-22 12:46:09 +01:00
security Centralize date/time formatting utilities (#11831) 2026-02-08 04:53:31 -08:00
start refactor: tighten onboarding dmScope typing and docs links 2026-02-22 12:46:09 +01:00
tools docs: document verbose-gated tool error details 2026-02-22 15:26:48 +01:00
web fix(gateway): scope tailscale tokenless auth to websocket 2026-02-21 13:03:13 +01:00
zh-CN fix(subagents): return completion message for manual session spawns 2026-02-18 02:52:35 +01:00
CNAME refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
brave-search.md Docs: enable markdownlint autofixables except list numbering (#10476) 2026-02-06 10:08:59 -05:00
ci.md ci: move workflows to blacksmith 16vcpu runners 2026-02-19 17:25:15 +01:00
date-time.md Docs: add nav titles across docs (#5689) 2026-01-31 15:04:03 -06:00
docs.json docs: add community plugins guide 2026-02-17 17:42:37 +01:00
index.md Docs: enable markdownlint autofixables except list numbering (#10476) 2026-02-06 10:08:59 -05:00
logging.md Feat/logger support log level validation0222 (#23436) 2026-02-22 11:15:13 +01:00
nav-tabs-underline.js docs(ui): add animated underline for nav tabs (#21912) 2026-02-20 09:33:46 -05:00
network.md docs: canonicalize docs paths and align zh navigation (#11428) 2026-02-07 15:40:35 -05:00
perplexity.md Docs: enable markdownlint autofixables except list numbering (#10476) 2026-02-06 10:08:59 -05:00
pi-dev.md Docs: enable markdownlint autofixables except list numbering (#10476) 2026-02-06 10:08:59 -05:00
pi.md fix: align pi-coding-agent typings and docs 2026-02-01 16:08:01 -08:00
prose.md docs: canonicalize docs paths and align zh navigation (#11428) 2026-02-07 15:40:35 -05:00
style.css fix(ios): force tls for non-loopback manual gateway hosts (#21969) 2026-02-20 16:28:47 +00:00
tts.md fix(tts): make model provider overrides opt-in 2026-02-21 13:16:07 +01:00
vps.md Docs: enable markdownlint autofixables except list numbering (#10476) 2026-02-06 10:08:59 -05:00
whatsapp-openclaw-ai-zh.jpg Docs: add zh-CN landing notice + AI image 2026-02-02 18:35:01 +01:00
whatsapp-openclaw.jpg refactor: rename to openclaw 2026-01-30 03:16:21 +01:00