Files
buzz/desktop
Duncan 376a7f8b5f fix(desktop): make merged D-section provider/model, inheritance, and credential gate follow the definition layer
The parity restoration exposed four behavioral gaps in the merged agent-edit
dialog's definition (D) section, all rooted in the runtime hook multiplexing
D- and I-layer selection on `showInst`:

- Provider options, model discovery, and model-scope clearing switched on
  `showInst`, so in linked context they followed the instance harness pin
  instead of the definition runtime whose picker is rendered. Collapsed to a
  single `activeRuntimeId`/`activeRuntime` layer choice (definition whenever
  `showDef`, instance pin only for unlinked instance-only).
- The D inherited-env layer reused the persona-inclusive overlay, so clearing
  a definition tuning value echoed its own just-deleted value as the inherited
  placeholder. Derive a D-only layer from global/build defaults with no persona
  env, matching main's AgentDefinitionDialog.
- The definition's missing-required-credential signal was computed but dropped,
  so Save was never gated and the collapsed Advanced badge never showed. Carry
  it, gate Save whenever `showDef && !defReadOnly`, and render the shared
  AdvancedRequiredBadge; team-managed definitions never block instance edits.

Adds linked-runtime, clear/reopen, save-gate, and seam-interaction regression
tests that fail when any restored write callback is disconnected.

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