Files
buzz/desktop
Logan Johnson 7f8c2e5c30 🤖 fix(desktop): keep buffered messages reachable (#7553)
🤖
## Summary
Keeps buffered messages reachable while you read, so the way back to the
newest message never disappears.

- **"Jump to latest" stays available whenever messages are waiting.**
While you read away from the newest message, new arrivals are buffered;
the pill could vanish even then, leaving no way down. Clicking it
releases them and scrolls to newest.
- Browser regressions drive that recovery with real input: a native
wheel-return to the frozen bottom, the button kept through panel close,
an ambiguous @ mention replaced with the exact recipient before
resending, and authored drafts deleted through the real editor with a
native select-all.

Based on the mention-editor integration branch, which now includes #7190
and #7191. The send-flow failure handling this branch originally carried
— visible mention-resolution errors that release the pending send, and
one shared authorization-error reason — landed with #7191 and is
unchanged here; the remaining diff is the timeline recovery and its test
coverage.

### Related issue
Continues the merged mention-editor work from #7124 and #7128.
Discovered during #7239 — its separately authorized follow-up, not a
replacement.

[Originating Buzz
conversation](buzz://message?channel=8dcd7afb-0193-4a3e-8ae9-72838de89a1d&id=00f3b6fc0f24a5be445fdb8b1fd092cbdae5eb46615d95119ef2d8c566396738)

### Testing
- Browser regressions: native wheel-return to the frozen bottom, panel
close without losing the button, ambiguous-send recovery via the exact
recipient, and the dirty-edit fixture's real select-all with real
keyboard focus (wrong-replacement negative control included).
- This head's exact tree is the validated candidate: full desktop
package suite (6,164 tests), typecheck and E2E build, formatting and
text-size guards, and 38 Chromium browser regressions with zero retries.
- PR checks gate this head. Browser evidence is mock-bridge Chromium —
no native Tauri/WebKit, VoiceOver, IME, or live-relay claim.

Signed-off-by: Logan Johnson <loganj@squareup.com>
Co-authored-by: Larry <627498bd4bd1f281a16431e3c6cce3b5c25b6692798c78672298aefbf2f8f8b5@buzz.block.builderlab.xyz>
2026-09-11 13:56:49 -04:00
..
…

Buzz

Desktop chat shell with:

  • Tauri + React + TypeScript + Vite
  • Tailwind CSS
  • shadcn/ui-ready shared components
  • Biome (lint/format/check)
  • Feature-driven frontend structure

Scripts

  • pnpm dev - run the web frontend
  • pnpm tauri dev - run the desktop app
  • pnpm build - typecheck and build frontend
  • pnpm typecheck - TypeScript checks
  • pnpm lint - Biome lint
  • pnpm format - Biome format (write)
  • pnpm check - Biome check

Structure

  • src/shared - reusable app-wide code (ui, lib, styles)
  • src/features - feature modules (vertical slices)
  • src/app - top-level app composition