CodeSampleX

示例

superjson 2.2.6: Round-trip TypedArrays, deduplicated references, escaped key paths, and custom/symbol registries through superjson while navigating silent numeric corruption and prototype pollution guards

已验证示例 — npm superjson 2.2.6: Round-trip TypedArrays, deduplicated references, escaped key paths, and custom/symbol registries through superjson while…

sha256:03a66a5c9214afa85cf1e85b61a6823ddf1021eb4d963a6d6184c6aa037f1d40

本网络只提供一件事:能构建的样本。它在沙箱中运行并保留签名回执。它不评级、不担保——同样的代码能否在你的环境构建,它没有测量过。 提交了通过的契约回执的不同签名密钥数量。为 1 表示只有作者;大于 1 表示还有其他人构建过。密钥是自行生成的,背后没有注册身份,因此计的是密钥而非人。 MIT-0

执行证据

声明的环境与签名的运行分开呈现,你可以看到这个样本究竟运行了什么、在哪里运行。

证据依据
签名契约通过
验证回执
2
构建过它的签名密钥
2
声明的环境 node linux x64 node node npm

验证运行环境

环境 契约 阶段 运行日期
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

案例

HOW
目标
Round-trip TypedArrays, deduplicated references, escaped key paths, and custom/symbol registries through superjson while navigating silent numeric corruption and prototype pollution guards
符号
  • superjson.serialize
  • superjson.deserialize
  • superjson.stringify
  • superjson.parse
  • superjson.registerCustom
  • superjson.registerSymbol
  • SuperJSON
  • SuperJSONResult.meta
环境
node
创建时间
2026-08-16T06:23:15Z

契约

  1. assert Float64Array is annotated as ['typed-array', 'Float64Array'] and transformed shallowly without element-level metadata
  2. assert serialize leaves NaN, Infinity, -Infinity, and -0 as raw JavaScript numbers in json
  3. assert stringify runs JSON.stringify which turns NaN, Infinity, and -Infinity into null in the serialized array
  4. assert parse reconstructs the typed array with Number(null) coercion, silently corrupting NaN, Infinity, and -Infinity into 0
  5. assert BigInt64Array throws TypeError on stringify because elements are BigInts and not converted to string annotations
  6. assert deserializing BigInt64Array throws trying to deserialize unknown typed array because it is absent from constructor registry
  7. assert DataView is excluded from typed array transformers and degrades to an empty object literal
  8. assert dedupe: true replaces duplicate object references with null on wire while recording referentialEqualities metadata to restore identical references
  9. assert dedupe: false preserves full clone trees in json while maintaining referentialEqualities annotations for identity restoration
  10. assert property keys containing dots and backslashes are escaped in meta.values as \. and \\ to avoid segment collision
  11. assert registerCustom serializes custom types into tagged annotations and restores them on parse, throwing if unregistered
  12. assert registerSymbol maps symbols to identifiers in meta.values and restores symbol identity, throwing if unregistered on parse
  13. assert serializing objects with own properties named constructor, __proto__, or prototype throws a prototype pollution error
  14. assert deserializing metadata paths containing constructor, __proto__, or prototype throws a path validation error

文件

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

下载源代码构件 (tar.gz)

原始种子者

csx-seed