{
  "schema": "wax.determinism-corpus.v2",
  "deployment": "/deployment.json",
  "bundle": "/evidence/determinism/wax-determinism-corpus.zip",
  "methodology": {
    "runner": "/evidence/determinism/source/run-probes.mjs",
    "comparator": "/evidence/determinism/source/compare-probes.mjs",
    "hostDriver": "/evidence/determinism/source/host-probe-driver.c",
    "description": "/evidence/determinism/source/CrossArchitectureCorpus.md"
  },
  "sources": [
    {
      "path": "Tools/Determinism/Probe/Src/Main.wax",
      "publicPath": "Probe/Main.wax",
      "label": "Full Wax probe",
      "language": "wax",
      "download": "/evidence/determinism/source/Probe/Main.wax"
    },
    {
      "path": "Tools/Determinism/Probe/wax.json",
      "publicPath": "Probe/wax.json",
      "label": "Full project manifest",
      "language": "plaintext",
      "download": "/evidence/determinism/source/Probe/wax.json"
    },
    {
      "path": "Tools/Determinism/MachineProbe/Src/Main.wax",
      "publicPath": "MachineProbe/Main.wax",
      "label": "Machine scalar probe",
      "language": "wax",
      "download": "/evidence/determinism/source/MachineProbe/Main.wax"
    },
    {
      "path": "Tools/Determinism/MachineProbe/wax.json",
      "publicPath": "MachineProbe/wax.json",
      "label": "Machine project manifest",
      "language": "plaintext",
      "download": "/evidence/determinism/source/MachineProbe/wax.json"
    },
    {
      "path": "Tools/Determinism/HostProbe/Src/Main.wax",
      "publicPath": "HostProbe/Main.wax",
      "label": "Host probe",
      "language": "wax",
      "download": "/evidence/determinism/source/HostProbe/Main.wax"
    },
    {
      "path": "Tools/Determinism/HostProbe/wax.json",
      "publicPath": "HostProbe/wax.json",
      "label": "Host project manifest",
      "language": "plaintext",
      "download": "/evidence/determinism/source/HostProbe/wax.json"
    },
    {
      "path": "Tools/Determinism/host-probe-driver.c",
      "publicPath": "host-probe-driver.c",
      "label": "Native host driver",
      "language": "c",
      "download": "/evidence/determinism/source/host-probe-driver.c"
    },
    {
      "path": "Tools/Determinism/wasm-probe-host.mjs",
      "publicPath": "wasm-probe-host.mjs",
      "label": "Wasm host driver",
      "language": "javascript",
      "download": "/evidence/determinism/source/wasm-probe-host.mjs"
    },
    {
      "path": "Tools/Determinism/run-probes.mjs",
      "publicPath": "run-probes.mjs",
      "label": "Corpus runner",
      "language": "javascript",
      "download": "/evidence/determinism/source/run-probes.mjs"
    },
    {
      "path": "Tools/Determinism/compare-probes.mjs",
      "publicPath": "compare-probes.mjs",
      "label": "Artifact comparator",
      "language": "javascript",
      "download": "/evidence/determinism/source/compare-probes.mjs"
    },
    {
      "path": "Tools/Determinism/CrossArchitectureCorpus.md",
      "publicPath": "CrossArchitectureCorpus.md",
      "label": "Run instructions",
      "language": "plaintext",
      "download": "/evidence/determinism/source/CrossArchitectureCorpus.md"
    },
    {
      "path": "Tools/Determinism/bundle-runner.mjs",
      "publicPath": "bundle-runner.mjs",
      "label": "Bundle entry point",
      "language": "javascript",
      "bundlePath": "run.mjs",
      "download": "/evidence/determinism/source/bundle-runner.mjs"
    },
    {
      "path": "Tools/Determinism/BundleReadme.md",
      "publicPath": "BundleReadme.md",
      "label": "Bundle README",
      "language": "plaintext",
      "bundlePath": "README.md",
      "download": "/evidence/determinism/source/BundleReadme.md"
    },
    {
      "path": "Runtime/WasmHost/runtime-loader.mjs",
      "publicPath": "Runtime/WasmHost/runtime-loader.mjs",
      "label": "Wasm runtime loader",
      "language": "javascript",
      "bundle": false,
      "download": "/evidence/determinism/source/Runtime/WasmHost/runtime-loader.mjs"
    },
    {
      "path": "Runtime/WasmHost/c-memory-wasi.mjs",
      "publicPath": "Runtime/WasmHost/c-memory-wasi.mjs",
      "label": "Wasm WASI adapter",
      "language": "javascript",
      "bundle": false,
      "download": "/evidence/determinism/source/Runtime/WasmHost/c-memory-wasi.mjs"
    },
    {
      "path": "Runtime/WasmHost/runtime-abi.mjs",
      "publicPath": "Runtime/WasmHost/runtime-abi.mjs",
      "label": "Wasm runtime ABI",
      "language": "javascript",
      "bundle": false,
      "download": "/evidence/determinism/source/Runtime/WasmHost/runtime-abi.mjs"
    },
    {
      "path": "Runtime/WasmHost/runtime-host.mjs",
      "publicPath": "Runtime/WasmHost/runtime-host.mjs",
      "label": "Wasm runtime bridge",
      "language": "javascript",
      "bundle": false,
      "download": "/evidence/determinism/source/Runtime/WasmHost/runtime-host.mjs"
    }
  ],
  "corpora": [
    {
      "id": "full",
      "label": "Named cases",
      "description": "The 87 named cases show each operation and its required result.",
      "probeCount": 87,
      "resultsDownload": "/evidence/determinism/expected-full.txt",
      "resultsFormat": "name comma-separated-values",
      "expectationSourcePath": "Tools/Determinism/expected-probes.txt",
      "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
      "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
      "artifacts": [
        {
          "leg": "native",
          "legLabel": "C · instant tier",
          "platform": "linux-x64",
          "compiler": null,
          "probeCount": 87,
          "download": "/evidence/determinism/artifacts/full/determinism-native-linux-x64.txt",
          "sourcePath": "Tools/Determinism/Reference/full/determinism-native-linux-x64.txt"
        },
        {
          "leg": "native",
          "legLabel": "C · instant tier",
          "platform": "macos-arm64",
          "compiler": "waxc 0.0.0-dev (fd90f3eab400391804bc9f359acd7908e752807e)",
          "probeCount": 87,
          "download": "/evidence/determinism/artifacts/full/determinism-native-macos-arm64.txt",
          "sourcePath": "Tools/Determinism/Reference/full/determinism-native-macos-arm64.txt"
        },
        {
          "leg": "native-optimized",
          "legLabel": "C / host Clang · optimized tier",
          "platform": "macos-arm64",
          "compiler": "waxc 0.0.0-dev (fd90f3eab400391804bc9f359acd7908e752807e)",
          "probeCount": 87,
          "download": "/evidence/determinism/artifacts/full/determinism-native-optimized-macos-arm64.txt",
          "sourcePath": "Tools/Determinism/Reference/full/determinism-native-optimized-macos-arm64.txt"
        },
        {
          "leg": "wasm",
          "legLabel": "Wasm / Binaryen",
          "platform": "macos-arm64",
          "compiler": "waxc 0.0.0-dev (fd90f3eab400391804bc9f359acd7908e752807e)",
          "probeCount": 87,
          "download": "/evidence/determinism/artifacts/full/determinism-wasm-macos-arm64.txt",
          "sourcePath": "Tools/Determinism/Reference/full/determinism-wasm-macos-arm64.txt"
        },
        {
          "leg": "native",
          "legLabel": "C · instant tier",
          "platform": "windows-arm64",
          "compiler": "waxc 0.0.0-dev (729949e0f38d05dbf6693e3e70d1ea22b161568a)",
          "probeCount": 87,
          "download": "/evidence/determinism/artifacts/full/determinism-native-windows-arm64.txt",
          "sourcePath": "Tools/Determinism/Reference/full/determinism-native-windows-arm64.txt"
        },
        {
          "leg": "native-optimized",
          "legLabel": "C / host Clang · optimized tier",
          "platform": "windows-arm64",
          "compiler": "waxc 0.0.0-dev (729949e0f38d05dbf6693e3e70d1ea22b161568a)",
          "probeCount": 87,
          "download": "/evidence/determinism/artifacts/full/determinism-native-optimized-windows-arm64.txt",
          "sourcePath": "Tools/Determinism/Reference/full/determinism-native-optimized-windows-arm64.txt"
        },
        {
          "leg": "native",
          "legLabel": "C · instant tier",
          "platform": "windows-x64",
          "compiler": "waxc 0.0.0-dev (729949e0f38d05dbf6693e3e70d1ea22b161568a)",
          "probeCount": 87,
          "download": "/evidence/determinism/artifacts/full/determinism-native-windows-x64.txt",
          "sourcePath": "Tools/Determinism/Reference/full/determinism-native-windows-x64.txt"
        },
        {
          "leg": "native-optimized",
          "legLabel": "C / host Clang · optimized tier",
          "platform": "windows-x64",
          "compiler": "waxc 0.0.0-dev (729949e0f38d05dbf6693e3e70d1ea22b161568a)",
          "probeCount": 87,
          "download": "/evidence/determinism/artifacts/full/determinism-native-optimized-windows-x64.txt",
          "sourcePath": "Tools/Determinism/Reference/full/determinism-native-optimized-windows-x64.txt"
        }
      ],
      "families": [
        {
          "id": "float-images",
          "label": "Float byte images and hashes",
          "description": "Stores mixed NaNs, infinities, signed zero, and finite values as bytes, then hashes the same images. This catches representation changes and stdlib hashing drift.",
          "probes": [
            {
              "name": "bytes.f32.mixed",
              "value": "0000C07F0000807F000080FF00000000000000800000803F000080BF0000C07F",
              "description": "Stores eight f32 values in order: NaN, positive infinity, negative infinity, positive zero, negative zero, positive one, negative one, and a generated NaN. The expectation shows the exact bytes of each array element in that order.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 150
            },
            {
              "name": "bytes.f64.mixed",
              "value": "000000000000F87F000000000000F07F000000000000F0FF00000000000000000000000000000080000000000000F03F000000000000F0BF000000000000F87F",
              "description": "Stores eight f64 values in order: NaN, positive infinity, negative infinity, positive zero, negative zero, positive one, negative one, and a generated NaN. The expectation shows the exact bytes of each array element in that order.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 159
            },
            {
              "name": "digest.f32.mixed",
              "value": "9AD8409206FE0A15",
              "description": "Hashes the mixed f32 byte image to check the stdlib hash path used by snapshots and other raw memory observers.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 248
            },
            {
              "name": "digest.f64.mixed",
              "value": "185FAA00C166A40D",
              "description": "Hashes the mixed f64 byte image to check the stdlib hash path used by snapshots and other raw memory observers.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 249
            }
          ]
        },
        {
          "id": "nan",
          "label": "NaN generation and observation",
          "description": "Creates NaNs through constants and runtime operations, converts widths, reinterprets bits, and stores scalar and vector values. Every observable NaN must become Wax’s canonical pattern.",
          "probes": [
            {
              "name": "nan.bitconv.f32",
              "value": "0000C07F",
              "description": "Reads a stored f32 NaN through the generic byte conversion path and checks its canonical memory representation.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 234
            },
            {
              "name": "nan.bitconv.f64",
              "value": "000000000000F87F",
              "description": "Reads a stored f64 NaN through the generic byte conversion path and checks its canonical memory representation.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 236
            },
            {
              "name": "nan.const.f32.divzero",
              "value": "7FC00000",
              "description": "Observes an f32 NaN folded at compile time from zero divided by zero and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 187
            },
            {
              "name": "nan.const.f32.infmul",
              "value": "7FC00000",
              "description": "Observes an f32 NaN folded at compile time from infinity multiplied by zero and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 190
            },
            {
              "name": "nan.const.f32.infsub",
              "value": "7FC00000",
              "description": "Observes an f32 NaN folded at compile time from infinity minus itself and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 189
            },
            {
              "name": "nan.const.f32.sqrtneg",
              "value": "7FC00000",
              "description": "Observes an f32 NaN folded at compile time from the square root of a negative value and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 191
            },
            {
              "name": "nan.const.f64.divzero",
              "value": "7FF8000000000000",
              "description": "Observes an f64 NaN folded at compile time from zero divided by zero and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 194
            },
            {
              "name": "nan.const.f64.infmul",
              "value": "7FF8000000000000",
              "description": "Observes an f64 NaN folded at compile time from infinity multiplied by zero and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 197
            },
            {
              "name": "nan.const.f64.infsub",
              "value": "7FF8000000000000",
              "description": "Observes an f64 NaN folded at compile time from infinity minus itself and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 196
            },
            {
              "name": "nan.const.f64.sqrtneg",
              "value": "7FF8000000000000",
              "description": "Observes an f64 NaN folded at compile time from the square root of a negative value and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 198
            },
            {
              "name": "nan.opaque.demote.f64.to.f32",
              "value": "7FC00000",
              "description": "Demotes an f64 NaN produced at runtime and checks that the observed result uses the canonical f32 pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 221
            },
            {
              "name": "nan.opaque.f32.divzero",
              "value": "7FC00000",
              "description": "Observes an f32 NaN produced at runtime from zero divided by zero and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 205
            },
            {
              "name": "nan.opaque.f32.infmul",
              "value": "7FC00000",
              "description": "Observes an f32 NaN produced at runtime from infinity multiplied by zero and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 207
            },
            {
              "name": "nan.opaque.f32.infsub",
              "value": "7FC00000",
              "description": "Observes an f32 NaN produced at runtime from infinity minus itself and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 206
            },
            {
              "name": "nan.opaque.f32.sqrtneg",
              "value": "7FC00000",
              "description": "Observes an f32 NaN produced at runtime from the square root of a negative value and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 208
            },
            {
              "name": "nan.opaque.f64.divzero",
              "value": "7FF8000000000000",
              "description": "Observes an f64 NaN produced at runtime from zero divided by zero and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 210
            },
            {
              "name": "nan.opaque.f64.infmul",
              "value": "7FF8000000000000",
              "description": "Observes an f64 NaN produced at runtime from infinity multiplied by zero and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 212
            },
            {
              "name": "nan.opaque.f64.infsub",
              "value": "7FF8000000000000",
              "description": "Observes an f64 NaN produced at runtime from infinity minus itself and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 211
            },
            {
              "name": "nan.opaque.f64.sqrtneg",
              "value": "7FF8000000000000",
              "description": "Observes an f64 NaN produced at runtime from the square root of a negative value and requires the canonical bit pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 213
            },
            {
              "name": "nan.opaque.promote.f32.to.f64",
              "value": "7FF8000000000000",
              "description": "Promotes an f32 NaN produced at runtime and checks that the observed result uses the canonical f64 pattern.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 220
            },
            {
              "name": "nan.store.f32.bytes",
              "value": "0000C07F0000C07F0000C07F0000C07F",
              "description": "Stores several independently produced f32 NaNs and checks their raw heap bytes.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 226
            },
            {
              "name": "nan.store.f64.bytes",
              "value": "000000000000F87F000000000000F87F000000000000F87F000000000000F87F",
              "description": "Stores several independently produced f64 NaNs and checks their raw heap bytes.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 227
            },
            {
              "name": "nan.store.v4.div.bytes",
              "value": "0000C07F0000803F0000803F0000803F",
              "description": "Stores a vector containing a NaN produced by division and finite lanes, checking canonicalization without disturbing the other lanes.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 228
            },
            {
              "name": "nan.store.v4.sqrt.bytes",
              "value": "0000C07F0000803F0000008000000040",
              "description": "Stores a vector containing a NaN produced by square root, signed zero, and finite lanes, checking every observed bit.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 229
            }
          ]
        },
        {
          "id": "conversion",
          "label": "Saturating float to integer conversion",
          "description": "Covers NaN, infinities, and exact limit values across signed and unsigned 32 and 64 bit destinations. These cases deliberately disagree across bare CPU instructions.",
          "probes": [
            {
              "name": "conv.f32.i32.maxplus1",
              "value": "7FFFFFFF",
              "description": "Converts f32 the first exactly representable value above the destination maximum to i32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 306
            },
            {
              "name": "conv.f32.i32.nan",
              "value": "00000000",
              "description": "Converts f32 NaN to i32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 280
            },
            {
              "name": "conv.f32.i32.neginf",
              "value": "80000000",
              "description": "Converts f32 negative infinity to i32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 279
            },
            {
              "name": "conv.f32.i32.posinf",
              "value": "7FFFFFFF",
              "description": "Converts f32 positive infinity to i32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 278
            },
            {
              "name": "conv.f32.u32.maxplus1",
              "value": "FFFFFFFF",
              "description": "Converts f32 the first exactly representable value above the destination maximum to u32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 307
            },
            {
              "name": "conv.f32.u32.nan",
              "value": "00000000",
              "description": "Converts f32 NaN to u32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 283
            },
            {
              "name": "conv.f32.u32.neginf",
              "value": "00000000",
              "description": "Converts f32 negative infinity to u32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 282
            },
            {
              "name": "conv.f32.u32.posinf",
              "value": "FFFFFFFF",
              "description": "Converts f32 positive infinity to u32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 281
            },
            {
              "name": "conv.f64.i32.nan",
              "value": "00000000",
              "description": "Converts f64 NaN to i32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 296
            },
            {
              "name": "conv.f64.i32.neginf",
              "value": "80000000",
              "description": "Converts f64 negative infinity to i32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 295
            },
            {
              "name": "conv.f64.i32.posinf",
              "value": "7FFFFFFF",
              "description": "Converts f64 positive infinity to i32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 294
            },
            {
              "name": "conv.f64.i64.nan",
              "value": "0000000000000000",
              "description": "Converts f64 NaN to i64 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 290
            },
            {
              "name": "conv.f64.i64.neginf",
              "value": "8000000000000000",
              "description": "Converts f64 negative infinity to i64 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 289
            },
            {
              "name": "conv.f64.i64.posinf",
              "value": "7FFFFFFFFFFFFFFF",
              "description": "Converts f64 positive infinity to i64 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 288
            },
            {
              "name": "conv.f64.u32.nan",
              "value": "00000000",
              "description": "Converts f64 NaN to u32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 299
            },
            {
              "name": "conv.f64.u32.neginf",
              "value": "00000000",
              "description": "Converts f64 negative infinity to u32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 298
            },
            {
              "name": "conv.f64.u32.posinf",
              "value": "FFFFFFFF",
              "description": "Converts f64 positive infinity to u32 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 297
            },
            {
              "name": "conv.f64.u64.nan",
              "value": "0000000000000000",
              "description": "Converts f64 NaN to u64 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 293
            },
            {
              "name": "conv.f64.u64.neginf",
              "value": "0000000000000000",
              "description": "Converts f64 negative infinity to u64 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 292
            },
            {
              "name": "conv.f64.u64.posinf",
              "value": "FFFFFFFFFFFFFFFF",
              "description": "Converts f64 positive infinity to u64 and checks Wax's saturating result instead of the host CPU's conversion behavior.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 291
            }
          ]
        },
        {
          "id": "host-composites",
          "label": "Host composite marshalling",
          "description": "Passes NaNs with payloads, finite floats, integer fields, and nonzero padding through arrays and structs passed by value. Float leaves canonicalize while every unrelated byte stays intact.",
          "probes": [
            {
              "name": "hostcomposite.array.bytes",
              "value": "000000000000F87F0000C07F0100C07F0000C07FA5A5A5A500000000000004C0000090400100C0FF0000C07F5A5A5A5A",
              "description": "Passes an array of mixed width float structs from the host and checks that float leaves canonicalize without changing integers or padding.",
              "sourcePath": "Tools/Determinism/HostProbe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/HostProbe/Main.wax",
              "sourceLine": 79
            },
            {
              "name": "hostcomposite.raw.array.bytes",
              "value": "010000000000F07F0100C0FF0100C07F0100807FA5A5A5A500000000000004C0000090400100C0FF0100C07F5A5A5A5A",
              "description": "Carries the host array payload through an untyped byte crossing, proving which noncanonical bytes the typed array probe received.",
              "sourcePath": "Tools/Determinism/HostProbe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/HostProbe/Main.wax",
              "sourceLine": 93
            },
            {
              "name": "hostcomposite.raw.value.bytes",
              "value": "000000000000F8FF0100807F0100F07F0000A03F3C3C3C3C",
              "description": "Carries the host value payload through an untyped byte crossing, proving which noncanonical bytes the typed value probe received.",
              "sourcePath": "Tools/Determinism/HostProbe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/HostProbe/Main.wax",
              "sourceLine": 95
            },
            {
              "name": "hostcomposite.value.bytes",
              "value": "000000000000F87F0000C07F0100F07F0000A03F3C3C3C3C",
              "description": "Passes a mixed width float struct by value from the host and checks canonical float leaves plus exact byte assignment and padding.",
              "sourcePath": "Tools/Determinism/HostProbe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/HostProbe/Main.wax",
              "sourceLine": 87
            }
          ]
        },
        {
          "id": "shifts",
          "label": "Masked shifts",
          "description": "Exercises shift counts at, above, and below the operand width. Wax masks counts consistently instead of inheriting C undefined behavior or instructions that vary by architecture.",
          "probes": [
            {
              "name": "shift.i32.sar.by33",
              "value": "C0000000",
              "description": "Applies an i32 arithmetic right shift by 33 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 259
            },
            {
              "name": "shift.i32.sar.byneg1",
              "value": "FFFFFFFF",
              "description": "Applies an i32 arithmetic right shift by -1 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 260
            },
            {
              "name": "shift.i32.shl.by32",
              "value": "00000001",
              "description": "Applies an i32 left shift by 32 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 256
            },
            {
              "name": "shift.i32.shl.by33",
              "value": "00000002",
              "description": "Applies an i32 left shift by 33 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 257
            },
            {
              "name": "shift.i32.shl.byneg1",
              "value": "80000000",
              "description": "Applies an i32 left shift by -1 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 258
            },
            {
              "name": "shift.i64.sar.by65",
              "value": "C000000000000000",
              "description": "Applies an i64 arithmetic right shift by 65 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 266
            },
            {
              "name": "shift.i64.sar.byneg1",
              "value": "FFFFFFFFFFFFFFFF",
              "description": "Applies an i64 arithmetic right shift by -1 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 267
            },
            {
              "name": "shift.i64.shl.by64",
              "value": "0000000000000001",
              "description": "Applies an i64 left shift by 64 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 263
            },
            {
              "name": "shift.i64.shl.by65",
              "value": "0000000000000002",
              "description": "Applies an i64 left shift by 65 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 264
            },
            {
              "name": "shift.i64.shl.byneg1",
              "value": "8000000000000000",
              "description": "Applies an i64 left shift by -1 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 265
            },
            {
              "name": "shift.u32.shr.by33",
              "value": "40000000",
              "description": "Applies an u32 logical right shift by 33 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 261
            },
            {
              "name": "shift.u64.shr.by65",
              "value": "4000000000000000",
              "description": "Applies an u64 logical right shift by 65 and checks Wax's masked shift count rule.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 268
            }
          ]
        },
        {
          "id": "traps",
          "label": "Defined integer traps",
          "description": "Checks division and remainder by zero plus signed minimum divided or remaindered by negative one. Every backend must report the same named panic.",
          "probes": [
            {
              "name": "panic.div.i32.by-zero",
              "value": "divide_by_zero",
              "description": "Runs i32 division with a zero divisor and requires the same named panic on every backend.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 358
            },
            {
              "name": "panic.div.i32.min-by-neg1",
              "value": "integer_overflow",
              "description": "Runs i32 division with the signed minimum value and negative one and requires the same named panic on every backend.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 350
            },
            {
              "name": "panic.div.i64.by-zero",
              "value": "divide_by_zero",
              "description": "Runs i64 division with a zero divisor and requires the same named panic on every backend.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 362
            },
            {
              "name": "panic.div.i64.min-by-neg1",
              "value": "integer_overflow",
              "description": "Runs i64 division with the signed minimum value and negative one and requires the same named panic on every backend.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 354
            },
            {
              "name": "panic.rem.i32.by-zero",
              "value": "divide_by_zero",
              "description": "Runs i32 remainder with a zero divisor and requires the same named panic on every backend.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 370
            },
            {
              "name": "panic.rem.i32.min-by-neg1",
              "value": "integer_overflow",
              "description": "Runs i32 remainder with the signed minimum value and negative one and requires the same named panic on every backend.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 366
            },
            {
              "name": "panic.rem.i64.by-zero",
              "value": "divide_by_zero",
              "description": "Runs i64 remainder with a zero divisor and requires the same named panic on every backend.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 378
            },
            {
              "name": "panic.rem.i64.min-by-neg1",
              "value": "integer_overflow",
              "description": "Runs i64 remainder with the signed minimum value and negative one and requires the same named panic on every backend.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 374
            }
          ]
        },
        {
          "id": "subnormal",
          "label": "Subnormal limits and rounding",
          "description": "Checks gradual underflow, ties to even, signed underflow, normal and subnormal limits, and exact float width conversion at the smallest representable values.",
          "probes": [
            {
              "name": "subnormal.convert.f32-min.to-f64",
              "value": "36A0000000000000",
              "description": "Promotes the minimum f32 subnormal to f64 and checks its exact widened representation.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 330
            },
            {
              "name": "subnormal.convert.f64-f32-min.to-f32",
              "value": "00000001",
              "description": "Demotes the exact f64 representation of the minimum f32 subnormal and checks that the smallest f32 value survives.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 333
            },
            {
              "name": "subnormal.convert.f64-min.to-f32",
              "value": "00000000",
              "description": "Demotes the minimum f64 subnormal to f32 and checks that it underflows to zero.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 331
            },
            {
              "name": "subnormal.f32.max.plus.min",
              "value": "00800000",
              "description": "For f32, adds the minimum subnormal to the maximum subnormal, carrying into the minimum normal.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 318
            },
            {
              "name": "subnormal.f32.min.times.half",
              "value": "00000000",
              "description": "For f32, halves the minimum subnormal, testing ties to even underflow to zero.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 316
            },
            {
              "name": "subnormal.f32.negative-min.times.half",
              "value": "80000000",
              "description": "For f32, halves the negative minimum subnormal, testing the sign of underflowed zero.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 321
            },
            {
              "name": "subnormal.f32.normal.minus.min",
              "value": "007FFFFF",
              "description": "For f32, subtracts the minimum subnormal from the minimum normal.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 319
            },
            {
              "name": "subnormal.f32.normal.times.half",
              "value": "00400000",
              "description": "For f32, halves the minimum normal into the subnormal range.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 320
            },
            {
              "name": "subnormal.f32.three-min.times.half",
              "value": "00000002",
              "description": "For f32, halves three minimum subnormals, testing ties to even rounding upward.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 317
            },
            {
              "name": "subnormal.f64.max.plus.min",
              "value": "0010000000000000",
              "description": "For f64, adds the minimum subnormal to the maximum subnormal, carrying into the minimum normal.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 325
            },
            {
              "name": "subnormal.f64.min.times.half",
              "value": "0000000000000000",
              "description": "For f64, halves the minimum subnormal, testing ties to even underflow to zero.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 323
            },
            {
              "name": "subnormal.f64.negative-min.times.half",
              "value": "8000000000000000",
              "description": "For f64, halves the negative minimum subnormal, testing the sign of underflowed zero.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 328
            },
            {
              "name": "subnormal.f64.normal.minus.min",
              "value": "000FFFFFFFFFFFFF",
              "description": "For f64, subtracts the minimum subnormal from the minimum normal.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 326
            },
            {
              "name": "subnormal.f64.normal.times.half",
              "value": "0008000000000000",
              "description": "For f64, halves the minimum normal into the subnormal range.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 327
            },
            {
              "name": "subnormal.f64.three-min.times.half",
              "value": "0000000000000002",
              "description": "For f64, halves three minimum subnormals, testing ties to even rounding upward.",
              "sourcePath": "Tools/Determinism/Probe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/Probe/Main.wax",
              "sourceLine": 324
            }
          ]
        }
      ]
    },
    {
      "id": "machine",
      "label": "Machine code digest",
      "description": "One digest combines hundreds of scalar operations that are also run through the other backends. Matching it checks the machine code path without repeating the full list above.",
      "probeCount": 1,
      "resultsDownload": "/evidence/determinism/expected-machine.txt",
      "resultsFormat": "name comma-separated-values",
      "expectationSourcePath": "Tools/Determinism/expected-machine-probes.txt",
      "sourcePath": "Tools/Determinism/MachineProbe/Src/Main.wax",
      "sourceDownload": "/evidence/determinism/source/MachineProbe/Main.wax",
      "artifacts": [
        {
          "leg": "machine-native",
          "legLabel": "Wax machine code",
          "platform": "linux-x64",
          "compiler": null,
          "probeCount": 1,
          "download": "/evidence/determinism/artifacts/machine/determinism-machine-native-linux-x64.txt",
          "sourcePath": "Tools/Determinism/Reference/machine/determinism-machine-native-linux-x64.txt"
        },
        {
          "leg": "machine-native",
          "legLabel": "Wax machine code",
          "platform": "macos-arm64",
          "compiler": "waxc 0.0.0-dev (fd90f3eab400391804bc9f359acd7908e752807e)",
          "probeCount": 1,
          "download": "/evidence/determinism/artifacts/machine/determinism-machine-native-macos-arm64.txt",
          "sourcePath": "Tools/Determinism/Reference/machine/determinism-machine-native-macos-arm64.txt"
        },
        {
          "leg": "native",
          "legLabel": "C · instant tier",
          "platform": "macos-arm64",
          "compiler": "waxc 0.0.0-dev (fd90f3eab400391804bc9f359acd7908e752807e)",
          "probeCount": 1,
          "download": "/evidence/determinism/artifacts/machine/determinism-native-macos-arm64.txt",
          "sourcePath": "Tools/Determinism/Reference/machine/determinism-native-macos-arm64.txt"
        },
        {
          "leg": "native-optimized",
          "legLabel": "C / host Clang · optimized tier",
          "platform": "macos-arm64",
          "compiler": "waxc 0.0.0-dev (fd90f3eab400391804bc9f359acd7908e752807e)",
          "probeCount": 1,
          "download": "/evidence/determinism/artifacts/machine/determinism-native-optimized-macos-arm64.txt",
          "sourcePath": "Tools/Determinism/Reference/machine/determinism-native-optimized-macos-arm64.txt"
        },
        {
          "leg": "wasm",
          "legLabel": "Wasm / Binaryen",
          "platform": "macos-arm64",
          "compiler": "waxc 0.0.0-dev (fd90f3eab400391804bc9f359acd7908e752807e)",
          "probeCount": 1,
          "download": "/evidence/determinism/artifacts/machine/determinism-wasm-macos-arm64.txt",
          "sourcePath": "Tools/Determinism/Reference/machine/determinism-wasm-macos-arm64.txt"
        },
        {
          "leg": "native",
          "legLabel": "C · instant tier",
          "platform": "windows-arm64",
          "compiler": "waxc 0.0.0-dev (729949e0f38d05dbf6693e3e70d1ea22b161568a)",
          "probeCount": 1,
          "download": "/evidence/determinism/artifacts/machine/determinism-native-windows-arm64.txt",
          "sourcePath": "Tools/Determinism/Reference/machine/determinism-native-windows-arm64.txt"
        },
        {
          "leg": "native-optimized",
          "legLabel": "C / host Clang · optimized tier",
          "platform": "windows-arm64",
          "compiler": "waxc 0.0.0-dev (729949e0f38d05dbf6693e3e70d1ea22b161568a)",
          "probeCount": 1,
          "download": "/evidence/determinism/artifacts/machine/determinism-native-optimized-windows-arm64.txt",
          "sourcePath": "Tools/Determinism/Reference/machine/determinism-native-optimized-windows-arm64.txt"
        },
        {
          "leg": "native",
          "legLabel": "C · instant tier",
          "platform": "windows-x64",
          "compiler": "waxc 0.0.0-dev (729949e0f38d05dbf6693e3e70d1ea22b161568a)",
          "probeCount": 1,
          "download": "/evidence/determinism/artifacts/machine/determinism-native-windows-x64.txt",
          "sourcePath": "Tools/Determinism/Reference/machine/determinism-native-windows-x64.txt"
        },
        {
          "leg": "native-optimized",
          "legLabel": "C / host Clang · optimized tier",
          "platform": "windows-x64",
          "compiler": "waxc 0.0.0-dev (729949e0f38d05dbf6693e3e70d1ea22b161568a)",
          "probeCount": 1,
          "download": "/evidence/determinism/artifacts/machine/determinism-native-optimized-windows-x64.txt",
          "sourcePath": "Tools/Determinism/Reference/machine/determinism-native-optimized-windows-x64.txt"
        }
      ],
      "families": [
        {
          "id": "machine-scalar",
          "label": "Machine scalar digest",
          "description": "One digest combines hundreds of scalar operations that are also run through the other backends. Matching it checks the machine code path without repeating the full list above.",
          "probes": [
            {
              "name": "machine.scalar.digest",
              "value": "96BF94EB",
              "description": "Hashes hundreds of scalar reinterpretations plus NaN, subnormal, signed underflow, and contraction sensitive operations shared by every executable backend.",
              "sourcePath": "Tools/Determinism/MachineProbe/Src/Main.wax",
              "sourceDownload": "/evidence/determinism/source/MachineProbe/Main.wax",
              "sourceLine": 44
            }
          ]
        }
      ]
    }
  ]
}
