fix(ci): switch retired claude-sonnet-4-20250514 to claude-sonnet-4-6 (#975)

This commit is contained in:
Musa 2026-06-24 10:13:37 -07:00 committed by GitHub
parent 5d990d9609
commit 5cc4c4ee77
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
29 changed files with 80 additions and 82 deletions

View file

@ -171,7 +171,7 @@ Plano translates requests between its internal format and each provider's API. T
| Model prefix | Wire format | Example |
|---|---|---|
| `openai/*` | OpenAI | `openai/gpt-4o` |
| `anthropic/*` | Anthropic | `anthropic/claude-sonnet-4-20250514` |
| `anthropic/*` | Anthropic | `anthropic/claude-sonnet-4-6` |
| `gemini/*` | Google Gemini | `gemini/gemini-2.0-flash` |
| `mistral/*` | Mistral | `mistral/mistral-large-latest` |
| `groq/*` | Groq | `groq/llama-3.3-70b-versatile` |
@ -199,7 +199,7 @@ model_providers:
access_key: $OPENAI_API_KEY
default: true
- model: anthropic/claude-sonnet-4-20250514
- model: anthropic/claude-sonnet-4-6
access_key: $ANTHROPIC_API_KEY
- model: gemini/gemini-2.0-flash
@ -262,7 +262,7 @@ model_providers:
access_key: $OPENAI_API_KEY
default: true
- model: anthropic/claude-sonnet-4-20250514
- model: anthropic/claude-sonnet-4-6
access_key: $ANTHROPIC_API_KEY
state_storage:
@ -431,7 +431,7 @@ model_providers:
default: true
- model: openai/gpt-4o
access_key: $OPENAI_API_KEY
- model: anthropic/claude-sonnet-4-20250514
- model: anthropic/claude-sonnet-4-6
access_key: $ANTHROPIC_API_KEY
model_aliases:
@ -442,7 +442,7 @@ model_aliases:
target: gpt-4o # High capability — for complex reasoning
plano.creative.v1:
target: claude-sonnet-4-20250514 # Strong creative writing and analysis
target: claude-sonnet-4-6 # Strong creative writing and analysis
plano.v1:
target: gpt-4o # Default production alias
@ -1419,7 +1419,7 @@ listeners:
port: 12000
model_providers:
- model: anthropic/claude-sonnet-4-20250514
- model: anthropic/claude-sonnet-4-6
access_key: $ANTHROPIC_API_KEY
default: true
@ -1432,7 +1432,7 @@ routing_preferences:
Writing code, debugging, code review, explaining concepts,
answering programming questions, general development tasks.
models:
- anthropic/claude-sonnet-4-20250514
- anthropic/claude-sonnet-4-6
- anthropic/claude-opus-4-6
- name: complex architecture
description: >
@ -1440,11 +1440,11 @@ routing_preferences:
architectural decisions, performance optimization, security audits.
models:
- anthropic/claude-opus-4-6
- anthropic/claude-sonnet-4-20250514
- anthropic/claude-sonnet-4-6
model_aliases:
claude.fast.v1:
target: claude-sonnet-4-20250514
target: claude-sonnet-4-6
claude.smart.v1:
target: claude-opus-4-6
@ -1838,7 +1838,7 @@ model_providers:
- model: openai/gpt-4o
access_key: $OPENAI_API_KEY
- model: anthropic/claude-sonnet-4-20250514
- model: anthropic/claude-sonnet-4-6
access_key: $ANTHROPIC_API_KEY
# --- Shared routing_preferences (top-level, v0.4.0+) ---
@ -1851,11 +1851,11 @@ routing_preferences:
description: Multi-step analysis, code generation, research synthesis
models:
- openai/gpt-4o
- anthropic/claude-sonnet-4-20250514
- anthropic/claude-sonnet-4-6
- name: long documents
description: Summarizing or analyzing very long documents, PDFs, transcripts
models:
- anthropic/claude-sonnet-4-20250514
- anthropic/claude-sonnet-4-6
- openai/gpt-4o
# --- Listener 1: OpenAI-compatible API gateway ---

View file

@ -42,7 +42,7 @@ model_providers:
- name: complex reasoning
description: Multi-step analysis, code generation, research synthesis
- model: anthropic/claude-sonnet-4-20250514
- model: anthropic/claude-sonnet-4-6
access_key: $ANTHROPIC_API_KEY
routing_preferences:
- name: long documents

View file

@ -43,7 +43,7 @@ listeners:
port: 12000
model_providers:
- model: anthropic/claude-sonnet-4-20250514
- model: anthropic/claude-sonnet-4-6
access_key: $ANTHROPIC_API_KEY
default: true
routing_preferences:
@ -62,7 +62,7 @@ model_providers:
model_aliases:
claude.fast.v1:
target: claude-sonnet-4-20250514
target: claude-sonnet-4-6
claude.smart.v1:
target: claude-opus-4-6

View file

@ -14,7 +14,7 @@ Plano translates requests between its internal format and each provider's API. T
| Model prefix | Wire format | Example |
|---|---|---|
| `openai/*` | OpenAI | `openai/gpt-4o` |
| `anthropic/*` | Anthropic | `anthropic/claude-sonnet-4-20250514` |
| `anthropic/*` | Anthropic | `anthropic/claude-sonnet-4-6` |
| `gemini/*` | Google Gemini | `gemini/gemini-2.0-flash` |
| `mistral/*` | Mistral | `mistral/mistral-large-latest` |
| `groq/*` | Groq | `groq/llama-3.3-70b-versatile` |
@ -42,7 +42,7 @@ model_providers:
access_key: $OPENAI_API_KEY
default: true
- model: anthropic/claude-sonnet-4-20250514
- model: anthropic/claude-sonnet-4-6
access_key: $ANTHROPIC_API_KEY
- model: gemini/gemini-2.0-flash

View file

@ -40,7 +40,7 @@ model_providers:
access_key: $OPENAI_API_KEY
default: true
- model: anthropic/claude-sonnet-4-20250514
- model: anthropic/claude-sonnet-4-6
access_key: $ANTHROPIC_API_KEY
state_storage:

View file

@ -47,7 +47,7 @@ model_providers:
default: true
- model: openai/gpt-4o
access_key: $OPENAI_API_KEY
- model: anthropic/claude-sonnet-4-20250514
- model: anthropic/claude-sonnet-4-6
access_key: $ANTHROPIC_API_KEY
model_aliases:
@ -58,7 +58,7 @@ model_aliases:
target: gpt-4o # High capability — for complex reasoning
plano.creative.v1:
target: claude-sonnet-4-20250514 # Strong creative writing and analysis
target: claude-sonnet-4-6 # Strong creative writing and analysis
plano.v1:
target: gpt-4o # Default production alias

View file

@ -92,7 +92,7 @@
"testCase": {
"description": "Detect and fix: \"Register Model Providers with Correct Format Identifiers\"",
"input": "model_providers:\n - model: gpt-4o # Missing openai/ prefix — Plano cannot route this\n access_key: $OPENAI_API_KEY\n\n - model: claude-3-5-sonnet # Missing anthropic/ prefix\n access_key: $ANTHROPIC_API_KEY",
"expected": "model_providers:\n - model: openai/gpt-4o\n access_key: $OPENAI_API_KEY\n default: true\n\n - model: anthropic/claude-sonnet-4-20250514\n access_key: $ANTHROPIC_API_KEY\n\n - model: gemini/gemini-2.0-flash\n access_key: $GOOGLE_API_KEY\n\nmodel_providers:\n - model: custom/llama3\n base_url: http://host.docker.internal:11434/v1 # Ollama endpoint\n provider_interface: openai # Ollama speaks OpenAI format\n default: true",
"expected": "model_providers:\n - model: openai/gpt-4o\n access_key: $OPENAI_API_KEY\n default: true\n\n - model: anthropic/claude-sonnet-4-6\n access_key: $ANTHROPIC_API_KEY\n\n - model: gemini/gemini-2.0-flash\n access_key: $GOOGLE_API_KEY\n\nmodel_providers:\n - model: custom/llama3\n base_url: http://host.docker.internal:11434/v1 # Ollama endpoint\n provider_interface: openai # Ollama speaks OpenAI format\n default: true",
"evaluationPrompt": "Given the following Plano config or CLI usage, identify if it violates the rule \"Register Model Providers with Correct Format Identifiers\" and explain how to fix it."
}
},
@ -112,7 +112,7 @@
"testCase": {
"description": "Detect and fix: \"Use Environment Variable Substitution for All Secrets\"",
"input": "version: v0.3.0\n\nmodel_providers:\n - model: openai/gpt-4o\n access_key: abcdefghijklmnopqrstuvwxyz... # Hardcoded — never do this\n\nstate_storage:\n type: postgres\n connection_string: \"postgresql://admin:mysecretpassword@prod-db:5432/plano\"\n\nprompt_targets:\n - name: get_data\n endpoint:\n name: my_api\n http_headers:\n Authorization: \"Bearer abcdefghijklmnopqrstuvwxyz\" # Hardcoded token",
"expected": "version: v0.3.0\n\nmodel_providers:\n - model: openai/gpt-4o\n access_key: $OPENAI_API_KEY\n default: true\n\n - model: anthropic/claude-sonnet-4-20250514\n access_key: $ANTHROPIC_API_KEY\n\nstate_storage:\n type: postgres\n connection_string: \"postgresql://${DB_USER}:${DB_PASS}@${DB_HOST}:5432/${DB_NAME}\"\n\nprompt_targets:\n - name: get_data\n endpoint:\n name: my_api\n http_headers:\n Authorization: \"Bearer $MY_API_TOKEN\"\n\n# .env — add to .gitignore\nOPENAI_API_KEY=abcdefghijklmnopqrstuvwxyz...\nANTHROPIC_API_KEY=abcdefghijklmnopqrstuvwxyz...\nDB_USER=plano\nDB_PASS=secure-password\nDB_HOST=localhost\nMY_API_TOKEN=abcdefghijklmnopqrstuvwxyz...",
"expected": "version: v0.3.0\n\nmodel_providers:\n - model: openai/gpt-4o\n access_key: $OPENAI_API_KEY\n default: true\n\n - model: anthropic/claude-sonnet-4-6\n access_key: $ANTHROPIC_API_KEY\n\nstate_storage:\n type: postgres\n connection_string: \"postgresql://${DB_USER}:${DB_PASS}@${DB_HOST}:5432/${DB_NAME}\"\n\nprompt_targets:\n - name: get_data\n endpoint:\n name: my_api\n http_headers:\n Authorization: \"Bearer $MY_API_TOKEN\"\n\n# .env — add to .gitignore\nOPENAI_API_KEY=abcdefghijklmnopqrstuvwxyz...\nANTHROPIC_API_KEY=abcdefghijklmnopqrstuvwxyz...\nDB_USER=plano\nDB_PASS=secure-password\nDB_HOST=localhost\nMY_API_TOKEN=abcdefghijklmnopqrstuvwxyz...",
"evaluationPrompt": "Given the following Plano config or CLI usage, identify if it violates the rule \"Use Environment Variable Substitution for All Secrets\" and explain how to fix it."
}
},
@ -288,7 +288,7 @@
"testCase": {
"description": "Detect and fix: \"Use Model Aliases for Semantic, Stable Model References\"",
"input": "# config.yaml — no aliases defined\nversion: v0.3.0\n\nlisteners:\n - type: model\n name: model_listener\n port: 12000\n\nmodel_providers:\n - model: openai/gpt-4o\n access_key: $OPENAI_API_KEY\n default: true\n\n# Client code — brittle, must be updated when model changes\nclient.chat.completions.create(model=\"gpt-4o\", ...)",
"expected": "version: v0.3.0\n\nlisteners:\n - type: model\n name: model_listener\n port: 12000\n\nmodel_providers:\n - model: openai/gpt-4o-mini\n access_key: $OPENAI_API_KEY\n default: true\n - model: openai/gpt-4o\n access_key: $OPENAI_API_KEY\n - model: anthropic/claude-sonnet-4-20250514\n access_key: $ANTHROPIC_API_KEY\n\nmodel_aliases:\n plano.fast.v1:\n target: gpt-4o-mini # Cheap, fast — for high-volume tasks\n\n plano.smart.v1:\n target: gpt-4o # High capability — for complex reasoning\n\n plano.creative.v1:\n target: claude-sonnet-4-20250514 # Strong creative writing and analysis\n\n plano.v1:\n target: gpt-4o # Default production alias\n\n# Client code — stable, alias is the contract\nclient.chat.completions.create(model=\"plano.smart.v1\", ...)",
"expected": "version: v0.3.0\n\nlisteners:\n - type: model\n name: model_listener\n port: 12000\n\nmodel_providers:\n - model: openai/gpt-4o-mini\n access_key: $OPENAI_API_KEY\n default: true\n - model: openai/gpt-4o\n access_key: $OPENAI_API_KEY\n - model: anthropic/claude-sonnet-4-6\n access_key: $ANTHROPIC_API_KEY\n\nmodel_aliases:\n plano.fast.v1:\n target: gpt-4o-mini # Cheap, fast — for high-volume tasks\n\n plano.smart.v1:\n target: gpt-4o # High capability — for complex reasoning\n\n plano.creative.v1:\n target: claude-sonnet-4-6 # Strong creative writing and analysis\n\n plano.v1:\n target: gpt-4o # Default production alias\n\n# Client code — stable, alias is the contract\nclient.chat.completions.create(model=\"plano.smart.v1\", ...)",
"evaluationPrompt": "Given the following Plano config or CLI usage, identify if it violates the rule \"Use Model Aliases for Semantic, Stable Model References\" and explain how to fix it."
}
},