accepted

WebGPU Touch History Frost

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-touch-history-frost
Kind
Canonical Lab
Owning skill
Dynamic Surface Effects
Execution
rendering
Three.js
0.185.1
Source hash
sha256:03e91ff6e6dd78f32c9b32143a28ca560c1332ca6e6abede836c387430b534fe
Published bundle hash
sha256:ba883dba08f33c61c31c6bcd27531b3d6249ed1816a1c192ce537fab37069aa2
Build revision
sha256:d929feed6bb69df4ba0bca7a58c723f6c257d003c20d1e9417d25ccb25e4ecf9
Renderer
WebGPURenderer
Backend
WebGPU
Evidence contract
v2
Tracked release bundle
Present

Claim verdicts

visualCorrectnessPASS
mechanismCorrectnessPASS
performanceComplianceNOT_CLAIMED
gpuAttributionNOT_CLAIMED
lifecycleStabilityPASS
visualErrorPASS

Promoted same-lab media

Required capability and runtime proof

Capabilities

native-webgpuaccepted

renderer backend gate after initialization

storage-textureaccepted

real RGBA16F ping-pong history textures

computeaccepted

guarded two-dimensional history update dispatch

Runtime proof

renderer-initaccepted

await renderer.init() in canonical browser controller

backend-is-webgpuaccepted

renderer.backend.isWebGPUBackend === true

mechanism-reachableaccepted

fixed mechanism routes select canonical graph state

odd-size-dispatchaccepted

641x359 coverage with explicit 8x8 bounds

aligned-readbackaccepted

capturePixels derives integer 256-byte-aligned row stride

render-or-compute-workaccepted

unified-v2 approved release: Playwright correctness + Chrome hardware physical-route review + offline visual signoff

Capture state

FieldPublished value
Primary route/demos/webgpu-touch-history-frost/
Camerasnear, design, far
Seeds0x00000001, 0x9e3779b9
Modesfinal, no-post, diagnostics, scene-color, vertical-blur, horizontal-blur, frost-noise, frozen-structure, highlight-structure, previous-history-ra, deposit-ra, next-history-ra, frost-mask-before-pointer, frost-mask-after-pointer, sharp-blur-mix, main-refraction-offset, detail-refraction-offset, final-without-refraction
Capture timeNot present in the promoted report data
Adapter identity{"source":"renderer.backend.device.adapterInfo","isFallbackAdapter":false,"info":{"vendor":"apple","architecture":"metal-3"}}
Raw readback hashesNot present in the promoted preview summary

Fixed routes

KindIdStartup stateStatus
scenariotouch-history-frost{"scenario":"touch-history-frost","tier":"balanced"}accepted
mechanismhistory-and-deposit{"mechanism":"history-and-deposit"}accepted
mechanismdiffusion{"mechanism":"diffusion"}accepted
mechanismblur-and-reconstruction{"mechanism":"blur-and-reconstruction"}accepted
mechanismcrystal-field-and-normals{"mechanism":"crystal-field-and-normals"}accepted
mechanismrefraction-and-fresnel{"mechanism":"refraction-and-fresnel"}accepted
mechanismfull-vs-dirty-vs-idle{"mechanism":"full-vs-dirty-vs-idle"}accepted
tierfull{"tier":"full"}accepted
tierbalanced{"tier":"balanced"}accepted
tierbudgeted{"tier":"budgeted"}accepted

Locked tier contracts

full · accepted
{
  "targetClass": "close-inspection",
  "frameTargetMs": null,
  "resolutionPolicy": {
    "historyScale": 1,
    "blurScale": 0.5,
    "dprCap": 2
  },
  "mechanismLimits": {
    "workgroupSize": [
      8,
      8,
      1
    ],
    "diffusion": true,
    "twoScaleRefraction": true
  },
  "resourceLimits": {
    "historyFormat": "RGBA16F",
    "historySlots": 2,
    "bytesPerTexel": 8
  },
  "degradationFromPrevious": [],
  "preservedInvariants": [
    "persistent-history",
    "same-frame-response",
    "dt-correct-decay-and-deposit",
    "one-output-owner"
  ]
}
balanced · accepted
{
  "targetClass": "ordinary-inspection",
  "frameTargetMs": null,
  "resolutionPolicy": {
    "historyScale": 0.5,
    "blurScale": 0.33,
    "dprCap": 1.5
  },
  "mechanismLimits": {
    "workgroupSize": [
      8,
      8,
      1
    ],
    "diffusion": true,
    "twoScaleRefraction": true
  },
  "resourceLimits": {
    "historyFormat": "RGBA16F",
    "historySlots": 2,
    "bytesPerTexel": 8
  },
  "degradationFromPrevious": [
    "half-resolution-history",
    "lower-blur-resolution"
  ],
  "preservedInvariants": [
    "persistent-history",
    "same-frame-response",
    "dt-correct-decay-and-deposit",
    "one-output-owner"
  ]
}
budgeted · accepted
{
  "targetClass": "small-projected-footprint",
  "frameTargetMs": null,
  "resolutionPolicy": {
    "historyScale": 0.25,
    "blurScale": 0.25,
    "dprCap": 1
  },
  "mechanismLimits": {
    "workgroupSize": [
      8,
      8,
      1
    ],
    "diffusion": true,
    "twoScaleRefraction": false
  },
  "resourceLimits": {
    "historyFormat": "RGBA16F",
    "historySlots": 2,
    "bytesPerTexel": 8
  },
  "degradationFromPrevious": [
    "quarter-resolution-history",
    "single-scale-refraction"
  ],
  "preservedInvariants": [
    "persistent-history",
    "same-frame-response",
    "dt-correct-decay-and-deposit",
    "one-output-owner"
  ]
}

Limitations

  • Correctness and hardware physical-route visual review pass on the current source closure.
  • Named-adapter GPU timestamp timing remains NOT_CLAIMED.