UA Ledger · Playable Test Bench · draft for review

Do not show a playing state before playback is accepted

Teaching laboratory. Cases run in this page against the authored functions. This is not a device panel, network approval, analytics-delivery proof or campaign result. Inputs are synthetic.

A successful tap is not the same as successful audio playback. This fixture exercises the promise boundary so the interface cannot claim sound is playing after a rejected request.

Primary documentation: MDN: audio rejection (body read 2026-09-19).

Cases

CaseInputExpectedFixedBroken

What a pass does not prove

A pass establishes that the interface can represent a rejected request. It does not prove audible output, device volume, codec compatibility or a real user-activation path. Those require browser and device checks with an actual permitted media file, and should be recorded separately from this promise-handling regression.