Skip to content

feat(chats): ask to share access when sending a chat link into a DM - #1614

Merged
morgmart merged 2 commits into
mainfrom
morganm/dm-share-prompt
Oct 25, 2026
Merged

morgmart merged 2 commits into
mainfrom
morganm/dm-share-prompt

Conversation

@morgmart

Copy link
Copy Markdown
Contributor

What changed

Sending a chat link into a DM or group DM now asks Share and send or Send link only, the same as sending one into a channel (#1529). Before, DMs sent the link without asking, so the person you sent it to usually couldn't open the chat.

  • The dialog names the people who would get access, for example "Share gives Kenny access to the full chat history and future messages." It names up to three people. For more than three, or while someone's name is still loading, it says "the 4 other people in this DM".
  • If everyone in the DM already has access, the message sends without asking.
  • Share and send uses the same grant flow as channels: the same captured audience, safe retry, and draft-change checks. Solo destinations still don't ask.

Testing

  • New tests:
    • In a DM, the prompt appears, then Share and send grants access before the message posts.
    • The dialog names the person once their profile is known.
    • No prompt appears when everyone already has access.
    • The two prompt tests fail on main's code.
  • Replaced the old test that asserted DMs never ask.
  • pnpm check and the full vitest run src pass, except one unrelated Codex test that timed out and passes on rerun.
  • The local pre-push check was skipped with Morgan's OK. The laptop was overloaded, so unrelated tests timed out there. CI runs the full suite.

Updates docs/solo/sharing.md to match.

🤖 Generated with Claude Code

Sending a chat link in a DM or group DM now asks Share and send or Send link
only, as channels do. The dialog names the people who would get access, or
counts them while a name is unknown, and skips asking when everyone already
has access.

Co-authored-by: Morgarita <6e967af659416160ab4f2fd56d74c8c6f273791ee7bfc9468a1be37c387947be@buzz.block.builderlab.xyz>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Signed-off-by: morgmart <[email protected]>
@morgmart
morgmart requested a review from a team as a code owner October 25, 2026 20:32

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 Star Lord’s automated source review via Wes’s account, integrating independent Rocket, Mantis and Groot lanes.

One P2 finding inline: use the existing identity naming policy so DM consent distinguishes same-named recipients before granting full chat-history access.

Reviewed head bed5024b9c253c3978f68a66998857733ebd6042 against base 9946aaba654a4e9e47470707918b83ca13e1d01b. Source-only; no tests or app execution. Hosted CI was still running at the snapshot; native and rendered accessibility behavior remain unverified.

A DM's consent named recipients by their raw profile name, so two people
named Sam read the same. Names now resolve against the whole DM roster,
which qualifies namesakes, including ones who already have access.

Co-authored-by: Morgarita <6e967af659416160ab4f2fd56d74c8c6f273791ee7bfc9468a1be37c387947be@buzz.block.builderlab.xyz>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Signed-off-by: morgmart <[email protected]>

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 Star Lord’s automated source review via Wes’s account, integrating Rocket, Mantis and Groot: no changes requested in this follow-up. The prior recipient-naming finding is resolved: consent uses the active identity policy across the full DM roster, distinguishing namesakes who already have access while preserving the captured grant audience. Reviewed head 8e77008ef2aa3cc402660f89d03dc165264d76b1 against base 9946aaba654a4e9e47470707918b83ca13e1d01b, focusing on changes since bed5024b9c253c3978f68a66998857733ebd6042. Source-only; tests, rendered/accessibility flows, native behavior and CI were not verified.

@baxen baxen left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 LGTM — DM consent reuses the channel grant path; naming fix addressed.

@morgmart
morgmart merged commit 8739ac2 into main Oct 25, 2026
37 checks passed
@morgmart
morgmart deleted the morganm/dm-share-prompt branch October 25, 2026 22:40
johnmatthewtennant added a commit that referenced this pull request Oct 26, 2026
…r-emoji-size

* origin/main: (26 commits)
  perf(profiles): notify once per batch of owner attestations (#1650)
  feat(pi): load Pi durable extensions and providers from Pi packages (#1610)
  Teach agents memory links and source metadata; frame memory as information (#1562)
  Make avatar choices visible in agent creation (#1631)
  fix(pi): take plugin wakes instead of ignoring them (#1612)
  perf(agents): parse activity records once per snapshot (#1449)
  perf(terminal): parse hidden terminal output in slices (#1459)
  perf(composer): reuse the document projection for editor reads (#1463)
  perf(read-state): load peer journals without a strict writeback (#1448)
  perf(channels): keep openLink stable across tab changes (#1525)
  fix: name the Cargo package Buzz so the dev build shows "Buzz" (#789)
  test(browser): re-type a dropped page name in the search palette (#1635)
  test(browser): fix two main CI timing failures (#1567)
  feat(agents): deliver Attention watches and timers to conversations (#1578)
  fix(inbox): stop listing tag-only composer state as drafts (#1531)
  Choose Builderlab agent models at creation and in Settings (#1533)
  feat(communities): sync known communities through Builderlab accounts (#644)
  Tag the last-tagged agent when a Solo chat composer is shown empty (#1615)
  perf(usage): read Claude usage once, then only what changed (#1586)
  feat(chats): ask to share access when sending a chat link into a DM (#1614)
  ...
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.

3 participants