Skip to content

chore: bump stale model references to current-generation values (examples, auto.go, docs) #4137

Description

@aheritier

What

A proactive sweep to bump stale/outdated model references to current-generation
values across examples/*.yaml, pkg/config/auto.go + auto_test.go, and
provider/docs pages. Follow-up to #4121
(models.dev snapshot refresh, unrelated/already merged) — this is a separate,
dedicated arc.

Policy

Keep two generations live per model family where the provider actually
has two majors: the latest major's newest minor, and the previous major's
newest minor. Never an arbitrary older minor. When a family has two valid
anchors and a given file uses neither, split by cost/fallback signal in the
key/file name: keys/files signalling cost or fallback (budget,
budget-model, fast, discounted-sonnet, claude_fast) get the previous
anchor; everything else gets the latest anchor. Already-valid anchor values
are left untouched.

Established anchors (live-verified against real provider catalogs)

Family Latest (current major) Previous (prior major)
Anthropic Sonnet claude-sonnet-5 claude-sonnet-4-6
Anthropic Opus claude-opus-5 claude-opus-4-8
Anthropic Haiku claude-haiku-4-5 (single, no split)
Anthropic Fable claude-fable-5-1 (single, no split)
Bedrock Sonnet/Opus global.anthropic.claude-{sonnet-5,opus-5} global.anthropic.claude-{sonnet-4-6,opus-4-8}
OpenAI flagship gpt-5.6-sol gpt-4.1
OpenAI mini gpt-5.6-terra gpt-4.1-mini
OpenAI nano gpt-5.6-luna gpt-4.1-nano
Google flash gemini-3.8-flash gemini-2.5-flash
Google flash-lite gemini-3.5-flash-lite gemini-2.5-flash-lite
OpenRouter Llama meta-llama/llama-4-maverick meta-llama/llama-3.3-70b-instruct
Moonshot Kimi kimi-k3 n/a
xAI Grok grok-4.5 (single default)
Baseten DeepSeek deepseek-ai/DeepSeek-V4-Pro deepseek-ai/DeepSeek-V3.1

Judgement call: docs/providers/anthropic/index.md's claude-opus-4-7 row

That row's wording ("Previous Opus flagship; supports task budget") is
literally documenting the still-supported previous generation, and
claude-opus-5 already occupies the "highest-capability" row directly above
it — so the row is bumped to claude-opus-4-8 (the previous-generation Opus
anchor), not claude-opus-5. This differs from examples/task_budget.yaml,
which has no such generation-labelling context and no cost/fallback signal on
its opus-bounded/opus-bounded-tight keys, so it moves to claude-opus-5
(the latest anchor) instead.

Scope

  • examples/*.yaml — ~60 files, mapping below.
  • pkg/config/auto.go DefaultModels + the mirroring assertions in
    pkg/config/auto_test.go.
  • docs/providers/*/index.md and docs/configuration/flavors/index.md.

examples/*.yaml (old → new)

See the implementation PR (linked below) for the full per-file diff; summary
of the anchors applied: every claude-sonnet-4-5claude-sonnet-5 (except
files signalling a cheaper/fallback tier, which get claude-sonnet-4-6),
every plain claude-opus-4-6claude-opus-5, claude-fable-5
claude-fable-5-1, every bare gpt-4o/gpt-5 used as a "just give me a
capable model" default → gpt-5.6-sol, gpt-4o-mini/gpt-5-mini
gpt-5.6-terra, grok-4.3grok-4.5, kimi-k2-0905-previewkimi-k3,
meta-llama/llama-3.3-70b-instructmeta-llama/llama-4-maverick, dated
Bedrock/Anthropic pins dropped in favour of the bare anchor.

examples/task_budget.yaml and examples/thinking_budget.yaml needed
individual review (task budget semantics / thinking-effort tiers are
version-sensitive) — see the judgement call above and the PR description.

pkg/config/auto.go DefaultModels

Provider Old New
anthropic claude-sonnet-4-6 claude-sonnet-5
google gemini-3.5-flash gemini-3.8-flash
openrouter meta-llama/llama-3.3-70b-instruct meta-llama/llama-4-maverick
baseten deepseek-ai/DeepSeek-V3.1 deepseek-ai/DeepSeek-V4-Pro
moonshot kimi-k2-0905-preview kimi-k3
amazon-bedrock global.anthropic.claude-sonnet-4-5-20250929-v1:0 global.anthropic.claude-sonnet-5

pkg/config/auto_test.go's mirroring assertions are updated identically
(mechanical, no independent judgement).

Explicitly excluded

Acceptance

  • Every mapped reference bumped as described.
  • task build, task test, task lint pass.
  • Dedicated PR opened referencing this issue.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/configFor configuration parsing, YAML, environment variablesarea/docsDocumentation changesarea/modelsLLM model integrations and model providers

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions