feat(feishu): add workspace_thread_isolation for topic-level workspace binding - #1648
Open
n-wen wants to merge 1 commit into
Open
feat(feishu): add workspace_thread_isolation for topic-level workspace binding#1648n-wen wants to merge 1 commit into
n-wen wants to merge 1 commit into
Conversation
…e binding Add a new workspace_thread_isolation config that enables topic-scoped workspace bindings in Feishu group chats without auto-creating topics. Unlike thread_isolation (which both creates topics on bot reply and isolates sessions), this new option only affects workspace routing: messages inside an existing topic get a topic-scoped ChannelKey so each topic can bind an independent workspace via /workspace bind. This allows users who prefer replies in the main chat (no auto-topic) to still leverage per-topic workspace isolation in multi-workspace mode.
24 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add
workspace_thread_isolationconfig for Feishu platform, enabling topic-level workspace binding in multi-workspace mode without auto-creating reply topics. This allows users to keep bot replies in the main chat (no auto-topic) while still isolating workspaces per topic when users reply inside existing topics.Type of change
Testing
Automated tests added in this PR
TestPopulateWorkspaceChannelKeys_WorkspaceThreadIsolationinplatform/feishu/platform_test.go— 7 sub-cases covering all config combinations (thread_isolation only, workspace_thread_isolation only, both, neither, rootID priority, fallback to session key, p2p chat)For bug fixes only — regression test
N/A — this is a new feature, not a bug fix.
Critical User Journeys (CUJ) impact
No CUJ touched (small refactor, doc change, etc.)
A — basic conversation
B — session lifecycle (
/new/switch/list/historyetc.)C — agent execution control (
/mode/cancel/stoppermissions)D — security & permissions (
allow_fromadmin_frombanned_wordsrate limits)E — scheduled tasks (
/cron/timer)F — config switching (
/lang/provider/modelreload)G — error handling & robustness (LLM failure, ws reconnect, agent crash)
H — multi-platform / multi-project isolation
I — UI rendering correctness (cards, streaming, display modes)
go test ./core/ -run TestCUJpasses locally (TestCUJ_H4_FeishuTopicsKeepWorkspaceBindingsIsolated passes).N/A — the new
workspace_thread_isolationconfig is additive and does not alter the existingthread_isolationflow tested by CUJ_H4.Manual / user-visible behavior change
thread_isolationworkspace_thread_isolationtruefalsetruefalsefalseUsers who previously couldn't use
thread_isolation(because auto-creating topics was undesirable) can now enableworkspace_thread_isolationalone to get per-topic workspace binding when users reply inside existing topics.Checklist
go build ./...passes (web dist missing is pre-existing)go test ./...passes (pre-existing Windows path failures unrelated)core/FIX: #1644