mirror of
https://github.com/block/buzz.git
synced 2026-10-30 22:11:36 +00:00
Three review fixes for relay-primary private managed-agent config: - Tombstone owner-binding (review issue 4): resolve_inbound_tombstone now rejects any kind:5 whose signer is not the workspace owner, in Rust, so a foreign-owner tombstone with a colliding d-tag cannot delete local state through direct IPC. - Tombstone-aware head deletion (review issue 2): the covered retained kind:30177/30179 heads are deleted in the same transaction as the kind:5 retain, so boot rehydration can no longer resurrect a deleted secret-bearing agent. A head strictly newer than the tombstone is a recreation/late replay and is preserved (NIP-09 bound). - Equal-second convergence (review issue 3): inbound_event_outcome applies the NIP-01 addressable-event tiebreak at equal created_at — inbound wins only with a lexicographically lower event id — so two devices authoring same-second successors converge on the relay's winner instead of diverging forever. A losing pending local edit has pending_sync cleared since the relay would refuse it anyway. Co-authored-by: Brain <1a02c72794dcd0f07058a353bc3a81f4028b8c77c92c87fce6d5c8b85970a20b@buzz.block.builderlab.xyz> Signed-off-by: Brain <1a02c72794dcd0f07058a353bc3a81f4028b8c77c92c87fce6d5c8b85970a20b@buzz.block.builderlab.xyz>
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