When changing or adding public API in schema/validation libraries, prioritize a stable, user-controlled surface:

Example (options-based control idea):

// Don’t hard-code all hostname checks; allow opt-out per consumer need.
const schema = z.string().hostname({
  allowIPv4: true,
  allowIPv6: false,
  allowPunycode: true,
});