Rule 11.14
Chapter 11, Targets and the oracle Test
Every capability of WebGPU and of WebGL2, as the sources of Appendix C enumerate them, must have exactly one status per target in the coverage table: typed, raw, refused, planned, gap or n/a. A capability with no row, or with two statuses on one target, is a defect of the table.
The rule text and the parts under it are the compiler's own English, as the design document writes them.
Rationale
the goal is a sentence about every capability, so the table must cover every one, and one status per target is what makes the sentence checkable.
Derives from
How it is verified
Checked by a test. A test, a gate script or a CI workflow names this rule, and the traceability check fails when a file listed below stops naming it.
Where the rule says the compiler enforces it:
src/core/spec-conformance/capability-coverage.test.ts (Rule 11.15).
The files that verify it at commit 91c2fe31, each at the first line that names the rule:
-
src/core/spec-conformance/capability-coverage.test.ts:45(checked by the compiler's own test)
See also
Source
The rule at commit 91c2fe31:
docs/language-design.md:1363(the design document)reqs/rules/RULE-1114.md(its traceability item)