{
  "schemaVersion": 2,
  "labId": "tsl-procedural-pbr",
  "bundleId": "tsl-procedural-pbr:release:f09b1846e6537e59:v2",
  "bundleKind": "release-bundle",
  "publishable": true,
  "skill": "threejs-procedural-materials",
  "threeRevision": "0.185.1",
  "sourceClosureHash": "sha256:f09b1846e6537e593e648751ef90f6d662afa7232eabc72806789510e70d95d5",
  "buildRevision": "sha256:981d7e0c1bf39519df3b103f1773422c056c286e088dc9e5206daed9e28fbd21",
  "route": {
    "path": "/demos/tsl-procedural-pbr/",
    "scenario": "pbr-identity",
    "mechanism": "pbr-identity",
    "mode": "final",
    "tier": "ultra",
    "camera": "design",
    "seed": "0x00000001",
    "timeSeconds": {
      "value": 0,
      "unit": "seconds",
      "label": "Measured",
      "source": "capture locked state"
    },
    "stateDigest": "sha256:d0488b841637b8aaf5bc888ca5f24e4f362d48bb5ac3eb6656b14e002f24e7e6"
  },
  "limitations": [
    {
      "id": "visual-review-pending",
      "status": "RESOLVED",
      "statement": "Offline visual review completed and approved the captured release images at 2026-07-13T15:39:27.394Z.",
      "affectedClaims": [
        "visualCorrectness"
      ]
    },
    {
      "id": "hardware-performance-not-claimed",
      "status": "ACTIVE",
      "statement": "Correctness capture does not claim named-adapter GPU timestamps or presentation cadence.",
      "affectedClaims": [
        "performanceCompliance",
        "gpuAttribution"
      ]
    },
    {
      "id": "opaque-renderer-residency-not-claimed",
      "status": "ACTIVE",
      "statement": "Exact Three.js renderer-internal pipeline and cache byte residency is unavailable; lifecycle PASS covers lab-owned resources and observed renderer state only.",
      "affectedClaims": [
        "lifecycleStability"
      ]
    }
  ],
  "claimVerdicts": {
    "visualCorrectness": "PASS",
    "mechanismCorrectness": "PASS",
    "performanceCompliance": "NOT_CLAIMED",
    "gpuAttribution": "NOT_CLAIMED",
    "lifecycleStability": "PASS",
    "visualError": "PASS"
  },
  "captureSessions": [
    {
      "sessionId": "tsl-procedural-pbr:correctness:f09b1846e6537e59",
      "profile": "correctness",
      "automationSurface": "playwright-headless-chromium",
      "adapterClass": "hardware",
      "adapterIdentity": {
        "kind": "gpu-adapter",
        "digest": "sha256:f7062968b59cc56ef8da7aafde9063dda7bece3a871fb4a789d0269ae1f0ff1a"
      },
      "deviceIdentity": {
        "kind": "gpu-device",
        "digest": "sha256:75a05ac328d9830b5c9bb6f5dcd786056f455ecbb6fe2cc136f858c4c3ae507c"
      },
      "browserIdentity": {
        "kind": "browser",
        "digest": "sha256:01e605bcdcd80654316b85cf316c1d217ffe7784cb54e81708827078a3bb48f7"
      },
      "osIdentity": {
        "kind": "operating-system",
        "digest": "sha256:f802955e2518e604a0d6a74d8c216cf6cf9b63b5aed4e4b4ab094dbc09e21d74"
      },
      "refreshIdentity": {
        "kind": "display-refresh",
        "digest": "sha256:7ace0993f284d569c196126de24436b3ee8b3c249bced873953dc0fd31269cc7"
      },
      "colorIdentity": {
        "kind": "color-pipeline",
        "digest": "sha256:5a10982ff35aa5e2c8ff77990b40193bc42e65238f09b96a09552869ae8a160a"
      },
      "limitationsDigest": "sha256:1b2c9672bbf6b7d31acfd12bd2445b993a2adcc177b27d56d25003995243d4cc",
      "threeRevision": "0.185.1",
      "sourceClosureHash": "sha256:f09b1846e6537e593e648751ef90f6d662afa7232eabc72806789510e70d95d5",
      "buildRevision": "sha256:981d7e0c1bf39519df3b103f1773422c056c286e088dc9e5206daed9e28fbd21",
      "startedAt": "2026-07-13T15:07:02.080Z",
      "finishedAt": "2026-07-13T15:07:13.890Z",
      "routePath": "/demos/tsl-procedural-pbr/",
      "routeDigest": "sha256:d45662761999ce032917d71d9b719bea24c6e1f4c3f61c76af5e1a3f25968cf7",
      "stateDigest": "sha256:d0488b841637b8aaf5bc888ca5f24e4f362d48bb5ac3eb6656b14e002f24e7e6",
      "document": {
        "kind": "capture-session-document",
        "path": "capture-session.json",
        "sha256": "sha256:c4199b2fa1f44e5d4d1a0d05a4c12fe1397fd26698daca79518767fe430137d8",
        "byteLength": 279600
      },
      "writeLedger": {
        "kind": "capture-session-write-ledger",
        "path": "capture-write-ledger.json",
        "sha256": "sha256:3c31834f26693bd53341d518775a8196774d58815face91d5f86c8c6c48acf0e",
        "byteLength": 23134
      },
      "rendererInitialized": true,
      "isWebGPUBackend": true,
      "timestampQuerySupported": false
    }
  ],
  "files": [
    {
      "path": "visual-contract.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:440dea1a89fc0d43845b7f6842952677a624f94ff38cf7ae2c15996523cc6d2c",
      "byteLength": 867
    },
    {
      "path": "evidence-manifest.json",
      "status": "self-excluded",
      "kind": "evidence-manifest",
      "reason": "The evidence manifest cannot bind its own final serialized bytes."
    },
    {
      "path": "renderer-info.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:ce98dc437ff1e48283efdd61f5f63f5c0cc95934b77e56c419199c8db5c3b599",
      "byteLength": 466
    },
    {
      "path": "pipeline-graph.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:43f7e9258c5c7a59829f88dd93a585e93d9e8ab9672e0d5c0aae05fa59d5ebaa",
      "byteLength": 860
    },
    {
      "path": "performance-envelope.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:62e1abb57e217febce5044e04788aae2967a749c9dd5c70432f279fc3c45e507",
      "byteLength": 634
    },
    {
      "path": "frame-trace.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:61e2604f805c8759b4999cc2b6ef8e27ea9446acb8902d2b4f38c58f787479e7",
      "byteLength": 280
    },
    {
      "path": "quality-governor.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:4b53f94ed8b227a23cfd1de423d2eb3f3574128c44b66f1967a03f6b77c72f96",
      "byteLength": 256
    },
    {
      "path": "render-targets.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:445435b9c320ac52c18403dc5b0d74e381f9ddb02edb851f9a19d9e047a13bfb",
      "byteLength": 20899
    },
    {
      "path": "storage-resources.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:579719a4f114bada5939fff4c4a645ac178e5b40a8f18de1cfb9532f02a92486",
      "byteLength": 333
    },
    {
      "path": "resident-resources.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:eb7395a4a2d036edb5e1caf04e66aa940a43f15a991ffa9418ea6b27a68f1077",
      "byteLength": 1632
    },
    {
      "path": "bandwidth-model.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:e921c52741c0a3b03c5a02ac0b1337262a182750cd76a01d10c49323c047a034",
      "byteLength": 956
    },
    {
      "path": "visual-errors.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:f4b2464fc52bef50bc4fdd264442c77fe07b680905d615eb5be53d0d84a8ff9c",
      "byteLength": 752
    },
    {
      "path": "leak-loop.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:62ce9b33f2bff4de38c67e2a0dd32141c35d2f2e6ba659a3bcc4dcb70b857a6f",
      "byteLength": 131864
    },
    {
      "path": "mechanism-metrics.json",
      "status": "captured",
      "kind": "normative-json",
      "sha256": "sha256:bde3b79d56a626a69eaf306820a608f839ba1b9aeb419fb5bd2bca12ee8cf0a5",
      "byteLength": 8700
    },
    {
      "path": "capture-session.json",
      "status": "captured",
      "kind": "capture-session-document",
      "sha256": "sha256:c4199b2fa1f44e5d4d1a0d05a4c12fe1397fd26698daca79518767fe430137d8",
      "byteLength": 279600
    },
    {
      "path": "capture-write-ledger.json",
      "status": "captured",
      "kind": "capture-session-write-ledger",
      "sha256": "sha256:3c31834f26693bd53341d518775a8196774d58815face91d5f86c8c6c48acf0e",
      "byteLength": 23134
    }
  ],
  "images": [
    {
      "path": "final.design.png",
      "status": "captured",
      "kind": "direct-capture",
      "role": "final.design",
      "mediaType": "image/png",
      "sha256": "sha256:9637f8dacb47b7a475db6d26515c6603fddaa1fc72d01c0b1e13abbcfae677a6",
      "byteLength": 255243
    },
    {
      "path": "no-post.design.png",
      "status": "captured",
      "kind": "direct-capture",
      "role": "no-post.design",
      "mediaType": "image/png",
      "sha256": "sha256:f0762b28ed769c264000fb4f0903ab3fcb7d9914718c347977ef25bfce0c5cf3",
      "byteLength": 153308
    },
    {
      "path": "diagnostics.mosaic.png",
      "status": "captured",
      "kind": "direct-capture",
      "role": "diagnostics.mosaic",
      "mediaType": "image/png",
      "sha256": "sha256:174a7c499e8d86ac520dd4873a3e82e5b8baf186b18dc3749a9a91b14e809e44",
      "byteLength": 86959
    },
    {
      "path": "camera.near.png",
      "status": "captured",
      "kind": "direct-capture",
      "role": "camera.near",
      "mediaType": "image/png",
      "sha256": "sha256:7f017862900fe52e68f71598638ab2d2a311f6e78cb28d9a29f1f3c32970174b",
      "byteLength": 325754
    },
    {
      "path": "camera.design.png",
      "status": "captured",
      "kind": "direct-capture",
      "role": "camera.design",
      "mediaType": "image/png",
      "sha256": "sha256:9637f8dacb47b7a475db6d26515c6603fddaa1fc72d01c0b1e13abbcfae677a6",
      "byteLength": 255243
    },
    {
      "path": "camera.far.png",
      "status": "captured",
      "kind": "direct-capture",
      "role": "camera.far",
      "mediaType": "image/png",
      "sha256": "sha256:8471d004dd829ca687245879d482f60bcaa3261005ac7c11b5f2ce749e77daa0",
      "byteLength": 168292
    },
    {
      "path": "seed-0001.final.png",
      "status": "captured",
      "kind": "direct-capture",
      "role": "seed-0001.final",
      "mediaType": "image/png",
      "sha256": "sha256:9637f8dacb47b7a475db6d26515c6603fddaa1fc72d01c0b1e13abbcfae677a6",
      "byteLength": 255243
    },
    {
      "path": "seed-9e3779b9.final.png",
      "status": "captured",
      "kind": "direct-capture",
      "role": "seed-9e3779b9.final",
      "mediaType": "image/png",
      "sha256": "sha256:a144afaf904afbba15ca0334aa42a235d56ac7ae7715b4141e89307f6c6731cf",
      "byteLength": 251910
    },
    {
      "path": "temporal.t000.png",
      "status": "captured",
      "kind": "direct-capture",
      "role": "temporal.t000",
      "mediaType": "image/png",
      "sha256": "sha256:9637f8dacb47b7a475db6d26515c6603fddaa1fc72d01c0b1e13abbcfae677a6",
      "byteLength": 255243
    },
    {
      "path": "temporal.t001.png",
      "status": "captured",
      "kind": "direct-capture",
      "role": "temporal.t001",
      "mediaType": "image/png",
      "sha256": "sha256:8a3483cecb4357bcc0d2af9ab8bedf937d6a2b91b2f0a0eb8443af67ea65fdc9",
      "byteLength": 253359
    }
  ],
  "promotion": {
    "status": "APPROVED",
    "binding": {
      "manifestCoreDigest": "sha256:cfd203e8e5b17346dc4dd6bc8c26a74137a465630d986c5b4170f923eb0a9295",
      "sourceClosureHash": "sha256:f09b1846e6537e593e648751ef90f6d662afa7232eabc72806789510e70d95d5",
      "buildRevision": "sha256:981d7e0c1bf39519df3b103f1773422c056c286e088dc9e5206daed9e28fbd21",
      "threeRevision": "0.185.1",
      "route": {
        "path": "/demos/tsl-procedural-pbr/",
        "scenario": "pbr-identity",
        "mechanism": "pbr-identity",
        "mode": "final",
        "tier": "ultra",
        "camera": "design",
        "seed": "0x00000001",
        "timeSeconds": {
          "value": 0,
          "unit": "seconds",
          "label": "Measured",
          "source": "capture locked state"
        },
        "stateDigest": "sha256:d0488b841637b8aaf5bc888ca5f24e4f362d48bb5ac3eb6656b14e002f24e7e6"
      },
      "routeDigest": "sha256:d45662761999ce032917d71d9b719bea24c6e1f4c3f61c76af5e1a3f25968cf7",
      "limitations": [
        {
          "id": "visual-review-pending",
          "status": "RESOLVED",
          "statement": "Offline visual review completed and approved the captured release images at 2026-07-13T15:39:27.394Z.",
          "affectedClaims": [
            "visualCorrectness"
          ]
        },
        {
          "id": "hardware-performance-not-claimed",
          "status": "ACTIVE",
          "statement": "Correctness capture does not claim named-adapter GPU timestamps or presentation cadence.",
          "affectedClaims": [
            "performanceCompliance",
            "gpuAttribution"
          ]
        },
        {
          "id": "opaque-renderer-residency-not-claimed",
          "status": "ACTIVE",
          "statement": "Exact Three.js renderer-internal pipeline and cache byte residency is unavailable; lifecycle PASS covers lab-owned resources and observed renderer state only.",
          "affectedClaims": [
            "lifecycleStability"
          ]
        }
      ],
      "limitationsDigest": "sha256:d6aa7888fb9178bb8563d72cccfbe77387f8cb281bb57ae69f41e098216ae030",
      "claimVerdicts": {
        "visualCorrectness": "PASS",
        "mechanismCorrectness": "PASS",
        "performanceCompliance": "NOT_CLAIMED",
        "gpuAttribution": "NOT_CLAIMED",
        "lifecycleStability": "PASS",
        "visualError": "PASS"
      },
      "claimVerdictsDigest": "sha256:82291e1a38d836b96232fce2485bf5e70fdb940c7fd176065645a3d57f52267a",
      "captureSessions": [
        {
          "sessionId": "tsl-procedural-pbr:correctness:f09b1846e6537e59",
          "profile": "correctness",
          "automationSurface": "playwright-headless-chromium",
          "adapterClass": "hardware",
          "adapterIdentity": {
            "kind": "gpu-adapter",
            "digest": "sha256:f7062968b59cc56ef8da7aafde9063dda7bece3a871fb4a789d0269ae1f0ff1a"
          },
          "deviceIdentity": {
            "kind": "gpu-device",
            "digest": "sha256:75a05ac328d9830b5c9bb6f5dcd786056f455ecbb6fe2cc136f858c4c3ae507c"
          },
          "browserIdentity": {
            "kind": "browser",
            "digest": "sha256:01e605bcdcd80654316b85cf316c1d217ffe7784cb54e81708827078a3bb48f7"
          },
          "osIdentity": {
            "kind": "operating-system",
            "digest": "sha256:f802955e2518e604a0d6a74d8c216cf6cf9b63b5aed4e4b4ab094dbc09e21d74"
          },
          "refreshIdentity": {
            "kind": "display-refresh",
            "digest": "sha256:7ace0993f284d569c196126de24436b3ee8b3c249bced873953dc0fd31269cc7"
          },
          "colorIdentity": {
            "kind": "color-pipeline",
            "digest": "sha256:5a10982ff35aa5e2c8ff77990b40193bc42e65238f09b96a09552869ae8a160a"
          },
          "limitationsDigest": "sha256:1b2c9672bbf6b7d31acfd12bd2445b993a2adcc177b27d56d25003995243d4cc",
          "threeRevision": "0.185.1",
          "sourceClosureHash": "sha256:f09b1846e6537e593e648751ef90f6d662afa7232eabc72806789510e70d95d5",
          "buildRevision": "sha256:981d7e0c1bf39519df3b103f1773422c056c286e088dc9e5206daed9e28fbd21",
          "startedAt": "2026-07-13T15:07:02.080Z",
          "finishedAt": "2026-07-13T15:07:13.890Z",
          "routePath": "/demos/tsl-procedural-pbr/",
          "routeDigest": "sha256:d45662761999ce032917d71d9b719bea24c6e1f4c3f61c76af5e1a3f25968cf7",
          "stateDigest": "sha256:d0488b841637b8aaf5bc888ca5f24e4f362d48bb5ac3eb6656b14e002f24e7e6",
          "document": {
            "kind": "capture-session-document",
            "path": "capture-session.json",
            "sha256": "sha256:c4199b2fa1f44e5d4d1a0d05a4c12fe1397fd26698daca79518767fe430137d8",
            "byteLength": 279600
          },
          "writeLedger": {
            "kind": "capture-session-write-ledger",
            "path": "capture-write-ledger.json",
            "sha256": "sha256:3c31834f26693bd53341d518775a8196774d58815face91d5f86c8c6c48acf0e",
            "byteLength": 23134
          },
          "rendererInitialized": true,
          "isWebGPUBackend": true,
          "timestampQuerySupported": false
        }
      ],
      "captureSessionSetDigest": "sha256:2ed41529cae9151d7fb5ade3ba10c1134b1f69ece3150bda82fdfb2983d8d3f3",
      "artifactLedgerDigest": "sha256:d49157631a31a8ddf4ae850de672a8e9f62290687a81ec32ec8ed0a2d0b9cff5",
      "imageLedgerDigest": "sha256:f84879878cc6b3548d6211c39c83e8111e3e0a1cd0abd6a951dd9c11373c6eb5",
      "routeSet": [
        {
          "path": "/demos/tsl-procedural-pbr/",
          "scenario": "pbr-identity",
          "mechanism": "pbr-identity",
          "mode": "final",
          "tier": "ultra",
          "camera": "design",
          "seed": "0x00000001",
          "timeSeconds": {
            "value": 0,
            "unit": "seconds",
            "label": "Measured",
            "source": "capture locked state"
          },
          "stateDigest": "sha256:d0488b841637b8aaf5bc888ca5f24e4f362d48bb5ac3eb6656b14e002f24e7e6"
        }
      ],
      "routeSetDigest": "sha256:d214adbbd82d82a442abf26c74533538cb7d88727b1952b3d3c445093f7268dd"
    },
    "bindingDigest": "sha256:1cc1c3069935208d9228d8ae3757f36a8928d238cde086f4f467a1b163cf257f",
    "visualSignoff": {
      "status": "APPROVED",
      "candidateBinding": {
        "manifestCoreDigest": "sha256:9944d5458eda652a4095e4518f7b5606aaa10fd29d26cd86d053b86dc3f96c62",
        "sourceClosureHash": "sha256:f09b1846e6537e593e648751ef90f6d662afa7232eabc72806789510e70d95d5",
        "buildRevision": "sha256:981d7e0c1bf39519df3b103f1773422c056c286e088dc9e5206daed9e28fbd21",
        "threeRevision": "0.185.1",
        "route": {
          "path": "/demos/tsl-procedural-pbr/",
          "scenario": "pbr-identity",
          "mechanism": "pbr-identity",
          "mode": "final",
          "tier": "ultra",
          "camera": "design",
          "seed": "0x00000001",
          "timeSeconds": {
            "value": 0,
            "unit": "seconds",
            "label": "Measured",
            "source": "capture locked state"
          },
          "stateDigest": "sha256:d0488b841637b8aaf5bc888ca5f24e4f362d48bb5ac3eb6656b14e002f24e7e6"
        },
        "routeDigest": "sha256:d45662761999ce032917d71d9b719bea24c6e1f4c3f61c76af5e1a3f25968cf7",
        "limitations": [
          {
            "id": "visual-review-pending",
            "status": "ACTIVE",
            "statement": "Raw correctness images require offline visual signoff before release promotion.",
            "affectedClaims": [
              "visualCorrectness"
            ]
          },
          {
            "id": "hardware-performance-not-claimed",
            "status": "ACTIVE",
            "statement": "Correctness capture does not claim named-adapter GPU timestamps or presentation cadence.",
            "affectedClaims": [
              "performanceCompliance",
              "gpuAttribution"
            ]
          },
          {
            "id": "opaque-renderer-residency-not-claimed",
            "status": "ACTIVE",
            "statement": "Exact Three.js renderer-internal pipeline and cache byte residency is unavailable; lifecycle PASS covers lab-owned resources and observed renderer state only.",
            "affectedClaims": [
              "lifecycleStability"
            ]
          }
        ],
        "limitationsDigest": "sha256:1b2c9672bbf6b7d31acfd12bd2445b993a2adcc177b27d56d25003995243d4cc",
        "claimVerdicts": {
          "visualCorrectness": "PASS",
          "mechanismCorrectness": "PASS",
          "performanceCompliance": "NOT_CLAIMED",
          "gpuAttribution": "NOT_CLAIMED",
          "lifecycleStability": "PASS",
          "visualError": "PASS"
        },
        "claimVerdictsDigest": "sha256:82291e1a38d836b96232fce2485bf5e70fdb940c7fd176065645a3d57f52267a",
        "captureSessions": [
          {
            "sessionId": "tsl-procedural-pbr:correctness:f09b1846e6537e59",
            "profile": "correctness",
            "automationSurface": "playwright-headless-chromium",
            "adapterClass": "hardware",
            "adapterIdentity": {
              "kind": "gpu-adapter",
              "digest": "sha256:f7062968b59cc56ef8da7aafde9063dda7bece3a871fb4a789d0269ae1f0ff1a"
            },
            "deviceIdentity": {
              "kind": "gpu-device",
              "digest": "sha256:75a05ac328d9830b5c9bb6f5dcd786056f455ecbb6fe2cc136f858c4c3ae507c"
            },
            "browserIdentity": {
              "kind": "browser",
              "digest": "sha256:01e605bcdcd80654316b85cf316c1d217ffe7784cb54e81708827078a3bb48f7"
            },
            "osIdentity": {
              "kind": "operating-system",
              "digest": "sha256:f802955e2518e604a0d6a74d8c216cf6cf9b63b5aed4e4b4ab094dbc09e21d74"
            },
            "refreshIdentity": {
              "kind": "display-refresh",
              "digest": "sha256:7ace0993f284d569c196126de24436b3ee8b3c249bced873953dc0fd31269cc7"
            },
            "colorIdentity": {
              "kind": "color-pipeline",
              "digest": "sha256:5a10982ff35aa5e2c8ff77990b40193bc42e65238f09b96a09552869ae8a160a"
            },
            "limitationsDigest": "sha256:1b2c9672bbf6b7d31acfd12bd2445b993a2adcc177b27d56d25003995243d4cc",
            "threeRevision": "0.185.1",
            "sourceClosureHash": "sha256:f09b1846e6537e593e648751ef90f6d662afa7232eabc72806789510e70d95d5",
            "buildRevision": "sha256:981d7e0c1bf39519df3b103f1773422c056c286e088dc9e5206daed9e28fbd21",
            "startedAt": "2026-07-13T15:07:02.080Z",
            "finishedAt": "2026-07-13T15:07:13.890Z",
            "routePath": "/demos/tsl-procedural-pbr/",
            "routeDigest": "sha256:d45662761999ce032917d71d9b719bea24c6e1f4c3f61c76af5e1a3f25968cf7",
            "stateDigest": "sha256:d0488b841637b8aaf5bc888ca5f24e4f362d48bb5ac3eb6656b14e002f24e7e6",
            "document": {
              "kind": "capture-session-document",
              "path": "capture-session.json",
              "sha256": "sha256:c4199b2fa1f44e5d4d1a0d05a4c12fe1397fd26698daca79518767fe430137d8",
              "byteLength": 279600
            },
            "writeLedger": {
              "kind": "capture-session-write-ledger",
              "path": "capture-write-ledger.json",
              "sha256": "sha256:3c31834f26693bd53341d518775a8196774d58815face91d5f86c8c6c48acf0e",
              "byteLength": 23134
            },
            "rendererInitialized": true,
            "isWebGPUBackend": true,
            "timestampQuerySupported": false
          }
        ],
        "captureSessionSetDigest": "sha256:2ed41529cae9151d7fb5ade3ba10c1134b1f69ece3150bda82fdfb2983d8d3f3",
        "artifactLedgerDigest": "sha256:d49157631a31a8ddf4ae850de672a8e9f62290687a81ec32ec8ed0a2d0b9cff5",
        "imageLedgerDigest": "sha256:f84879878cc6b3548d6211c39c83e8111e3e0a1cd0abd6a951dd9c11373c6eb5",
        "routeSet": [
          {
            "path": "/demos/tsl-procedural-pbr/",
            "scenario": "pbr-identity",
            "mechanism": "pbr-identity",
            "mode": "final",
            "tier": "ultra",
            "camera": "design",
            "seed": "0x00000001",
            "timeSeconds": {
              "value": 0,
              "unit": "seconds",
              "label": "Measured",
              "source": "capture locked state"
            },
            "stateDigest": "sha256:d0488b841637b8aaf5bc888ca5f24e4f362d48bb5ac3eb6656b14e002f24e7e6"
          }
        ],
        "routeSetDigest": "sha256:d214adbbd82d82a442abf26c74533538cb7d88727b1952b3d3c445093f7268dd"
      },
      "candidateBindingDigest": "sha256:823aa05989e32202c8a74b4b14cf9e54e468ac00d9aa77621778e5c4de178706",
      "reviewer": "evidence-11-15 offline visual inspection",
      "reviewedAt": "2026-07-13T15:39:27.394Z",
      "reviewDigest": "sha256:9cbcba20ab5db34c5a586a4b4cf14294f5b2289d009e8a113084fb96a6498378",
      "reviewedImages": [
        "final.design.png",
        "no-post.design.png",
        "diagnostics.mosaic.png",
        "camera.near.png",
        "camera.design.png",
        "camera.far.png",
        "seed-0001.final.png",
        "seed-9e3779b9.final.png",
        "temporal.t000.png",
        "temporal.t001.png"
      ],
      "notes": [
        "Direct file inspection covered retained correctness images bound by the candidate.",
        "Final presentation and diagnostics are retained native-WebGPU readbacks from the lab capture session.",
        "Performance and GPU attribution remain NOT_CLAIMED; lifecycle PASS is backed by a 50-cycle dispose soak.",
        "Hardware timing was not invented for this promotion."
      ]
    }
  },
  "routeSet": [
    {
      "path": "/demos/tsl-procedural-pbr/",
      "scenario": "pbr-identity",
      "mechanism": "pbr-identity",
      "mode": "final",
      "tier": "ultra",
      "camera": "design",
      "seed": "0x00000001",
      "timeSeconds": {
        "value": 0,
        "unit": "seconds",
        "label": "Measured",
        "source": "capture locked state"
      },
      "stateDigest": "sha256:d0488b841637b8aaf5bc888ca5f24e4f362d48bb5ac3eb6656b14e002f24e7e6"
    }
  ]
}
