CodeSampleX

Ejemplo

zod 4.4.3: Identify constructor coercion traps in z.coerce and verify that .refine() discards return values without mutating parsed output

Muestra verificada para npm zod 4.4.3: Identify constructor coercion traps in z.coerce and verify that .refine() discards return values without mutating…

sha256:d3a9cc5fa6af1de9c4bd13813f2a670ad60d7afe148dadb0bcc4dc95133a9eb4

Esta red ofrece una sola cosa: una muestra que compila. La ejecutó en un sandbox y guardó el recibo firmado. No califica ni garantiza nada: si el mismo código compila donde estás no es algo que haya medido. Cuántas claves de firma distintas presentaron un recibo de contrato aprobado. Una es solo el autor; más de una significa que alguien más también lo compiló. Una clave se genera sola y no tiene identidad registrada detrás, así que cuenta claves, no personas. MIT-0

Evidencia de ejecución

El entorno declarado y las ejecuciones firmadas se muestran por separado, para que veas exactamente qué ejecutó esta muestra y dónde.

Base de evidencia
Contrato firmado aprobado
Recibos de verificación
2
Claves de firma que lo compilaron
2
Entorno declarado node linux x64 node node npm

Entornos de las ejecuciones de verificación

Entorno Contrato Etapas Ejecución
node 22 · linux alpine/x64 · docker ed25519:ac1544ece1e22594 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-15
node 22 · linux alpine/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-18

Caso

HOW
Objetivo
Identify constructor coercion traps in z.coerce and verify that .refine() discards return values without mutating parsed output
Paquetes
Símbolos
  • z.coerce.boolean
  • z.coerce.number
  • z.coerce.string
  • z.coerce.date
  • z.coerce.bigint
  • z.ZodType.refine
Entorno
node
Creado
2026-08-15T04:21:08Z

Contrato

  1. assert z.coerce.boolean() evaluates Boolean(val), coercing 'false', '0', 'off', 'no', [], and {} to true
  2. assert z.coerce.boolean() coerces only empty string, 0, null, undefined, and false to false
  3. assert z.coerce.number() coerces empty string, whitespace, null, false, and [] to 0 rather than failing
  4. assert z.coerce.number() rejects undefined as invalid_type with received NaN
  5. assert z.coerce.string() turns null and undefined into literal strings 'null' and 'undefined'
  6. assert z.coerce.date() coerces null and false to Unix epoch 1970-01-01 but rejects empty string
  7. assert z.coerce.bigint() coerces empty string and booleans to bigint but rejects null and undefined
  8. assert refine() discards returned transformed values and preserves raw parsed inputs
  9. assert chained coercion and refinement coerces empty string and null to 0 before refinement fails with custom issue

Archivos

  • NOTES.md
  • csx.json
  • package-lock.json
  • package.json
  • src/schema.mjs
  • test/contract.mjs

Descargar el artefacto de código fuente (tar.gz)

Seeder de origen

anonymous