Skip to content

Test createView and resolveTarget with TRANSIENT_ATTACHMENT#4635

Merged
kainino0x merged 2 commits intogpuweb:mainfrom
kainino0x:transient2
Apr 28, 2026
Merged

Test createView and resolveTarget with TRANSIENT_ATTACHMENT#4635
kainino0x merged 2 commits intogpuweb:mainfrom
kainino0x:transient2

Conversation

@kainino0x
Copy link
Copy Markdown
Collaborator

@kainino0x kainino0x commented Apr 27, 2026

This restriction is missing from the spec, but textures with TRANSIENT_ATTACHMENT must not be used as resolve targets.

This must apply regardless of any usage subsetting in createView(). For simplicity (to better avoid bugs in validation elsewhere), it's proposed that createView() simply cannot subset a TRANSIENT_ATTACHMENT texture. This test implements that proposal.

Issue: #4509; part of spec change gpuweb/gpuweb#6248


Requirements for PR author:

  • All missing test coverage is tracked with "TODO" or .unimplemented().
  • New helpers are /** documented */ and new helper files are found in helper_index.txt.
  • Test behaves as expected in a WebGPU implementation. (If not passing, explain above.)
  • [-] Test have be tested with compatibility mode validation enabled and behave as expected. (If not passing, explain above.)

Requirements for reviewer sign-off:

  • Tests are properly located.
  • Test descriptions are accurate and complete.
  • Tests provide complete coverage (including validation control cases). Missing coverage MUST be covered by TODOs.
  • Tests avoid over-parameterization (see case count report).

When landing this PR, be sure to make any necessary issue status updates.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 27, 2026

Results for build job (at 4ce110e):

-webgpu:api,validation,createView:texture_view_usage:* - 452 cases, 2712 subcases (~6/case)
+webgpu:api,validation,createView:texture_view_usage:* - 452 cases, 2260 subcases (~5/case)
+webgpu:api,validation,createView:texture_view_usage_of_multiple_usages:* - 16 cases, 54 subcases (~3/case)
-webgpu:api,validation,render_pass,resolve:resolve_attachment:* - 21 cases, 21 subcases (~1/case)
+webgpu:api,validation,render_pass,resolve:resolve_attachment:* - 23 cases, 23 subcases (~1/case)
-TOTAL: 281227 cases, 2322792 subcases
+TOTAL: 281245 cases, 2322396 subcases

This restriction is missing from the spec, but textures with
TRANSIENT_ATTACHMENT must not be used as resolve targets.

This must apply regardless of any usage subsetting in createView(). For
simplicity (to better avoid bugs in validation elsewhere), it's proposed
that createView() simply cannot subset a TRANSIENT_ATTACHMENT texture.
This test implements that proposal.
Copy link
Copy Markdown
Collaborator

@beaufortfrancois beaufortfrancois left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@kainino0x kainino0x enabled auto-merge (squash) April 28, 2026 11:06
@kainino0x kainino0x merged commit 0d85e34 into gpuweb:main Apr 28, 2026
1 check passed
@kainino0x kainino0x deleted the transient2 branch April 28, 2026 11:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants