fix(model-capabilities): humanize databricks goose model names (#7135)

🤖
## Summary
- add curated human-readable labels for Databricks Goose models that
otherwise render as fully qualified identifiers
- render `data_workflow_tools.goose.goose-glm-5-3` as `GLM-5.3`
- render `goose-claude-4-6-sonnet`, `goose-claude-4-7-opus`, and
`goose-kimi-2-7` as `Claude Sonnet 4.6`, `Claude Opus 4.7`, and `Kimi
2.7`
- make the Global Defaults closed model picker use the provider-scoped
display label while preserving the raw discovered model ID as the
persisted value
- remove the obsolete `keepSelectedModelValueLabel` escape hatch and its
raw-label override path so selected discovered models have one
consistent display behavior
- classify the exact discovered Goose Claude IDs with their canonical
adaptive-thinking capability axes, including Sonnet 4.6's exclusion of
`xhigh`
- expand Rust and TypeScript alias coverage and regenerate the shared
139-vector capability corpus

## Test plan
- `cargo test -p buzz-agent --lib` — 517 passed, 1 ignored
- `cd desktop && pnpm test` — 5,821 passed
- Desktop TypeScript typecheck — passed
- Biome on the changed component — passed
- `git diff --check` — passed
- targeted Playwright Global Defaults regression — passed on the
preceding implementation head; the subsequent commit only removes dead
picker-prop plumbing

Verified at `b9609d12696173aa309d2dbaf4f093a502756c36`. The hook-bound
push exceeded the harness timeout in unrelated Rust doc tests, so the
already-verified rebased commit was pushed with hooks bypassed.

Follow-up to #6955.

---------

Signed-off-by: Kalvin Chau <kalvin@block.xyz>
Co-authored-by: am <6e30cd56c30e030cd31bb0939b94a7c257c9a09d5ba2d92cf2735da45629f248@buzz.block.builderlab.xyz>
This commit is contained in:
Kalvin C
2026-08-31 17:13:59 -07:00
committed by GitHub
parent 9ab163190b
commit 0affe527e8
9 changed files with 215 additions and 17 deletions

View File

@@ -601,6 +601,24 @@
"_reconciliation_note": "models.dev advertises reasoning_options=[{\"type\":\"budget_tokens\",\"min\":1024}]. This is a different capability axis (extended thinking token budget), not an effort-level selector. No effort divergence to reconcile — efforts for this model come from the anthropic family rule (anthropic-adaptive-xhigh-opus-4-7).",
"_reconciliation_doc": "https://models.dev/api.json (retrieved 2026-07-31, SHA-256 d5a4974cd69f19b0f67713acaa6bb3b16e920defdc07ecbdf6b0a936181bb0e0): providers.databricks.models[\"databricks-claude-opus-4-7\"].reasoning_options=[{\"type\":\"budget_tokens\",\"min\":1024}]"
},
{
"provider": "databricks_v2",
"raw_model_id": "goose-claude-4-7-opus",
"registry_label": "Claude Opus 4.7",
"thinking_mode": "adaptive",
"supported_efforts": [
"low",
"medium",
"high",
"xhigh",
"max"
],
"default_effort": "high",
"databricks_v2_wire_route": "anthropic-messages",
"normalization_policy": "none",
"_provenance": "all axes copied from equivalent registry endpoint databricks-claude-opus-4-7 for the discovered Goose endpoint id",
"_source": "registry_labels"
},
{
"provider": "databricks_v2",
"raw_model_id": "databricks-gpt-5-6-luna",
@@ -761,6 +779,23 @@
"_provenance": "all axes materialized from family:anthropic-adaptive-no-xhigh-sonnet-4-6",
"_source": "registry_labels"
},
{
"provider": "databricks_v2",
"raw_model_id": "goose-claude-4-6-sonnet",
"registry_label": "Claude Sonnet 4.6",
"thinking_mode": "adaptive",
"supported_efforts": [
"low",
"medium",
"high",
"max"
],
"default_effort": "high",
"databricks_v2_wire_route": "anthropic-messages",
"normalization_policy": "none",
"_provenance": "all axes copied from equivalent registry endpoint databricks-claude-sonnet-4-6 for the discovered Goose endpoint id",
"_source": "registry_labels"
},
{
"provider": "databricks_v2",
"raw_model_id": "databricks-gemini-2-5-flash",
@@ -1031,6 +1066,25 @@
"_reconciliation_note": "The exact databricks endpoint is absent from the models.dev databricks catalog, but the first-party deepseek entry advertises a reasoning toggle plus effort [high, max]. Per the Kimi-K3 precedent, adopt the model-level effort list despite endpoint absence. The toggle is not representable on the MLflow Chat request schema (reasoning_effort only), so thinking_mode stays none and default_effort is null — mirroring the kimi-k3 record.",
"_reconciliation_doc": "https://models.dev/api.json (pinned SHA-256 9266003029c4ea265e923637826211f597db08e8f0f40123aad8547411029238): providers.deepseek.models[\"deepseek-v4-pro\"].reasoning_options=[{\"type\":\"toggle\"},{\"type\":\"effort\",\"values\":[\"high\",\"max\"]}]"
},
{
"provider": "databricks_v2",
"raw_model_id": "databricks-glm-5-3",
"registry_label": "GLM-5.3",
"thinking_mode": "none",
"supported_efforts": [
"none",
"minimal",
"low",
"medium",
"high",
"xhigh"
],
"default_effort": "medium",
"databricks_v2_wire_route": "mlflow-chat",
"normalization_policy": "openai-clamp-max-to-xhigh",
"_provenance": "all axes materialized from provider fallback (databricks_v2/concrete_unknown)",
"_source": "registry_labels"
},
{
"provider": "databricks_v2",
"raw_model_id": "databricks-glm-5-3-flash",
@@ -1385,6 +1439,25 @@
"_reconciliation_note": "models.dev advertises toggleable reasoning with [low, high, max], but no default. The Databricks endpoint is absent from its provider catalog, so retain the established MLflow Chat route, adopt the upstream capability set, and leave the effort unset rather than invent a Databricks default. The MLflow Chat request schema cannot express a reasoning toggle (only reasoning_effort is representable), so thinking_mode maps to none rather than the upstream toggle, matching the kimi-k2-7-code precedent.",
"_reconciliation_doc": "https://models.dev/api.json (retrieved 2026-08-20, SHA-256 7ccb5635f682e4248ad8d39f515fbe3f2bb10e67bbc7fa1b94e66dddb00779e5): providers.moonshotai.models[\"kimi-k3\"].reasoning_options=[{\"type\":\"toggle\"},{\"type\":\"effort\",\"values\":[\"low\",\"high\",\"max\"]}]; Databricks endpoint absent from providers.databricks.models"
},
{
"provider": "databricks_v2",
"raw_model_id": "databricks-kimi-2-7",
"registry_label": "Kimi 2.7",
"thinking_mode": "none",
"supported_efforts": [
"none",
"minimal",
"low",
"medium",
"high",
"xhigh"
],
"default_effort": "medium",
"databricks_v2_wire_route": "mlflow-chat",
"normalization_policy": "openai-clamp-max-to-xhigh",
"_provenance": "all axes materialized from provider fallback (databricks_v2/concrete_unknown)",
"_source": "registry_labels"
},
{
"provider": "databricks_v2",
"raw_model_id": "databricks-kimi-k2-7-code",

View File

@@ -534,6 +534,45 @@
"registry_label": null
}
},
{
"id": "dbv2-goose-claude-4-6-sonnet-alias-probe",
"provider": "databricks_v2",
"raw_model_id": "goose-claude-4-6-sonnet",
"_note": "Probes the discovered Goose Sonnet 4.6 endpoint spelling and label.",
"expect": {
"thinking_mode": "adaptive",
"supported_efforts": [
"low",
"medium",
"high",
"max"
],
"default_effort": "high",
"databricks_v2_wire_route": "anthropic-messages",
"normalization_policy": "none",
"registry_label": "Claude Sonnet 4.6"
}
},
{
"id": "dbv2-goose-claude-4-7-opus-alias-probe",
"provider": "databricks_v2",
"raw_model_id": "goose-claude-4-7-opus",
"_note": "Probes the discovered Goose Opus 4.7 endpoint spelling and label.",
"expect": {
"thinking_mode": "adaptive",
"supported_efforts": [
"low",
"medium",
"high",
"xhigh",
"max"
],
"default_effort": "high",
"databricks_v2_wire_route": "anthropic-messages",
"normalization_policy": "none",
"registry_label": "Claude Opus 4.7"
}
},
{
"id": "dbv2-team-prefix-probe",
"provider": "databricks_v2",
@@ -840,6 +879,27 @@
"registry_label": null
}
},
{
"id": "dbv2-kimi-2-7-exact-record-probe",
"provider": "databricks_v2",
"raw_model_id": "databricks-kimi-2-7",
"_note": "Probes the canonical Databricks Kimi 2.7 endpoint record.",
"expect": {
"thinking_mode": "none",
"supported_efforts": [
"none",
"minimal",
"low",
"medium",
"high",
"xhigh"
],
"default_effort": "medium",
"databricks_v2_wire_route": "mlflow-chat",
"normalization_policy": "openai-clamp-max-to-xhigh",
"registry_label": "Kimi 2.7"
}
},
{
"id": "dbv2-kimi-k3-exact-record-probe",
"provider": "databricks_v2",
@@ -2401,6 +2461,27 @@
"registry_label": "DeepSeek V4 Pro"
}
},
{
"id": "dbv2-glm-5-3-exact-record-probe",
"provider": "databricks_v2",
"raw_model_id": "databricks-glm-5-3",
"_note": "Probes the GLM-5.3 endpoint record and label.",
"expect": {
"thinking_mode": "none",
"supported_efforts": [
"none",
"minimal",
"low",
"medium",
"high",
"xhigh"
],
"default_effort": "medium",
"databricks_v2_wire_route": "mlflow-chat",
"normalization_policy": "openai-clamp-max-to-xhigh",
"registry_label": "GLM-5.3"
}
},
{
"id": "dbv2-glm-5-3-flash-exact-record-probe",
"provider": "databricks_v2",