Files
buzz/desktop
Logan Johnson 8b4f9d6d3f test(desktop): disambiguate workflow step text fills and settle inspector geometry
The "Message text" label exists in both the outgoing trigger pane and the
newly added send-message step pane; during the inspector's 150ms
AnimatePresence mode="wait" exit the unscoped dialog.getByLabel resolves
to the single mounted trigger input, so the step fill overwrote the trigger
condition and left the step text empty. On the slow CI runner this corrupted
the saved definition: workflows.spec.ts then waited forever for the "Turn on"
activation dialog that a filtered trigger correctly suppresses, and
workflow-local-controls.spec.ts reopened on the YAML tab with no Trigger
node button. Scope the five step-intended fills to the step textarea id
(wf-step-<i>-text) so the fill waits for the intended pane to mount;
trigger-intended "Message text" bindings and all assertions stay unchanged.

The reopened-inspector geometry sampled operator boundingBoxes up to
~160ms into the 240ms inspector column entry animation (waitForAnimations
ran only after the comparisons). Settle with the shared waitForAnimations
boundary before sampling; geometry thresholds are untouched.

Trace evidence: CI run 34188379868, job 101941389576 — the step fill resolved
to wf-trigger-trigger_text-value during the exit window.

Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-08 02:22:43 -04:00
..
2026-03-09 13:02:11 -07:00
…
2026-03-09 13:02:11 -07: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