fix: add propertyNames validation to object schemas in JSON schema

Add propertyNames: { type: "string" } to all object schemas with
additionalProperties to ensure proper JSON schema validation for
dynamic property keys.

🤖 Generated with OhMyOpenCode assistance
This commit is contained in:
YeonGyu-Kim 2026-02-17 02:34:31 +09:00
parent 5c13a63758
commit a31087e543

View File

@ -163,6 +163,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -208,6 +211,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -295,6 +301,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -336,6 +345,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -381,6 +393,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -468,6 +483,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -509,6 +527,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -554,6 +575,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -641,6 +665,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -682,6 +709,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -727,6 +757,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -814,6 +847,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -855,6 +891,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -900,6 +939,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -987,6 +1029,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -1028,6 +1073,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -1073,6 +1121,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -1160,6 +1211,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -1201,6 +1255,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -1246,6 +1303,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -1333,6 +1393,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -1374,6 +1437,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -1419,6 +1485,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -1506,6 +1575,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -1547,6 +1619,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -1592,6 +1667,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -1679,6 +1757,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -1720,6 +1801,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -1765,6 +1849,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -1852,6 +1939,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -1893,6 +1983,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -1938,6 +2031,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -2025,6 +2121,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -2066,6 +2165,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -2111,6 +2213,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -2198,6 +2303,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -2239,6 +2347,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -2284,6 +2395,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -2371,6 +2485,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -2412,6 +2529,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -2457,6 +2577,9 @@
}, },
{ {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "string", "type": "string",
"enum": [ "enum": [
@ -2544,6 +2667,9 @@
}, },
"providerOptions": { "providerOptions": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
} }
}, },
@ -2554,6 +2680,9 @@
}, },
"categories": { "categories": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "object", "type": "object",
"properties": { "properties": {
@ -2617,6 +2746,9 @@
}, },
"tools": { "tools": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -2657,6 +2789,9 @@
}, },
"plugins_override": { "plugins_override": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "boolean" "type": "boolean"
} }
@ -2930,6 +3065,9 @@
}, },
"metadata": { "metadata": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {} "additionalProperties": {}
}, },
"allowed-tools": { "allowed-tools": {
@ -2981,6 +3119,9 @@
}, },
"providerConcurrency": { "providerConcurrency": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "number", "type": "number",
"minimum": 0 "minimum": 0
@ -2988,6 +3129,9 @@
}, },
"modelConcurrency": { "modelConcurrency": {
"type": "object", "type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": { "additionalProperties": {
"type": "number", "type": "number",
"minimum": 0 "minimum": 0
@ -3060,7 +3204,8 @@
"enum": [ "enum": [
"playwright", "playwright",
"agent-browser", "agent-browser",
"dev-browser" "dev-browser",
"playwright-cli"
] ]
} }
}, },