Repository navigation
feat(messaging): several apps per platform, Bind app shows every app's owner (#1110) - #1121
Merged
Merged
Conversation
…llow again (#1109) The app's Conversations list in Edit identity sorts entries into Waiting, Active, Muted and Blocked. Mute admits silently, Rules reuses the group reception editor, Block revokes the entry, cancels unsent replies and writes a durable block per Bot, app fingerprint and conversation that survives restart and rebind; Allow again creates a fresh entry with no backfill. New conversations can be admitted automatically or held for the user, and new entries are bounded to 20 per hour and 500 active per app with at most 200 held. Issue: #1109 Agent-Task: claude-code/cloud/session_01WXjBatxGTRyRSxZYeJpqgH Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WXjBatxGTRyRSxZYeJpqgH
A Bot can now bind several apps of the same platform; one app still belongs to one Bot. Generation 63 drops messaging_binding_bot_platform and the bind and authorize commands no longer refuse a second app of a platform. A new apps projection lists every Provider account with its bound Bot; Bind app hides apps another Bot uses, External identities groups apps by platform, and Bot settings gets an IM apps list that refreshes on roster changes. Shared replies from a Bot with two apps in the same group refuse with reply-target-ambiguous. Issue: #1110 Agent-Task: claude-code/cloud/session_01WXjBatxGTRyRSxZYeJpqgH Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WXjBatxGTRyRSxZYeJpqgH
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configuration
📒 Files selected for processing (21)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This was referenced Oct 7, 2026
Per review, the app overview lives where apps are chosen. Bind app now lists every connected app: apps a Bot already uses are disabled and name that Bot (or say they are bound to this Bot), disconnected apps say so, and Manage app credentials opens IM bots settings. The IM apps list in Bot settings and its messagingApps bridge method are removed; the snapshot's accounts already carry the owner. Issue: #1110 Agent-Task: claude-code/cloud/session_01WXjBatxGTRyRSxZYeJpqgH Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WXjBatxGTRyRSxZYeJpqgH
# Conflicts: # CHANGELOG.md # CHANGELOG.zh.md # packages/client/src/client/external-entries.tsx # packages/client/src/client/external-identity-list.tsx # packages/client/src/client/locale.ts # packages/client/test/external-identity-list.test.ts # packages/core/src/database/schema-plan.ts
DoodleBears
changed the base branch from
claude/1109-conversation-list
to
main
October 7, 2026 17:11
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.
Requested by Vain · project thread
Closes #1110 · part of #1107 · ADR-0142 · stacked on #1120 (base switches to
mainonce #1120 merges)Before: a Bot could bind only one app per platform. Bind app greyed out a second Lark app, and nothing showed which Bot used which app.
After: one Bot can bind several apps of the same platform. Each app's DMs and @mentions reach the same Inbox, and replies go out through the app that received them. Bind app lists every connected app: apps a Bot already uses are greyed out and name that Bot (or say they are bound to this Bot), and disconnected apps say so. Manage app credentials in the dialog opens IM bots settings. External identities lists the Bot's apps sorted by platform.
How
messaging_binding_bot_platform.messaging_binding_accountandmessaging_binding_principalstay, so one app still belongs to one Bot.bot_slug = ? AND platform = ?.apps()projection lists each Provider account withboundBotSlugandbindingId; the snapshot'saccountsreuse it.reply-target-ambiguous, and a test locks this.Screenshots
From a real Host with a simulated Lark provider exposing four apps. All variants: https://github.com/BotHarness/BotHarness/tree/claude/1110-several-apps/docs/assets/pr/1110-several-apps
Tests
messaging-several-apps.test.ts:binding-conflict.apps()and Bea's snapshot show the owner, and the owner changes after unbind and rebind.reply-target-ambiguousonce the responder has two apps in the group.messaging-several-apps-migration.test.ts: before gen 63 a second same-platform app is refused; after it, the app is accepted, while a second Bot still cannot take the same app.pnpm changelog:checkare clean.Real Host (DSH 0.2.0-rc.1, OpenCode Go model):
binding-conflict.Merge risk
openImSettings, which needs the DSH IM bots settings page. The QA profile has no dsh-im plugin, so that click was not verified end to end.Human verification
🤖 Generated with Claude Code
https://claude.ai/code/session_01WXjBatxGTRyRSxZYeJpqgH
Generated by Claude Code
Summary by CodeRabbit