incomplete

WebGPU Exposure Color 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-exposure-color-pipeline
Kind
Canonical Lab
Owning skill
Exposure And Color Grading
Execution
rendering
Three.js
0.185.1
Source hash
sha256:6030ee02f228505590a3a9c61ed20a8fc2955e63d64396fe6c098d18e82a5759
Published bundle hash
sha256:2605f5d4486b07238824f651aff74a3c06d322241b2a9878c5516455513f445b
Build revision
sha256:6c7881ab73865696d689489de465e1cd67e1f2242d43641279abac777df0479b
Renderer
WebGPURenderer
Backend
WebGPUBackend
Evidence contract
v2
Tracked release bundle
Absent

Claim verdicts

mechanismCorrectnessINSUFFICIENT_EVIDENCE
performanceComplianceINSUFFICIENT_EVIDENCE
lifecycleStabilityINSUFFICIENT_EVIDENCE

Promoted same-lab media

Required capability and runtime proof

Capabilities

native-webgpuincomplete

No capability evidence is recorded.

storage-buffersincomplete

No capability evidence is recorded.

storage-atomicsincomplete

required by full-histogram tier

Runtime proof

renderer-initincomplete

INSUFFICIENT_EVIDENCE

compute-readbackincomplete

INSUFFICIENT_EVIDENCE

current-adapter-timingincomplete

INSUFFICIENT_EVIDENCE

Capture state

FieldPublished value
Primary route/demos/webgpu-exposure-color-pipeline/
Camerasdesign
Seeds0x00000001, 0x9e3779b9
Modesfinal, meter-source, histogram, adaptation, meter-mask, tone-map, lut
Capture timeNot present in the promoted report data
Adapter identityNot promoted
Raw readback hashesNot present in the promoted preview summary

Fixed routes

KindIdStartup stateStatus
scenarioemitter{"scenario":"emitter"}incomplete
scenariogray-card{"scenario":"gray-card"}incomplete
scenarioswatches{"scenario":"swatches"}incomplete
scenariobright-window{"scenario":"bright-window"}incomplete
scenariomasked-ui{"scenario":"masked-ui"}incomplete
mechanismlog-luminance-reduction{"tier":"balanced-log-reduction","mode":"meter-source","scenario":"emitter"}incomplete
mechanismhistogram-and-percentiles{"tier":"full-histogram","mode":"histogram","scenario":"emitter"}incomplete
mechanismadaptation{"tier":"balanced-log-reduction","mode":"adaptation","scenario":"bright-window"}incomplete
mechanismmetering-masks{"tier":"full-histogram","mode":"meter-mask","scenario":"masked-ui"}incomplete
mechanismtone-mapping{"tier":"balanced-log-reduction","mode":"tone-map","scenario":"swatches"}incomplete
mechanismlut-grading{"tier":"full-histogram","mode":"lut","scenario":"swatches"}incomplete
tierfull-histogram{"tier":"full-histogram"}incomplete
tierbalanced-log-reduction{"tier":"balanced-log-reduction"}incomplete
tierminimum-fixed-shot{"tier":"minimum-fixed-shot"}incomplete

Locked tier contracts

full-histogram · incomplete
{
  "targetClass": "current-adapter correctness",
  "frameTargetMs": null,
  "resolutionPolicy": {
    "meterGrid": [
      64,
      36
    ],
    "lutEdge": 32
  },
  "mechanismLimits": {
    "meter": "histogram-percentile",
    "histogramBins": 64
  },
  "resourceLimits": {
    "storageBytes": 872
  },
  "degradationFromPrevious": [],
  "preservedInvariants": [
    "GPU EV ownership",
    "single tone map",
    "single output transform"
  ]
}
balanced-log-reduction · incomplete
{
  "targetClass": "current-adapter correctness",
  "frameTargetMs": null,
  "resolutionPolicy": {
    "meterGrid": [
      64,
      36
    ],
    "lutEdge": 32
  },
  "mechanismLimits": {
    "meter": "weighted-log"
  },
  "resourceLimits": {
    "storageBytes": 320
  },
  "degradationFromPrevious": [
    "remove histogram clear/bin/prefix/percentile dispatches"
  ],
  "preservedInvariants": [
    "GPU EV ownership",
    "single tone map",
    "single output transform"
  ]
}
minimum-fixed-shot · incomplete
{
  "targetClass": "controlled shot",
  "frameTargetMs": null,
  "resolutionPolicy": {
    "meterGrid": null,
    "lutEdge": 32
  },
  "mechanismLimits": {
    "meter": "fixed-shot"
  },
  "resourceLimits": {
    "storageBytes": 320
  },
  "degradationFromPrevious": [
    "disable meter updates",
    "retain authored fixed EV"
  ],
  "preservedInvariants": [
    "single tone map",
    "single output transform"
  ]
}

Limitations

  • The correctness bundle records a native r185 WebGPU backend, but named-adapter timestamp evidence is absent.
  • The promoted percentile frame is a selection mask, not proof that histogram bin totals, prefix scan, or f64 oracle parity pass.
  • Lifecycle stability remains unaccepted.