[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:always_returns_device:*]
  [:featureLevel="compatibility"]

  [:featureLevel="core"]


[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:default:*]
  implementation-status: backlog
  expected:
    if os == "win" and debug: [OK, TIMEOUT]
  [:]
    expected:
      if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "win" and not debug: FAIL
      if os == "linux": FAIL
      if os == "mac": FAIL


[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:features,known:*]
  [:feature="bgra8unorm-storage"]

  [:feature="clip-distances"]

  [:feature="core-features-and-limits"]

  [:feature="depth-clip-control"]

  [:feature="depth32float-stencil8"]

  [:feature="dual-source-blending"]

  [:feature="float32-blendable"]

  [:feature="float32-filterable"]

  [:feature="indirect-first-instance"]

  [:feature="rg11b10ufloat-renderable"]

  [:feature="shader-f16"]

  [:feature="subgroups"]

  [:feature="texture-compression-astc"]

  [:feature="texture-compression-astc-sliced-3d"]

  [:feature="texture-compression-bc"]

  [:feature="texture-compression-bc-sliced-3d"]

  [:feature="texture-compression-etc2"]

  [:feature="timestamp-query"]


[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:features,unknown:*]
  [:]


[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:invalid:*]
  implementation-status: backlog
  expected:
    if os == "win" and debug: [OK, CRASH]
    if os == "linux": [OK, TIMEOUT]
  [:]
    expected:
      if os == "win": FAIL
      if os == "linux": [FAIL, TIMEOUT, NOTRUN]
      if os == "mac": FAIL


[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limit,better_than_supported:*]
  implementation-status: backlog
  [:limit="maxBindGroups"]

  [:limit="maxBindGroupsPlusVertexBuffers"]

  [:limit="maxBindingsPerBindGroup"]

  [:limit="maxBufferSize"]

  [:limit="maxColorAttachmentBytesPerSample"]

  [:limit="maxColorAttachments"]

  [:limit="maxComputeInvocationsPerWorkgroup"]

  [:limit="maxComputeWorkgroupSizeX"]

  [:limit="maxComputeWorkgroupSizeY"]

  [:limit="maxComputeWorkgroupSizeZ"]

  [:limit="maxComputeWorkgroupStorageSize"]

  [:limit="maxComputeWorkgroupsPerDimension"]

  [:limit="maxDynamicStorageBuffersPerPipelineLayout"]

  [:limit="maxDynamicUniformBuffersPerPipelineLayout"]

  [:limit="maxInterStageShaderVariables"]

  [:limit="maxSampledTexturesPerShaderStage"]

  [:limit="maxSamplersPerShaderStage"]

  [:limit="maxStorageBufferBindingSize"]

  [:limit="maxStorageBuffersInFragmentStage"]
    expected: FAIL

  [:limit="maxStorageBuffersInVertexStage"]
    expected: FAIL

  [:limit="maxStorageBuffersPerShaderStage"]

  [:limit="maxStorageTexturesInFragmentStage"]
    expected: FAIL

  [:limit="maxStorageTexturesInVertexStage"]
    expected: FAIL

  [:limit="maxStorageTexturesPerShaderStage"]

  [:limit="maxTextureArrayLayers"]

  [:limit="maxTextureDimension1D"]

  [:limit="maxTextureDimension2D"]

  [:limit="maxTextureDimension3D"]

  [:limit="maxUniformBufferBindingSize"]

  [:limit="maxUniformBuffersPerShaderStage"]

  [:limit="maxVertexAttributes"]

  [:limit="maxVertexBufferArrayStride"]

  [:limit="maxVertexBuffers"]

  [:limit="minStorageBufferOffsetAlignment"]

  [:limit="minUniformBufferOffsetAlignment"]


[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limit,out_of_range:*]
  tags: [webgpu, webgpu-long]
  implementation-status: backlog
  expected:
    if os == "win": [OK, CRASH]
    if os == "linux" and debug: [OK, CRASH]
    if os == "mac": [OK, CRASH]
  [:limit="maxBindGroups"]

  [:limit="maxBindGroupsPlusVertexBuffers"]

  [:limit="maxBindingsPerBindGroup"]

  [:limit="maxBufferSize"]

  [:limit="maxColorAttachmentBytesPerSample"]

  [:limit="maxColorAttachments"]

  [:limit="maxComputeInvocationsPerWorkgroup"]

  [:limit="maxComputeWorkgroupSizeX"]

  [:limit="maxComputeWorkgroupSizeY"]

  [:limit="maxComputeWorkgroupSizeZ"]

  [:limit="maxComputeWorkgroupStorageSize"]

  [:limit="maxComputeWorkgroupsPerDimension"]

  [:limit="maxDynamicStorageBuffersPerPipelineLayout"]

  [:limit="maxDynamicUniformBuffersPerPipelineLayout"]

  [:limit="maxInterStageShaderVariables"]

  [:limit="maxSampledTexturesPerShaderStage"]

  [:limit="maxSamplersPerShaderStage"]

  [:limit="maxStorageBufferBindingSize"]

  [:limit="maxStorageBuffersInFragmentStage"]
    expected: FAIL

  [:limit="maxStorageBuffersInVertexStage"]
    expected: FAIL

  [:limit="maxStorageBuffersPerShaderStage"]

  [:limit="maxStorageTexturesInFragmentStage"]
    expected: FAIL

  [:limit="maxStorageTexturesInVertexStage"]
    expected: FAIL

  [:limit="maxStorageTexturesPerShaderStage"]

  [:limit="maxTextureArrayLayers"]

  [:limit="maxTextureDimension1D"]

  [:limit="maxTextureDimension2D"]

  [:limit="maxTextureDimension3D"]

  [:limit="maxUniformBufferBindingSize"]

  [:limit="maxUniformBuffersPerShaderStage"]

  [:limit="maxVertexAttributes"]

  [:limit="maxVertexBufferArrayStride"]

  [:limit="maxVertexBuffers"]

  [:limit="minStorageBufferOffsetAlignment"]
    expected: FAIL

  [:limit="minUniformBufferOffsetAlignment"]
    expected: FAIL


[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limit,worse_than_default:*]
  tags: [webgpu, webgpu-long]
  implementation-status: backlog
  expected:
    if os == "win": [OK, CRASH]
    if os == "linux" and not debug: [OK, CRASH]
    if os == "mac" and not debug: [OK, CRASH]
  [:limit="maxBindGroups"]

  [:limit="maxBindGroupsPlusVertexBuffers"]
    expected: FAIL

  [:limit="maxBindingsPerBindGroup"]

  [:limit="maxBufferSize"]

  [:limit="maxColorAttachmentBytesPerSample"]

  [:limit="maxColorAttachments"]

  [:limit="maxComputeInvocationsPerWorkgroup"]

  [:limit="maxComputeWorkgroupSizeX"]

  [:limit="maxComputeWorkgroupSizeY"]

  [:limit="maxComputeWorkgroupSizeZ"]

  [:limit="maxComputeWorkgroupStorageSize"]

  [:limit="maxComputeWorkgroupsPerDimension"]

  [:limit="maxDynamicStorageBuffersPerPipelineLayout"]

  [:limit="maxDynamicUniformBuffersPerPipelineLayout"]

  [:limit="maxInterStageShaderVariables"]

  [:limit="maxSampledTexturesPerShaderStage"]

  [:limit="maxSamplersPerShaderStage"]

  [:limit="maxStorageBufferBindingSize"]

  [:limit="maxStorageBuffersInFragmentStage"]
    expected: FAIL

  [:limit="maxStorageBuffersInVertexStage"]
    expected: FAIL

  [:limit="maxStorageBuffersPerShaderStage"]

  [:limit="maxStorageTexturesInFragmentStage"]
    expected: FAIL

  [:limit="maxStorageTexturesInVertexStage"]
    expected: FAIL

  [:limit="maxStorageTexturesPerShaderStage"]

  [:limit="maxTextureArrayLayers"]

  [:limit="maxTextureDimension1D"]

  [:limit="maxTextureDimension2D"]

  [:limit="maxTextureDimension3D"]

  [:limit="maxUniformBufferBindingSize"]

  [:limit="maxUniformBuffersPerShaderStage"]

  [:limit="maxVertexAttributes"]

  [:limit="maxVertexBufferArrayStride"]

  [:limit="maxVertexBuffers"]

  [:limit="minStorageBufferOffsetAlignment"]

  [:limit="minUniformBufferOffsetAlignment"]


[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limits,supported:*]
  tags: [webgpu, webgpu-long]
  implementation-status: backlog
  expected:
    if os == "win": [OK, CRASH]
    if os == "linux" and not debug: [OK, CRASH]
    if os == "mac" and not debug: [OK, CRASH]
  [:limit="maxBindGroups"]
    expected: FAIL

  [:limit="maxBindGroupsPlusVertexBuffers"]
    expected: FAIL

  [:limit="maxBindingsPerBindGroup"]
    expected: FAIL

  [:limit="maxBufferSize"]
    expected: FAIL

  [:limit="maxColorAttachmentBytesPerSample"]
    expected: FAIL

  [:limit="maxColorAttachments"]
    expected: FAIL

  [:limit="maxComputeInvocationsPerWorkgroup"]
    expected: FAIL

  [:limit="maxComputeWorkgroupSizeX"]
    expected: FAIL

  [:limit="maxComputeWorkgroupSizeY"]
    expected: FAIL

  [:limit="maxComputeWorkgroupSizeZ"]
    expected: FAIL

  [:limit="maxComputeWorkgroupStorageSize"]
    expected: FAIL

  [:limit="maxComputeWorkgroupsPerDimension"]
    expected: FAIL

  [:limit="maxDynamicStorageBuffersPerPipelineLayout"]
    expected: FAIL

  [:limit="maxDynamicUniformBuffersPerPipelineLayout"]
    expected: FAIL

  [:limit="maxInterStageShaderVariables"]
    expected: FAIL

  [:limit="maxSampledTexturesPerShaderStage"]
    expected: FAIL

  [:limit="maxSamplersPerShaderStage"]
    expected: FAIL

  [:limit="maxStorageBufferBindingSize"]
    expected: FAIL

  [:limit="maxStorageBuffersInFragmentStage"]
    expected: FAIL

  [:limit="maxStorageBuffersInVertexStage"]
    expected: FAIL

  [:limit="maxStorageBuffersPerShaderStage"]
    expected: FAIL

  [:limit="maxStorageTexturesInFragmentStage"]
    expected: FAIL

  [:limit="maxStorageTexturesInVertexStage"]
    expected: FAIL

  [:limit="maxStorageTexturesPerShaderStage"]
    expected: FAIL

  [:limit="maxTextureArrayLayers"]
    expected: FAIL

  [:limit="maxTextureDimension1D"]
    expected: FAIL

  [:limit="maxTextureDimension2D"]
    expected: FAIL

  [:limit="maxTextureDimension3D"]
    expected: FAIL

  [:limit="maxUniformBufferBindingSize"]
    expected: FAIL

  [:limit="maxUniformBuffersPerShaderStage"]
    expected: FAIL

  [:limit="maxVertexAttributes"]
    expected: FAIL

  [:limit="maxVertexBufferArrayStride"]
    expected: FAIL

  [:limit="maxVertexBuffers"]
    expected: FAIL

  [:limit="minStorageBufferOffsetAlignment"]
    expected: FAIL

  [:limit="minUniformBufferOffsetAlignment"]
    expected: FAIL


[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limits,unknown:*]
  implementation-status: backlog
  [:]
    expected: FAIL


[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:stale:*]
  tags: [webgpu, webgpu-long]
  implementation-status: backlog
  expected:
    if os == "win": [OK, CRASH]
    if os == "linux": [OK, CRASH]
  [:]
    expected: FAIL
