diff options
| author | Aiden Cline <[email protected]> | 2026-04-29 16:49:28 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-04-29 16:49:28 -0500 |
| commit | a740d2c66782ef3371146cd55d70920ae9b94daf (patch) | |
| tree | 0ecf209705e01c186679f776061e4789c2d196f6 /packages | |
| parent | 588261076adba0bc385f60fe18637da53ed03420 (diff) | |
| download | opencode-a740d2c66782ef3371146cd55d70920ae9b94daf.tar.gz opencode-a740d2c66782ef3371146cd55d70920ae9b94daf.zip | |
fix: adjust azure defaults to closer match openai to prevent Item .. of type 'reasoning' was provided without its required following item (#25007)
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/opencode/src/provider/provider.ts | 9 | ||||
| -rw-r--r-- | packages/opencode/src/provider/transform.ts | 2 | ||||
| -rw-r--r-- | packages/opencode/test/provider/transform.test.ts | 4 |
3 files changed, 9 insertions, 6 deletions
diff --git a/packages/opencode/src/provider/provider.ts b/packages/opencode/src/provider/provider.ts index 48df5a4c9..702435d7d 100644 --- a/packages/opencode/src/provider/provider.ts +++ b/packages/opencode/src/provider/provider.ts @@ -1466,10 +1466,13 @@ const layer: Layer.Layer< if (combined) opts.signal = combined // Strip openai itemId metadata following what codex does - if (model.api.npm === "@ai-sdk/openai" && opts.body && opts.method === "POST") { + if ( + (model.api.npm === "@ai-sdk/openai" || model.api.npm === "@ai-sdk/azure") && + opts.body && + opts.method === "POST" + ) { const body = JSON.parse(opts.body as string) - const isAzure = model.providerID.includes("azure") - const keepIds = isAzure && body.store === true + const keepIds = body.store === true if (!keepIds && Array.isArray(body.input)) { for (const item of body.input) { if ("id" in item) { diff --git a/packages/opencode/src/provider/transform.ts b/packages/opencode/src/provider/transform.ts index cc0fcff8d..d47d1fe76 100644 --- a/packages/opencode/src/provider/transform.ts +++ b/packages/opencode/src/provider/transform.ts @@ -866,7 +866,7 @@ export function options(input: { } if (input.model.api.npm === "@ai-sdk/azure") { - result["store"] = true + result["store"] = false result["promptCacheKey"] = input.sessionID } diff --git a/packages/opencode/test/provider/transform.test.ts b/packages/opencode/test/provider/transform.test.ts index a12165b4f..9b66eaa77 100644 --- a/packages/opencode/test/provider/transform.test.ts +++ b/packages/opencode/test/provider/transform.test.ts @@ -101,7 +101,7 @@ describe("ProviderTransform.options - setCacheKey", () => { expect(result.store).toBe(false) }) - test("should set store=true for azure provider by default", () => { + test("should set store=false for azure provider by default", () => { const azureModel = { ...mockModel, providerID: "azure", @@ -116,7 +116,7 @@ describe("ProviderTransform.options - setCacheKey", () => { sessionID, providerOptions: {}, }) - expect(result.store).toBe(true) + expect(result.store).toBe(false) }) }) |
