refactor(models): bump claude-opus-4-6 to claude-opus-4-7 across fallback chains, categories, and hooks

Updates the canonical Anthropic Opus model in every fallback chain
(sisyphus, oracle, prometheus, metis, momus, visual-engineering,
ultrabrain, deep, artistry, unspecified-high), the unspecified-high
category default, the think-mode HIGH_VARIANT_MAP, the Claude Code
alias map, the claude-thinking legacy alias, the context-limit GA
regex, and event.ts fallback strings.

Widens supportsCachedAnthropicLimit to accept both claude-*-4-6 and
claude-*-4-7 so the 1M context cache still applies across the bump.

Regenerates the bundled model-capabilities snapshot from models.dev
and the model-fallback snapshot to match the new source output.
This commit is contained in:
YeonGyu-Kim
2026-04-17 14:51:52 +09:00
parent b1764a880c
commit def44338ff
85 changed files with 39904 additions and 38116 deletions
+9 -9
View File
@@ -67,22 +67,22 @@ describe("model-capability-aliases", () => {
})
test("normalizes provider-prefixed Claude thinking aliases through a pattern rule", () => {
const result = resolveModelIDAlias("anthropic/claude-opus-4-6-thinking")
const result = resolveModelIDAlias("anthropic/claude-opus-4-7-thinking")
expect(result).toEqual({
requestedModelID: "anthropic/claude-opus-4-6-thinking",
canonicalModelID: "claude-opus-4-6",
requestedModelID: "anthropic/claude-opus-4-7-thinking",
canonicalModelID: "claude-opus-4-7",
source: "pattern-alias",
ruleID: "claude-thinking-legacy-alias",
})
})
test("does not pattern-match nearby canonical Claude IDs incorrectly", () => {
const result = resolveModelIDAlias("claude-opus-4-6-think")
const result = resolveModelIDAlias("claude-opus-4-7-think")
expect(result).toEqual({
requestedModelID: "claude-opus-4-6-think",
canonicalModelID: "claude-opus-4-6-think",
requestedModelID: "claude-opus-4-7-think",
canonicalModelID: "claude-opus-4-7-think",
source: "canonical",
})
})
@@ -98,11 +98,11 @@ describe("model-capability-aliases", () => {
})
test("normalizes legacy Claude thinking aliases through a pattern rule", () => {
const result = resolveModelIDAlias("claude-opus-4-6-thinking")
const result = resolveModelIDAlias("claude-opus-4-7-thinking")
expect(result).toEqual({
requestedModelID: "claude-opus-4-6-thinking",
canonicalModelID: "claude-opus-4-6",
requestedModelID: "claude-opus-4-7-thinking",
canonicalModelID: "claude-opus-4-7",
source: "pattern-alias",
ruleID: "claude-thinking-legacy-alias",
})