diff --git a/src/core/FormatConverter.js b/src/core/FormatConverter.js index 610b0be..436cdfc 100644 --- a/src/core/FormatConverter.js +++ b/src/core/FormatConverter.js @@ -514,11 +514,19 @@ class FormatConverter { for (const key of Object.keys(obj)) { // 1. Filter out unsupported fields using a blacklist approach // This allows potentially valid fields to pass through while blocking known problematic ones - const unsupportedKeys = ["$schema", "additionalProperties"]; + const unsupportedKeys = [ + "$schema", + "additionalProperties", + "ref", + "$ref", + "propertyNames", + "patternProperties", + "unevaluatedProperties", + ]; if (isResponseSchema) { // For Structured Outputs: stricter filtering of metadata that causes 400 errors - unsupportedKeys.push("title", "default", "examples", "$defs", "id", "patternProperties"); + unsupportedKeys.push("title", "default", "examples", "$defs", "id"); } if (unsupportedKeys.includes(key)) {