diff --git a/packages/zod/src/v4/core/to-json-schema.ts b/packages/zod/src/v4/core/to-json-schema.ts index e72e65a4df..fd41e305fe 100644 --- a/packages/zod/src/v4/core/to-json-schema.ts +++ b/packages/zod/src/v4/core/to-json-schema.ts @@ -409,7 +409,7 @@ export function finalize( if (refSchema.$ref) { for (const key in schema) { if (key === "$ref" || key === "allOf") continue; - if (key in refSeen.def! && JSON.stringify(schema[key]) === JSON.stringify(refSeen.def![key])) { + if (refSeen.def && key in refSeen.def && JSON.stringify(schema[key]) === JSON.stringify(refSeen.def[key])) { delete schema[key]; } }