mirror of
https://github.com/block/buzz.git
synced 2026-11-01 06:51:17 +00:00
Fixes three Thufir pass-1 conformance defects in the incomplete-load path: 1. applyOverrideRead() no longer returns early before calling markChannelRead() when load is incomplete. The manager's queued branch is now reachable from the UI pre-ready. load_incomplete refusal (no relay client) still fails closed as overrideStillActive. Pre-ready null liveness is no longer treated as known absence; the null short-circuit is guarded behind isReadStateReady. 2. Both markContextRead() call sites (single-channel and markAllChannelsRead) are gated on overrideApis.isReadStateReady — no frontier mutation fires while the load is incomplete. Drain performs the authoritative advance on the next complete-load transition. 3. rawUnread opens the pre-ready gate for local forced entries and pending intents via computePreReadyUnread() (extracted to readStateOverride.ts). Precedence: pending read suppresses > pending unread asserts > committed forced entry. Partial manager/observed state is never consulted pre-ready. Replaces two obsolete fail-closed tests with v4-conformant witnesses. Adds four required biting witnesses (a)-(b)-(c)-(d): preReady_read_witness_a_queued_intent_recorded preReady_read_witness_b_zeroMutationZeroPublish preReady_unread_witness_c_pendingUnread_visible_during_loading preReady_read_witness_d_queued_read_preserves_sources_overrideStillActive Co-authored-by: Will Pfleger <pfleger.will@gmail.com> Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
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 frontendpnpm tauri dev- run the desktop apppnpm build- typecheck and build frontendpnpm typecheck- TypeScript checkspnpm lint- Biome lintpnpm 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