OptionalbeginOpens a compute pass (§82, WP-R1.8). Optional for GpuBuffer.mapAsync's reason: presence is the capability, and only the compute path calls it — the frame path never does (§82's "basic graphics … must not require compute support", held structurally).
Optionaldescriptor: { label?: string }OptionalcopyCopies a buffer range into another buffer — compute readback's mechanism
(wgpu-compute.ts), the buffer-to-buffer half of WP-R1.6's
copyTextureToBuffer, optional on the same presence-is-the-capability
terms.
OptionalcopyCopies a texture's texels into a buffer — readPixels' mechanism
(WP-R1.6, RFC 0005). Optional for GpuBuffer.mapAsync's reason:
presence is the capability, and only the readback path calls it.
bytesPerRow must be a multiple of 256 (the WebGPU constant
COPY_BYTES_PER_ROW_ALIGNMENT); wgpu-readback.ts owns that arithmetic.
Optional ReadonlymipLevel?: numberOptional Readonlyorigin?: readonly [number, number]Top-left corner of the copied rectangle in the texture's own
top-first coordinates, [x, y] — §61's region form (2026-08-29).
Omitted for a whole-texture copy, and only then, so the
whole-target tape WP-R1.6 recorded stays byte-identical.
wgpu-readback.ts owns the §7a bottom-origin conversion.
Readonlytexture: GpuTextureCloses the encoder and yields the buffer to submit.
OptionalresolveCopies query results into destination (A-1). Optional — presence is
the capability, and only the GPU-frame timer calls it.
Records passes into a command buffer.