Files
buzz/desktop/src
npub1g8493u0xfsjrvflg4n08ezd7vec99mnwzlv0qgwpr9d7gvjwhuzqx59rhw 7b019da1a4 feat(desktop): Phase 2b pass 2 — production TS cutover and provider-aware labels
getProviderEffortConfig() is now generated-backed (thin wrapper over
resolveModelCapabilities() from modelCapabilities.ts). The old hand-table
implementation is preserved as getProviderEffortConfig_oldHandTable() for
the differential harness shim only — nothing user-facing imports the _old
name. AgentConfigFields.tsx and buzzAgentModelTuningFields.tsx continue
calling getProviderEffortConfig() with zero call-site churn and now receive
generated capabilities (including the F1 correction: databricks-gpt-5-5
allows only low|medium|high).

resolveModelLabel() gains an optional provider param that routes through
provider-qualified resolveModelCapabilities() registryLabel before falling
back to the unscoped DATABRICKS_MODEL_NAMES map. Provider threaded at all
provider-bearing call sites: ManagedAgentRow, ModelPicker, TeamIdentityCard,
usePersonaModelDiscovery, agentCardModelLabel, UnifiedAgentsSection, and
UserProfilePopover. AgentConfigFields fallbackModel label (genuinely
providerless) is left unscoped per plan.

Explicit .ts extension on modelCapabilities import in buzzAgentConfig.ts
(allowImportingTsExtensions is on) — enables Duncan to delete the
ts-esm-loader.mjs shebang bootstrap and run the differential script as
plain node --experimental-strip-types.

Test update: databricksModelNames.test.mjs regex updated to match the
provider-threaded call site resolveModelLabel(model.id, model.name, agent.provider).

All four gates at this head: typecheck clean, 3847/3847 unit pass, biome
clean (2 pre-existing infos), check:file-sizes and check:pubkey-truncation
pass.

Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
2026-07-31 13:51:41 -04:00
..
2026-07-30 07:51:25 -07:00
2026-03-09 13:02:11 -07:00