fix(discord): isolate conversations per-thread in thread-only mode
Thread-only mode previously relied on the global conversationMode to determine whether threads got separate conversations. In shared or per-channel mode, all threads shared one conversation causing crosstalk. Add forcePerChat flag on InboundMessage that the Discord adapter sets when thread-only mode is active. resolveConversationKey treats flagged messages as per-chat regardless of the configured mode, giving each thread its own isolated conversation while still sharing agent memory. Written by Cameron ◯ Letta Code "Time is an illusion. Lunchtime doubly so." -- Douglas Adams
This commit is contained in:
@@ -461,6 +461,8 @@ channels:
|
||||
|
||||
Thread messages inherit parent channel config, so child threads under `EZRA_CHANNEL_ID` use the same group rules.
|
||||
|
||||
When `threadMode: thread-only` is set, each thread automatically gets its own isolated conversation (message history), regardless of the global `conversations.mode` setting. This prevents messages from different threads from being interleaved in the same conversation. Agent memory (blocks) is still shared across all threads.
|
||||
|
||||
### Finding Group IDs
|
||||
|
||||
Each channel uses different identifiers for groups:
|
||||
|
||||
Reference in New Issue
Block a user