@@ -251,11 +251,28 @@ describe("AISDKNative", () => {
251251 } ,
252252 } )
253253
254- for ( const modelID of [ "openai.gpt-oss-120b-1:0" , "global.openai.gpt-5.6-sol" , "us.openai.gpt-5.6-sol" ] ) {
254+ // gpt-oss (Harmony) keeps the flat chat-completions field.
255+ expect (
256+ map ( "@ai-sdk/amazon-bedrock" , { reasoningConfig : { maxReasoningEffort : "high" } } , "openai.gpt-oss-120b-1:0" )
257+ ?. body ,
258+ ) . toEqual ( { additionalModelRequestFields : { reasoning_effort : "high" } } )
259+
260+ // GPT-5.6+ reject `reasoning_effort` and take the Responses-style nested field.
261+ for ( const modelID of [ "global.openai.gpt-5.6-sol" , "us.openai.gpt-5.6-sol" , "us.openai.gpt-6-astra" ] ) {
255262 expect (
256- map ( "@ai-sdk/amazon-bedrock" , { reasoningConfig : { maxReasoningEffort : "high " } } , modelID ) ?. body ,
257- ) . toEqual ( { additionalModelRequestFields : { reasoning_effort : "high" } } )
263+ map ( "@ai-sdk/amazon-bedrock" , { reasoningConfig : { maxReasoningEffort : "none " } } , modelID ) ?. body ,
264+ ) . toEqual ( { additionalModelRequestFields : { reasoning : { effort : "none" } } } )
258265 }
266+ expect (
267+ map (
268+ "@ai-sdk/amazon-bedrock" ,
269+ {
270+ reasoningConfig : { maxReasoningEffort : "high" } ,
271+ additionalModelRequestFields : { reasoning : { summary : "auto" } } ,
272+ } ,
273+ "us.openai.gpt-5.6-sol" ,
274+ ) ?. body ,
275+ ) . toEqual ( { additionalModelRequestFields : { reasoning : { summary : "auto" , effort : "high" } } } )
259276 } )
260277
261278 test ( "maps Bedrock Mantle models to their supported native APIs" , ( ) => {
0 commit comments