chore: update claude-opus-4-5 references to claude-opus-4-6 (excludes antigravity models)

This commit is contained in:
YeonGyu-Kim
2026-02-06 14:21:15 +09:00
parent 4c7215404e
commit 1f64920453
37 changed files with 296 additions and 296 deletions
@@ -80,7 +80,7 @@ describe("executeCompact lock management", () => {
let fakeTimeouts: FakeTimeouts
const sessionID = "test-session-123"
const directory = "/test/dir"
const msg = { providerID: "anthropic", modelID: "claude-opus-4-5" }
const msg = { providerID: "anthropic", modelID: "claude-opus-4-6" }
beforeEach(() => {
// given: Fresh state for each test
@@ -332,7 +332,7 @@ describe("executeCompact lock management", () => {
expect(mockClient.session.summarize).toHaveBeenCalledWith(
expect.objectContaining({
path: { id: sessionID },
body: { providerID: "anthropic", modelID: "claude-opus-4-5", auto: true },
body: { providerID: "anthropic", modelID: "claude-opus-4-6", auto: true },
}),
)
+1 -1
View File
@@ -47,7 +47,7 @@ describe("atlas hook", () => {
}
const messageData = {
agent,
model: { providerID: "anthropic", modelID: "claude-opus-4-5" },
model: { providerID: "anthropic", modelID: "claude-opus-4-6" },
}
writeFileSync(join(messageDir, "msg_test001.json"), JSON.stringify(messageData))
}
+2 -2
View File
@@ -34,7 +34,7 @@ describe("preemptive-compaction", () => {
info: {
role: "assistant",
providerID: "anthropic",
modelID: "claude-opus-4-5",
modelID: "claude-opus-4-6",
tokens: {
input: 180000,
output: 0,
@@ -69,7 +69,7 @@ describe("preemptive-compaction", () => {
info: {
role: "assistant",
providerID: "anthropic",
modelID: "claude-opus-4-5",
modelID: "claude-opus-4-6",
tokens: {
input: 100000,
output: 0,
+10 -10
View File
@@ -41,7 +41,7 @@ describe("createThinkModeHook integration", () => {
const hook = createThinkModeHook()
const input = createMockInput(
"github-copilot",
"claude-opus-4-5",
"claude-opus-4-6",
"Please think deeply about this problem"
)
@@ -50,7 +50,7 @@ describe("createThinkModeHook integration", () => {
// then should upgrade to high variant and inject thinking config
const message = input.message as MessageWithInjectedProps
expect(input.message.model?.modelID).toBe("claude-opus-4-5-high")
expect(input.message.model?.modelID).toBe("claude-opus-4-6-high")
expect(message.thinking).toBeDefined()
expect((message.thinking as Record<string, unknown>)?.type).toBe(
"enabled"
@@ -61,11 +61,11 @@ describe("createThinkModeHook integration", () => {
})
it("should handle github-copilot Claude with dots in version", async () => {
// given a github-copilot Claude model with dot format (claude-opus-4.5)
// given a github-copilot Claude model with dot format (claude-opus-4.6)
const hook = createThinkModeHook()
const input = createMockInput(
"github-copilot",
"claude-opus-4.5",
"claude-opus-4.6",
"ultrathink mode"
)
@@ -74,7 +74,7 @@ describe("createThinkModeHook integration", () => {
// then should upgrade to high variant (hyphen format)
const message = input.message as MessageWithInjectedProps
expect(input.message.model?.modelID).toBe("claude-opus-4-5-high")
expect(input.message.model?.modelID).toBe("claude-opus-4-6-high")
expect(message.thinking).toBeDefined()
})
@@ -179,7 +179,7 @@ describe("createThinkModeHook integration", () => {
const hook = createThinkModeHook()
const input = createMockInput(
"github-copilot",
"claude-opus-4-5",
"claude-opus-4-6",
"Just do this task"
)
const originalModelID = input.message.model?.modelID
@@ -271,7 +271,7 @@ describe("createThinkModeHook integration", () => {
const hook = createThinkModeHook()
const input = createMockInput(
"github-copilot",
"claude-opus-4-5-high",
"claude-opus-4-6-high",
"think deeply"
)
@@ -280,7 +280,7 @@ describe("createThinkModeHook integration", () => {
// then should NOT modify the model (already high)
const message = input.message as MessageWithInjectedProps
expect(input.message.model?.modelID).toBe("claude-opus-4-5-high")
expect(input.message.model?.modelID).toBe("claude-opus-4-6-high")
// No additional thinking config should be injected
expect(message.thinking).toBeUndefined()
})
@@ -341,13 +341,13 @@ describe("createThinkModeHook integration", () => {
it("should handle empty prompt gracefully", async () => {
// given empty prompt
const hook = createThinkModeHook()
const input = createMockInput("github-copilot", "claude-opus-4-5", "")
const input = createMockInput("github-copilot", "claude-opus-4-6", "")
// when the chat.params hook is called
await hook["chat.params"](input, sessionID)
// then should not upgrade (no think keyword)
expect(input.message.model?.modelID).toBe("claude-opus-4-5")
expect(input.message.model?.modelID).toBe("claude-opus-4-6")
})
})
+23 -23
View File
@@ -12,7 +12,7 @@ describe("think-mode switcher", () => {
it("should resolve github-copilot Claude Opus to anthropic config", () => {
// given a github-copilot provider with Claude Opus model
const providerID = "github-copilot"
const modelID = "claude-opus-4-5"
const modelID = "claude-opus-4-6"
// when getting thinking config
const config = getThinkingConfig(providerID, modelID)
@@ -38,8 +38,8 @@ describe("think-mode switcher", () => {
})
it("should handle Claude with dots in version number", () => {
// given a model ID with dots (claude-opus-4.5)
const config = getThinkingConfig("github-copilot", "claude-opus-4.5")
// given a model ID with dots (claude-opus-4.6)
const config = getThinkingConfig("github-copilot", "claude-opus-4.6")
// then should still return anthropic thinking config
expect(config).not.toBeNull()
@@ -127,18 +127,18 @@ describe("think-mode switcher", () => {
describe("getHighVariant with dots vs hyphens", () => {
it("should handle dots in Claude version numbers", () => {
// given a Claude model ID with dot format
const variant = getHighVariant("claude-opus-4.5")
const variant = getHighVariant("claude-opus-4.6")
// then should return high variant with hyphen format
expect(variant).toBe("claude-opus-4-5-high")
expect(variant).toBe("claude-opus-4-6-high")
})
it("should handle hyphens in Claude version numbers", () => {
// given a Claude model ID with hyphen format
const variant = getHighVariant("claude-opus-4-5")
const variant = getHighVariant("claude-opus-4-6")
// then should return high variant
expect(variant).toBe("claude-opus-4-5-high")
expect(variant).toBe("claude-opus-4-6-high")
})
it("should handle claude-opus-4-6 high variant", () => {
@@ -177,7 +177,7 @@ describe("think-mode switcher", () => {
it("should return null for already-high variants", () => {
// given model IDs that are already high variants
expect(getHighVariant("claude-opus-4-5-high")).toBeNull()
expect(getHighVariant("claude-opus-4-6-high")).toBeNull()
expect(getHighVariant("gpt-5-2-high")).toBeNull()
expect(getHighVariant("gemini-3-pro-high")).toBeNull()
})
@@ -193,7 +193,7 @@ describe("think-mode switcher", () => {
describe("isAlreadyHighVariant", () => {
it("should detect -high suffix", () => {
// given model IDs with -high suffix
expect(isAlreadyHighVariant("claude-opus-4-5-high")).toBe(true)
expect(isAlreadyHighVariant("claude-opus-4-6-high")).toBe(true)
expect(isAlreadyHighVariant("gpt-5-2-high")).toBe(true)
expect(isAlreadyHighVariant("gemini-3-pro-high")).toBe(true)
})
@@ -205,8 +205,8 @@ describe("think-mode switcher", () => {
it("should return false for base models", () => {
// given base model IDs without -high suffix
expect(isAlreadyHighVariant("claude-opus-4-5")).toBe(false)
expect(isAlreadyHighVariant("claude-opus-4.5")).toBe(false)
expect(isAlreadyHighVariant("claude-opus-4-6")).toBe(false)
expect(isAlreadyHighVariant("claude-opus-4.6")).toBe(false)
expect(isAlreadyHighVariant("gpt-5.2")).toBe(false)
expect(isAlreadyHighVariant("gemini-3-pro")).toBe(false)
})
@@ -222,7 +222,7 @@ describe("think-mode switcher", () => {
it("should return null for already-high variants", () => {
// given already-high model variants
expect(
getThinkingConfig("anthropic", "claude-opus-4-5-high")
getThinkingConfig("anthropic", "claude-opus-4-6-high")
).toBeNull()
expect(getThinkingConfig("openai", "gpt-5-2-high")).toBeNull()
expect(getThinkingConfig("google", "gemini-3-pro-high")).toBeNull()
@@ -231,7 +231,7 @@ describe("think-mode switcher", () => {
it("should return null for already-high variants via github-copilot", () => {
// given already-high model variants via github-copilot
expect(
getThinkingConfig("github-copilot", "claude-opus-4-5-high")
getThinkingConfig("github-copilot", "claude-opus-4-6-high")
).toBeNull()
expect(getThinkingConfig("github-copilot", "gpt-5.2-high")).toBeNull()
})
@@ -258,7 +258,7 @@ describe("think-mode switcher", () => {
describe("Direct provider configs (backwards compatibility)", () => {
it("should still work for direct anthropic provider", () => {
// given direct anthropic provider
const config = getThinkingConfig("anthropic", "claude-opus-4-5")
const config = getThinkingConfig("anthropic", "claude-opus-4-6")
// then should return anthropic thinking config
expect(config).not.toBeNull()
@@ -351,10 +351,10 @@ describe("think-mode switcher", () => {
it("should handle prefixes with dots in version numbers", () => {
// given a model ID with prefix and dots
const variant = getHighVariant("vertex_ai/claude-opus-4.5")
const variant = getHighVariant("vertex_ai/claude-opus-4.6")
// then should normalize dots and preserve prefix
expect(variant).toBe("vertex_ai/claude-opus-4-5-high")
expect(variant).toBe("vertex_ai/claude-opus-4-6-high")
})
it("should handle multiple different prefixes", () => {
@@ -372,7 +372,7 @@ describe("think-mode switcher", () => {
it("should return null for already-high prefixed models", () => {
// given prefixed model IDs that are already high
expect(getHighVariant("vertex_ai/claude-opus-4-5-high")).toBeNull()
expect(getHighVariant("vertex_ai/claude-opus-4-6-high")).toBeNull()
expect(getHighVariant("openai/gpt-5-2-high")).toBeNull()
})
})
@@ -380,14 +380,14 @@ describe("think-mode switcher", () => {
describe("isAlreadyHighVariant with prefixes", () => {
it("should detect -high suffix in prefixed models", () => {
// given prefixed model IDs with -high suffix
expect(isAlreadyHighVariant("vertex_ai/claude-opus-4-5-high")).toBe(true)
expect(isAlreadyHighVariant("vertex_ai/claude-opus-4-6-high")).toBe(true)
expect(isAlreadyHighVariant("openai/gpt-5-2-high")).toBe(true)
expect(isAlreadyHighVariant("custom/gemini-3-pro-high")).toBe(true)
})
it("should return false for prefixed base models", () => {
// given prefixed base model IDs without -high suffix
expect(isAlreadyHighVariant("vertex_ai/claude-opus-4-5")).toBe(false)
expect(isAlreadyHighVariant("vertex_ai/claude-opus-4-6")).toBe(false)
expect(isAlreadyHighVariant("openai/gpt-5-2")).toBe(false)
})
@@ -410,7 +410,7 @@ describe("think-mode switcher", () => {
it("should work with prefixed models on known providers", () => {
// given known provider (anthropic) with prefixed model
// This tests that the base model name is correctly extracted for capability check
const config = getThinkingConfig("anthropic", "custom-prefix/claude-opus-4-5")
const config = getThinkingConfig("anthropic", "custom-prefix/claude-opus-4-6")
// then should return thinking config (base model is capable)
expect(config).not.toBeNull()
@@ -419,7 +419,7 @@ describe("think-mode switcher", () => {
it("should return null for prefixed models that are already high", () => {
// given prefixed already-high model
const config = getThinkingConfig("anthropic", "vertex_ai/claude-opus-4-5-high")
const config = getThinkingConfig("anthropic", "vertex_ai/claude-opus-4-6-high")
// then should return null
expect(config).toBeNull()
@@ -452,11 +452,11 @@ describe("think-mode switcher", () => {
it("should not break when switching to high variant in think mode", () => {
// given think mode switching vertex_ai/claude model to high variant
const original = "vertex_ai/claude-opus-4-5"
const original = "vertex_ai/claude-opus-4-6"
const high = getHighVariant(original)
// then the high variant should be valid
expect(high).toBe("vertex_ai/claude-opus-4-5-high")
expect(high).toBe("vertex_ai/claude-opus-4-6-high")
// #and should be recognized as already high
expect(isAlreadyHighVariant(high!)).toBe(true)
+6 -6
View File
@@ -38,14 +38,14 @@ function extractModelPrefix(modelID: string): { prefix: string; base: string } {
/**
* Normalizes model IDs to use consistent hyphen formatting.
* GitHub Copilot may use dots (claude-opus-4.5) but our maps use hyphens (claude-opus-4-5).
* GitHub Copilot may use dots (claude-opus-4.6) but our maps use hyphens (claude-opus-4-6).
* This ensures lookups work regardless of format.
*
* @example
* normalizeModelID("claude-opus-4.5") // "claude-opus-4-5"
* normalizeModelID("claude-opus-4.6") // "claude-opus-4-6"
* normalizeModelID("gemini-3.5-pro") // "gemini-3-5-pro"
* normalizeModelID("gpt-5.2") // "gpt-5-2"
* normalizeModelID("vertex_ai/claude-opus-4.5") // "vertex_ai/claude-opus-4-5"
* normalizeModelID("vertex_ai/claude-opus-4.6") // "vertex_ai/claude-opus-4-6"
*/
function normalizeModelID(modelID: string): string {
// Replace dots with hyphens when followed by a digit
@@ -59,10 +59,10 @@ function normalizeModelID(modelID: string): string {
* model provider (Anthropic, Google, OpenAI).
*
* @example
* resolveProvider("github-copilot", "claude-opus-4-5") // "anthropic"
* resolveProvider("github-copilot", "claude-opus-4-6") // "anthropic"
* resolveProvider("github-copilot", "gemini-3-pro") // "google"
* resolveProvider("github-copilot", "gpt-5.2") // "openai"
* resolveProvider("anthropic", "claude-opus-4-5") // "anthropic" (unchanged)
* resolveProvider("anthropic", "claude-opus-4-6") // "anthropic" (unchanged)
*/
function resolveProvider(providerID: string, modelID: string): string {
// GitHub Copilot is a proxy - infer actual provider from model name
@@ -89,7 +89,7 @@ const HIGH_VARIANT_MAP: Record<string, string> = {
// Claude
"claude-sonnet-4-5": "claude-sonnet-4-5-high",
"claude-opus-4-6": "claude-opus-4-6-high",
"claude-opus-4-5": "claude-opus-4-5-high",
"claude-opus-4-6": "claude-opus-4-6-high",
// Gemini
"gemini-3-pro": "gemini-3-pro-high",
"gemini-3-pro-low": "gemini-3-pro-high",