https://codesandbox.io/p/sandbox/j7dkym
Doing zx.deepNullable(z.object({r: z.record(...)})) only makes the whole record nullable and ignores internals. Keys are not nullable indeed, but what about values? IMO it should make values nullable too, and other deep... methods should also apply to values.