@@ -235,6 +235,16 @@ describe("getReasoningConfig property tests", () => {
235235 ) ;
236236 } ) ;
237237
238+ it ( "gpt-5.4-pro upgrades none to low before downstream coercion" , ( ) => {
239+ fc . assert (
240+ fc . property ( fc . constant ( "gpt-5.4-pro" ) , ( model ) => {
241+ const result = getReasoningConfig ( model , { reasoningEffort : "none" } ) ;
242+ expect ( [ "low" , "medium" ] ) . toContain ( result . effort ) ;
243+ return true ;
244+ } )
245+ ) ;
246+ } ) ;
247+
238248 it ( "gpt-5.1, gpt-5.2, and gpt-5.4 general support none effort" , ( ) => {
239249 fc . assert (
240250 fc . property (
@@ -258,9 +268,12 @@ describe("getReasoningConfig property tests", () => {
258268describe ( "transformRequestBody property tests" , ( ) => {
259269 it ( "preserves max_output_tokens across arbitrary positive integers" , async ( ) => {
260270 await fc . assert (
261- fc . asyncProperty ( fc . integer ( { min : 1 , max : 1_000_000 } ) , async ( maxOutputTokens ) => {
271+ fc . asyncProperty (
272+ fc . constantFrom ( "gpt-5" , "gpt-5.4-pro" , "gpt-5.1-codex" ) ,
273+ fc . integer ( { min : 1 , max : 1_000_000 } ) ,
274+ async ( model , maxOutputTokens ) => {
262275 const body : RequestBody = {
263- model : "gpt-5" ,
276+ model,
264277 input : [ ] ,
265278 max_output_tokens : maxOutputTokens ,
266279 } ;
0 commit comments