accepted

WebGPU Image Pipeline

This report separates published implementation state from accepted evidence. Every value below comes from the schema-v2 registry, the emitted source manifest, or promoted same-lab artifacts.

Lab id
webgpu-image-pipeline
Kind
Canonical Lab
Owning skill
Image Pipeline
Execution
rendering
Three.js
0.185.1
Source hash
sha256:f55e0e6af55f99dffc4c5160bdecf74eb36a5d1daa196b7fa0366810565d348b
Published bundle hash
sha256:686d5b40e34a398c515fac8158c2e1e951855959d75f5d16105d9ccfa958b53b
Build revision
sha256:d929feed6bb69df4ba0bca7a58c723f6c257d003c20d1e9417d25ccb25e4ecf9
Renderer
WebGPURenderer
Backend
WebGPUBackend
Evidence contract
v2
Tracked release bundle
Present

Claim verdicts

visualCorrectnessPASS
mechanismCorrectnessPASS
performanceComplianceINSUFFICIENT_EVIDENCE
gpuAttributionINSUFFICIENT_EVIDENCE
lifecycleStabilityINSUFFICIENT_EVIDENCE

Promoted same-lab media

Required capability and runtime proof

Capabilities

native-webgpuaccepted

renderer-info.json isWebGPUBackend=true; mechanism-metrics WebGPUBackend r185 v2 bundle.

timestamp-queryincomplete

required for performance claims; correctness capture does not accept current-adapter timestamps. Status incomplete (not accepted).

Runtime proof

renderer-initaccepted

canonical capture initializes WebGPURenderer; renderer-info.json records native backend.

mrt-readbackaccepted

validate:artifacts passes normal/emissive/velocity/final RT readbacks in webgpu-image-pipeline-v2.

temporal-resetaccepted

temporal.history / after-reset readbacks validated; temporal-reset proof in mechanism-metrics path.

current-adapter-timingincomplete

Current-adapter GPU timestamps remain INSUFFICIENT_EVIDENCE; correctness capture does not claim performance timing.

backend-is-webgpuaccepted

Accepted publishable release-bundle covers backend-is-webgpu for webgpu-image-pipeline.

mechanism-reachableaccepted

Accepted publishable release-bundle covers mechanism-reachable for webgpu-image-pipeline.

render-or-compute-workaccepted

Accepted publishable release-bundle covers render-or-compute-work for webgpu-image-pipeline.

aligned-readbackaccepted

Accepted publishable release-bundle covers aligned-readback for webgpu-image-pipeline.

Capture state

FieldPublished value
Primary route/demos/webgpu-image-pipeline/
Camerasnear, design, far
Seeds0x00000001, 0x9e3779b9
Modesfinal, no-post, output, depth, view-z, linear-depth, normal, emissive, velocity, ao, bloom, exposure, temporal-current, temporal-history, temporal-resolved, albedo-extra-pass
Capture timeNot present in the promoted report data
Adapter identityNot promoted
Raw readback hashesNot present in the promoted preview summary

Fixed routes

KindIdStartup stateStatus
scenariopipeline-fixture{"scenario":"pipeline-fixture"}accepted
mechanismsignal-inspector{"tier":"debug","mode":"normal"}accepted
mechanismao-bloom-exposure-order{"tier":"full","mode":"ao"}accepted
mechanismtemporal-velocity-and-history{"tier":"full","mode":"temporal-history"}accepted
mechanismoutput-and-color-ownership{"tier":"full","mode":"final"}accepted
mechanismresource-budget{"tier":"debug","mode":"final"}accepted
mechanismdiagnostic-extra-pass{"tier":"debug","mode":"albedo-extra-pass"}accepted
tierfull{"tier":"full"}accepted
tierreduced{"tier":"reduced"}accepted
tierdebug{"tier":"debug"}accepted

Locked tier contracts

full · accepted
{
  "targetClass": "current-adapter correctness",
  "frameTargetMs": null,
  "resolutionPolicy": {
    "scene": 1,
    "ao": 0.5,
    "bloom": 0.5
  },
  "mechanismLimits": {
    "temporal": true,
    "normalMrt": true,
    "emissiveMrt": true
  },
  "resourceLimits": {
    "physicalBytes": null
  },
  "degradationFromPrevious": [],
  "preservedInvariants": [
    "one renderer",
    "one primary scene pass",
    "one tone map",
    "one output transform"
  ]
}
reduced · accepted
{
  "targetClass": "bandwidth-reduced correctness",
  "frameTargetMs": null,
  "resolutionPolicy": {
    "scene": 1,
    "ao": 0.5,
    "bloom": 0.33
  },
  "mechanismLimits": {
    "temporal": false,
    "normalMrt": false,
    "emissiveMrt": true
  },
  "resourceLimits": {
    "physicalBytes": null
  },
  "degradationFromPrevious": [
    "remove velocity/history",
    "reconstruct AO normals from depth",
    "reduce bloom scale"
  ],
  "preservedInvariants": [
    "one renderer",
    "one primary scene pass",
    "one tone map",
    "one output transform"
  ]
}
debug · accepted
{
  "targetClass": "diagnostics",
  "frameTargetMs": null,
  "resolutionPolicy": {
    "scene": 1,
    "ao": 1,
    "bloom": 0.5
  },
  "mechanismLimits": {
    "temporal": true,
    "diagnosticAlbedoPass": true
  },
  "resourceLimits": {
    "physicalBytes": null
  },
  "degradationFromPrevious": [],
  "preservedInvariants": [
    "explicit extra scene cost only when albedo diagnostic is reachable"
  ]
}

Limitations

  • Native WebGPU correctness capture with MRT and presentation readbacks.
  • Current-adapter GPU timestamps remain unaccepted.