summaryrefslogtreecommitdiffhomepage
path: root/packages
diff options
context:
space:
mode:
authorJack <[email protected]>2026-03-09 22:07:12 +0800
committerGitHub <[email protected]>2026-03-09 22:07:12 +0800
commit5838b58913ec5e6c694c2f8f9df8009f49bf4018 (patch)
tree1e9aa4ad76dc5d3223a132c18d824d93babc464d /packages
parent2712244ad3bb6e4bba20952f46a3493e0573dee2 (diff)
downloadopencode-5838b58913ec5e6c694c2f8f9df8009f49bf4018.tar.gz
opencode-5838b58913ec5e6c694c2f8f9df8009f49bf4018.zip
add copilot gpt-5.4 xhigh support (#16294)
Diffstat (limited to 'packages')
-rw-r--r--packages/opencode/src/provider/transform.ts4
-rw-r--r--packages/opencode/test/provider/transform.test.ts29
2 files changed, 32 insertions, 1 deletions
diff --git a/packages/opencode/src/provider/transform.ts b/packages/opencode/src/provider/transform.ts
index 6980be051..471da03cb 100644
--- a/packages/opencode/src/provider/transform.ts
+++ b/packages/opencode/src/provider/transform.ts
@@ -440,7 +440,9 @@ export namespace ProviderTransform {
const copilotEfforts = iife(() => {
if (id.includes("5.1-codex-max") || id.includes("5.2") || id.includes("5.3"))
return [...WIDELY_SUPPORTED_EFFORTS, "xhigh"]
- return WIDELY_SUPPORTED_EFFORTS
+ const arr = [...WIDELY_SUPPORTED_EFFORTS]
+ if (id.includes("gpt-5") && model.release_date >= "2025-12-04") arr.push("xhigh")
+ return arr
})
return Object.fromEntries(
copilotEfforts.map((effort) => [
diff --git a/packages/opencode/test/provider/transform.test.ts b/packages/opencode/test/provider/transform.test.ts
index 232984635..512819a65 100644
--- a/packages/opencode/test/provider/transform.test.ts
+++ b/packages/opencode/test/provider/transform.test.ts
@@ -2002,6 +2002,35 @@ describe("ProviderTransform.variants", () => {
const result = ProviderTransform.variants(model)
expect(Object.keys(result)).toEqual(["low", "medium", "high", "xhigh"])
})
+
+ test("gpt-5.3-codex includes xhigh", () => {
+ const model = createMockModel({
+ id: "gpt-5.3-codex",
+ providerID: "github-copilot",
+ api: {
+ id: "gpt-5.3-codex",
+ url: "https://api.githubcopilot.com",
+ npm: "@ai-sdk/github-copilot",
+ },
+ })
+ const result = ProviderTransform.variants(model)
+ expect(Object.keys(result)).toEqual(["low", "medium", "high", "xhigh"])
+ })
+
+ test("gpt-5.4 includes xhigh", () => {
+ const model = createMockModel({
+ id: "gpt-5.4",
+ release_date: "2026-03-05",
+ providerID: "github-copilot",
+ api: {
+ id: "gpt-5.4",
+ url: "https://api.githubcopilot.com",
+ npm: "@ai-sdk/github-copilot",
+ },
+ })
+ const result = ProviderTransform.variants(model)
+ expect(Object.keys(result)).toEqual(["low", "medium", "high", "xhigh"])
+ })
})
describe("@ai-sdk/cerebras", () => {