def44338ff
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.
85 lines
2.1 KiB
TypeScript
85 lines
2.1 KiB
TypeScript
import { describe, it, expect } from "bun:test"
|
|
import { mergeCategories } from "./merge-categories"
|
|
import { DEFAULT_CATEGORIES } from "../tools/delegate-task/constants"
|
|
|
|
describe("mergeCategories", () => {
|
|
it("returns all default categories when no user config provided", () => {
|
|
//#given
|
|
const userCategories = undefined
|
|
|
|
//#when
|
|
const result = mergeCategories(userCategories)
|
|
|
|
//#then
|
|
expect(Object.keys(result)).toEqual(Object.keys(DEFAULT_CATEGORIES))
|
|
})
|
|
|
|
it("filters out categories with disable: true", () => {
|
|
//#given
|
|
const userCategories = {
|
|
"quick": { disable: true },
|
|
}
|
|
|
|
//#when
|
|
const result = mergeCategories(userCategories)
|
|
|
|
//#then
|
|
expect(result["quick"]).toBeUndefined()
|
|
expect(Object.keys(result).length).toBe(Object.keys(DEFAULT_CATEGORIES).length - 1)
|
|
})
|
|
|
|
it("keeps categories with disable: false", () => {
|
|
//#given
|
|
const userCategories = {
|
|
"quick": { disable: false },
|
|
}
|
|
|
|
//#when
|
|
const result = mergeCategories(userCategories)
|
|
|
|
//#then
|
|
expect(result["quick"]).toBeDefined()
|
|
})
|
|
|
|
it("allows user to add custom categories", () => {
|
|
//#given
|
|
const userCategories = {
|
|
"my-custom": { model: "openai/gpt-5.4", description: "Custom category" },
|
|
}
|
|
|
|
//#when
|
|
const result = mergeCategories(userCategories)
|
|
|
|
//#then
|
|
expect(result["my-custom"]).toBeDefined()
|
|
expect(result["my-custom"].model).toBe("openai/gpt-5.4")
|
|
})
|
|
|
|
it("allows user to disable custom categories", () => {
|
|
//#given
|
|
const userCategories = {
|
|
"my-custom": { model: "openai/gpt-5.4", disable: true },
|
|
}
|
|
|
|
//#when
|
|
const result = mergeCategories(userCategories)
|
|
|
|
//#then
|
|
expect(result["my-custom"]).toBeUndefined()
|
|
})
|
|
|
|
it("user overrides merge with defaults", () => {
|
|
//#given
|
|
const userCategories = {
|
|
"ultrabrain": { model: "anthropic/claude-opus-4-7" },
|
|
}
|
|
|
|
//#when
|
|
const result = mergeCategories(userCategories)
|
|
|
|
//#then
|
|
expect(result["ultrabrain"]).toBeDefined()
|
|
expect(result["ultrabrain"].model).toBe("anthropic/claude-opus-4-7")
|
|
})
|
|
})
|