Draws pass — see EffectRenderPass for what that means and what it
refuses.
Bound by the same three rules Renderer.render is: the destination is
bound for the call and unbound before it returns even if the call throws,
nothing is left bound behind, and a lost context, a disposed surface or an
allocation the device refused skips the effect rather than throwing
(§61).
A renderer that can draw §70 effect passes — the structural capability (R-6).
Written as its own interface, and as an optional member of Renderer, for the reasons
statistics.tsgives forRenderStatisticsReporter: adding a required member to a published interface breaks every implementor, and a backend with no shader stage to run an effect in (§62's SVG tier draws DOM nodes) should be able to say so by omission rather than by silently copying.