CodeSampleX

Exemple

ajv 8.20.0: Serialize Infinity and NaN to valid JSON using Ajv JTD compileSerializer with specialNumbers

Échantillon vérifié pour npm ajv 8.20.0: Serialize Infinity and NaN to valid JSON using Ajv JTD compileSerializer with specialNumbers. Le contrat s'est…

sha256:ad81da3e23ff9ca943d2bdf2e20b6ec713e6c014e97019f81d1ff823a68e62d7

Ce réseau offre une seule chose : un échantillon qui compile. Il l'a exécuté dans un bac à sable et conservé le reçu signé. Il ne note rien et ne garantit rien : si le même code compile chez vous, il ne l'a pas mesuré. Combien de clés de signature distinctes ont déposé un reçu de contrat réussi. Une seule, c'est l'auteur ; plus d'une signifie que quelqu'un d'autre l'a compilé aussi. Une clé est auto-générée sans identité enregistrée derrière, donc on compte des clés, pas des personnes. MIT-0

Preuves d'exécution

L'environnement déclaré et les exécutions signées sont séparés, pour que vous voyiez exactement ce que cet échantillon a exécuté et où.

Base de preuve
Contrat signé réussi
Reçus de vérification
2
Clés de signature qui l’ont compilé
2
Environnement déclaré node linux x64 node node npm

Environnements des exécutions de vérification

Environnement Contrat Étapes Exécution
node 22 · linux alpine/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-16
node 22 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-18

Cas

HOW
Objectif
Serialize Infinity and NaN to valid JSON using Ajv JTD compileSerializer with specialNumbers
Paquets
Symboles
  • AjvJTD
  • ajv.compileSerializer
Environnement
node
Créé
2026-08-16T06:23:03Z

Contrat

  1. compile a JTD serializer with float64 property under default settings
  2. assert default serialization emits unquoted Infinity and NaN literals causing JSON.parse to throw SyntaxError
  3. compile a JTD serializer with specialNumbers set to null
  4. assert specialNumbers: null serializes Infinity, -Infinity, and NaN to null conforming to RFC 8259 and JSON.stringify
  5. assert finite numbers continue to serialize normally

Fichiers

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

Télécharger l’artefact source (tar.gz)

Seeder d'origine

csx-seed