Repository navigation
fix(messages): default nonmember prompt to invite - #825
Conversation
c59d4da to
0075fb8
Compare
wesbillman
left a comment
There was a problem hiding this comment.
No changes requested: the new ref makes Invite the permission-gated default while preserving the Send anyway fallback and existing draft-restoration logic.
Star Lord’s automated source review via Wes’s account — head 0075fb8fb3360975c1f40fc1b4a6158e2c9352a4, base 54bd06348b28aaaed1574214c6fc919581724a3d.
Source-only: no tests or app execution; rendered keyboard behavior, including pending/failed-invitation focus, remains unverified. The single hosted CI snapshot showed JavaScript (2/2) failed and a WebKit shard still running; this is not a CI-green or merge-readiness claim.
Signed-off-by: am <6e30cd56c30e030cd31bb0939b94a7c257c9a09d5ba2d92cf2735da45629f248@buzz.block.builderlab.xyz>
0075fb8 to
c4d6b4d
Compare
wesbillman
left a comment
There was a problem hiding this comment.
No additional changes requested after checking the updated base against the prior review; the Invite-default patch and its relevant focus/membership dependencies remain unchanged.
Star Lord’s automated source review via Wes’s account — head c4d6b4df90a6c3b51931078a591f09745d70a5e2, base f8705a95ba8034c1a3c7ec5f09847db1c864d97b.
Source-only: no tests, app execution, or current CI verification; rendered keyboard behavior, including pending/failed-invitation focus, remains unverified.
* origin/main: (51 commits) fix(messages): default nonmember prompt to invite (#825) fix(toast): cancel exit-removal timers on unmount (#843) fix(me): share Messages sidebar working indicators and activity (#817) fix(messages): show typed angle-bracket text instead of dropping it (#803) fix(codex): default agent workspace to ~/.buzz (#831) View Codex and Claude sessions started in Buzz (#826) feat(codex): run bundled Codex with danger-full-access (#832) feat(codex): bundle the Codex agent type by default (#830) test(channels): split combined invitation paging test (#829) fix(dev): rebuild Vite's dependency cache on every dev start (#823) docs(agents): add buzz-specific test-audit skill (#797) fix: make inbox detail channel heading open its context (#819) fix(agents2): run each agent in one copy of the app (#790) Add Codex agents to Agents2 fix(builderlab): complete AgentsNative mock in test (#824) feat(teams): edit shared team instructions in their own record (#775) Use Sonner for bottom-right app toasts (#813) Allow bounded stdin data for fixed plugin host commands (#769) Add native Codex agents with CLI defaults (#751) Register placeholder Builderlab agent type in Agents2 (#788) ... Signed-off-by: morgmart <[email protected]>
## Problem If you mention someone who isn't in the channel and press Send, Buzz asks "Mention people outside this channel?". Since #2021 that prompt opens with focus on **Close**. Pressing Enter again right away dismisses it and leaves the draft unsent, so to invite you have to reach for the mouse. #825 had made **Invite** the default on purpose. #2021 changed it to Close as part of a broader "focus safe controls" pass. ## Change When you can add members, the prompt opens with focus on **Invite** again, so Send then Enter invites the person and sends. - Escape and Close still dismiss the prompt and keep the draft unsent. - If you can't add members to the channel, focus still starts on Close (no change). - The old-agent import prompt and the archive and delete confirmations keep #2021's safe defaults. Only this prompt changes. ## Testing - `vitest run` (full): 1020 files and 19336 tests passed. - Updated the `MessageComposer` tests: - "Enter right after the prompt opens invites a nonmember and sends": Invite has focus when the prompt opens, and Enter adds the person and sends. - The close/escape test now expects Invite to have initial focus and still checks that nothing is added or sent. Its old "enter" case was the exact behavior this PR reverses, so I removed it. - Not yet tried in the running app. Signed-off-by: Bradley Axen <[email protected]> Co-authored-by: mbot <3754f8729004d95654c46dbab3129e4ab9ef05cc2534e2a3fbfc155983bd637b@buzz.block.builderlab.xyz>
Summary
Verification
src/features/messages/MessageComposer.test.tsx: 265 passed, including keyboard Enter invoking Invite and forbidden-invite focus.biome checkon both changed files andgit diff --checkpassed.pnpm typecheckblocked by a pre-existingAgentsNativefixture missingquery,upload,rememberinsrc/bundled/builderlab/index.test.tsx:45(same fixture at main). No live relay or browser E2E run.No browser case added or removed: Base UI keyboard activation of the focused button is covered by the existing mounted React component test, including the session membership call and final send.