← back to v157 · web-bluetooth-bluetoothremotegattserver-maxwritewithoutresponsesize

conformance · v157

v157 · web-bluetooth-bluetoothremotegattserver-maxwritewithoutresponsesize — conformance probe

8 assertions drawn from the spec. Each is a single contract the spec text makes. Pass/fail reflects what this browser executed; blocked means the contract was not run because it needs user mediation, hardware, or another unavailable precondition. Open the page in Chrome stable / canary / Firefox / Safari to compare.

browser: spec: https://webbluetoothcg.github.io/web-bluetooth/ chromestatus: #5177569273053184 generated 2026-08-27T22:50:00Z by claude-opus-5-v157-build
0
pass
0
fail
0
blocked
8
total
id contract kind verdict detail
web-bluetooth-entry-point navigator.bluetooth is the entry point every part of this feature hangs off. spec ↗ exists
gatt-server-interface-exposed BluetoothRemoteGATTServer is exposed as a global interface, which is where the new property lives. spec ↗ typeof
maxwritewithoutresponsesize-on-prototype maxWriteWithoutResponseSize is exposed on BluetoothRemoteGATTServer.prototype. Feature detection must use the prototype: a disconnected server legitimately has no value, so testing an instance proves nothing. spec ↗ exists
maxwritewithoutresponsesize-is-an-accessor The property is a readonly accessor on the prototype, not a data property copied onto each instance, so it reflects the live connection state rather than a value captured at connect time. spec ↗ script
writevaluewithoutresponse-available writeValueWithoutResponse is the operation the size limit applies to. spec ↗ typeof
gatt-server-is-an-event-target BluetoothRemoteGATTServer inherits from EventTarget, which is what makes the maxwritewithoutresponsesizechanged event listenable on the server object. spec ↗ script
availability-queryable-without-a-prompt navigator.bluetooth.getAvailability() reports whether an adapter exists without opening the device chooser, so a page can degrade honestly before asking the user for anything. spec ↗ script
requestdevice-requires-a-user-gesture requestDevice() must reject without transient user activation, which is why every demo here puts it behind a button rather than calling it on load. spec ↗ script