From 767115cd6944c22ab8fce82f02da7e9578d139b2 Mon Sep 17 00:00:00 2001 From: Aiden Cline <63023139+rekram1-node@users.noreply.github.com> Date: Wed, 26 Aug 2026 16:47:39 -0500 Subject: [PATCH] fix(ai): default native Mantle to Responses (#45394) --- packages/ai/src/providers/amazon-bedrock-mantle.ts | 4 ++-- packages/ai/src/providers/amazon-bedrock/mantle.ts | 2 +- packages/ai/test/provider/bedrock-mantle.test.ts | 14 +++++++++----- packages/core/test/aisdk-native.test.ts | 8 +++++--- 4 files changed, 17 insertions(+), 11 deletions(-) diff --git a/packages/ai/src/providers/amazon-bedrock-mantle.ts b/packages/ai/src/providers/amazon-bedrock-mantle.ts index af7163ceeaf..a36d3eacefd 100644 --- a/packages/ai/src/providers/amazon-bedrock-mantle.ts +++ b/packages/ai/src/providers/amazon-bedrock-mantle.ts @@ -78,7 +78,7 @@ export const configure = (input: Config = {}) => { return { id, - model: chat, + model: responses, chat, responses, configure, @@ -112,4 +112,4 @@ export const responsesModel: ProviderPackage.Definition configure(config(settings)).responses(modelID) -export const model = chatModel +export const model = responsesModel diff --git a/packages/ai/src/providers/amazon-bedrock/mantle.ts b/packages/ai/src/providers/amazon-bedrock/mantle.ts index 9916ebe87d0..9672d74f2b3 100644 --- a/packages/ai/src/providers/amazon-bedrock/mantle.ts +++ b/packages/ai/src/providers/amazon-bedrock/mantle.ts @@ -1,2 +1,2 @@ -export { chatModel as model } from "../amazon-bedrock-mantle.js" +export { responsesModel as model } from "../amazon-bedrock-mantle.js" export type { Settings } from "../amazon-bedrock-mantle.js" diff --git a/packages/ai/test/provider/bedrock-mantle.test.ts b/packages/ai/test/provider/bedrock-mantle.test.ts index c82ae03aa2b..0c11de31f3f 100644 --- a/packages/ai/test/provider/bedrock-mantle.test.ts +++ b/packages/ai/test/provider/bedrock-mantle.test.ts @@ -3,6 +3,7 @@ import { Effect } from "effect" import { HttpClientRequest } from "effect/unstable/http" import { LLM, Message } from "../../src/index.js" import { AmazonBedrockMantle } from "../../src/providers.js" +import { model } from "../../src/providers/amazon-bedrock/mantle.js" import { OpenAIResponses } from "../../src/protocols/openai-responses.js" import { compileRequest, LLMClient } from "../../src/route/client.js" import { it } from "../lib/effect.js" @@ -17,13 +18,16 @@ const credentials = { } describe("Amazon Bedrock Mantle provider", () => { - it.effect("uses Chat by default and exposes Responses", () => + it.effect("uses Responses by default and exposes Chat explicitly", () => Effect.gen(function* () { const provider = AmazonBedrockMantle.configure({ credentials }) - expect(provider.responses("openai.gpt-oss-120b").route.transport).toBe(OpenAIResponses.httpTransport) - const chat = yield* compileRequest(LLM.request({ model: provider.model("openai.gpt-oss-120b"), prompt: "Hi" })) + expect(provider.model).toBe(provider.responses) + expect(AmazonBedrockMantle.model).toBe(AmazonBedrockMantle.responsesModel) + expect(model).toBe(AmazonBedrockMantle.responsesModel) + expect(provider.model("openai.gpt-oss-120b").route.transport).toBe(OpenAIResponses.httpTransport) + const chat = yield* compileRequest(LLM.request({ model: provider.chat("openai.gpt-oss-120b"), prompt: "Hi" })) const responses = yield* compileRequest( - LLM.request({ model: provider.responses("openai.gpt-oss-120b"), prompt: "Hi" }), + LLM.request({ model: provider.model("openai.gpt-oss-120b"), prompt: "Hi" }), ) expect(chat).toMatchObject({ @@ -37,7 +41,7 @@ describe("Amazon Bedrock Mantle provider", () => { body: { model: "openai.gpt-oss-120b", store: false }, }) expect(provider.model("openai.gpt-oss-120b").route.providerMetadataKey).toBe("mantle") - expect(provider.responses("openai.gpt-oss-120b").route.providerMetadataKey).toBe("mantle") + expect(provider.chat("openai.gpt-oss-120b").route.providerMetadataKey).toBe("mantle") }), ) diff --git a/packages/core/test/aisdk-native.test.ts b/packages/core/test/aisdk-native.test.ts index 4456b8e5f35..9de62931efd 100644 --- a/packages/core/test/aisdk-native.test.ts +++ b/packages/core/test/aisdk-native.test.ts @@ -222,9 +222,11 @@ describe("AISDKNative", () => { }, headers: { "x-test": "value" }, }) - expect(map("@ai-sdk/amazon-bedrock/mantle", settings, "openai.gpt-oss-safeguard-20b")?.package).toBe( - "@opencode-ai/ai/providers/amazon-bedrock/mantle/chat", - ) + for (const modelID of ["openai.gpt-oss-safeguard-20b", "openai.gpt-oss-safeguard-120b"]) { + expect(map("@ai-sdk/amazon-bedrock/mantle", settings, modelID)?.package).toBe( + "@opencode-ai/ai/providers/amazon-bedrock/mantle/chat", + ) + } expect( map( "@ai-sdk/amazon-bedrock/mantle",