mirror of
https://github.com/block/buzz.git
synced 2026-10-31 06:21:34 +00:00
Thufir's mutation showed that deleting the `outcome === "failed"` clear in `permission-request-card.tsx` left all 7 PermissionRequestCardBlock jsdom tests green, meaning Carl's P1 regression (stuck Decision sent, no retry path) could silently return. Three files changed, zero production behavior change: - `permission-request-card.tsx`: add `_deliveryFn` seam prop (defaults to `startPermissionDecisionDelivery`); threaded through PermissionRequestCard → PendingPermissionRequestCard → PermissionButtons. Matches the existing isKnownAgentPubkey injection pattern. - `PermissionRequestCardBlock.tsx`: accept and forward `_deliveryFn`; added to memo equality check. - `PermissionRequestCardBlock.test.mjs`: new 8th test `test_failed_delivery_re_enables_buttons_and_successful_retry_reaches_sent` — renders the card, clicks allow, resolves delivery as "failed", asserts buttons return and Decision sent clears, retries, resolves "acked", asserts terminal sent state with buttons hidden. Mutation proof: deleting `if (outcome === "failed") setSubmitted(null)` fails the new test at "buttons re-enabled after failed delivery"; existing 7 remain green. 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