Skip to content

CL-5768: Close cross-tenant holes in chat, commands, and channel streams - #14

Merged
TheGreatAxios merged 2 commits into
mainfrom
cl-5768-security-close-cross-tenant-holes-in-chat-commands-and
Aug 9, 2026
Merged

CL-5768: Close cross-tenant holes in chat, commands, and channel streams#14
TheGreatAxios merged 2 commits into
mainfrom
cl-5768-security-close-cross-tenant-holes-in-chat-commands-and

Conversation

@TheGreatAxios

Copy link
Copy Markdown
Contributor

Summary

  • Every /channels/:id/* path that mutates or streams resolves the channel inside the request tenant before acting; mismatches 404.
  • fetchBlob is scoped to the channel tenant; commands execute validates channelId tenant membership.
  • Regression coverage on chat + commands routes for foreign-tenant ids.

Test plan

  • bun test packages/chat packages/commands
  • Manual two-tenant fixture: foreign channel id returns 404 on messages/stream/typing/invite/commands

Closes CL-5768

Agent mailboxes are workflow instance ids with a channel_launch row,
not channel_settings. The cross-tenant gate now accepts either record
so invite→list-messages works while foreign tenants still 404.
@TheGreatAxios
TheGreatAxios merged commit 26e89df into main Aug 9, 2026
2 checks passed
@TheGreatAxios
TheGreatAxios deleted the cl-5768-security-close-cross-tenant-holes-in-chat-commands-and branch August 9, 2026 07:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant