Files
buzz/desktop
Duncan cc5b6a1ccd feat(desktop): merge agent edit surface into a single dialog
Merges the two agent edit dialogs (AgentInstanceEditDialog,
AgentDefinitionDialog) into a single AgentEditMergedDialog that every edit
entry point — the agents library, the profile panel, owner review, and the
requestOpenEditAgent event path — reaches through AgentEditDialog.
AgentInstanceEditDialog is deleted, AgentDialog's instance-edit arm is
removed, and the editPersonaDialogState export is gone.

One canonical form model: seedAgentFormModel builds an AgentFormModel from the
edit context and owns every editable field; emitAgentFormDiff routes each
changed field to its owning layer via the single FIELD_OWNERS map, which also
drives per-field editability and the catalog-publish dirty signal.

Save coordinator settles from observed state: definition → instance → policy
writes, each followed by a store refetch — a write that threw after landing on
disk counts as persisted, and a submitted behavior group (respondTo /
respondToAllowlist / parallelism) settles as the full-replacement unit the
backend writes, so a clear the backend failed to apply cannot false-succeed.

Definition and instance runtime state are independent; definition behavior
fields (access, allowlist, parallelism) are first-class with an unset respondTo
shown as owner-only; team-managed definitions are read-only with a notice while
instance-owned fields stay editable.

Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
2026-08-25 13:41:06 -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