From 3e11c0a240d16dc519f7b05505c0fc70a26d5129 Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Sun, 5 Jul 2026 15:38:05 -0600 Subject: [PATCH] fix(ai): use nullable instead of optional for configFiles in AI suggestion schema (#4732) OpenAI strict mode for response_format requires every property to be listed in 'required'. Optional fields must instead be modeled as nullable so the key stays required while still allowing no value. Fixes #4267 --- packages/server/src/services/ai.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/server/src/services/ai.ts b/packages/server/src/services/ai.ts index 61451b15e..c67efdabd 100644 --- a/packages/server/src/services/ai.ts +++ b/packages/server/src/services/ai.ts @@ -24,7 +24,7 @@ interface DockerOutput { dockerCompose: string; envVariables: Array<{ name: string; value: string }>; domains: Array<{ host: string; port: number; serviceName: string }>; - configFiles?: Array<{ content: string; filePath: string }>; + configFiles?: Array<{ content: string; filePath: string }> | null; } export const getAiSettingsByOrganizationId = async (organizationId: string) => { @@ -136,7 +136,7 @@ export const suggestVariants = async ({ filePath: z.string(), }), ) - .optional(), + .nullable(), }), ), });