FYI I had LGTM3'd on Oct 7 but apparently dropped blink-dev from the
thread. Sorry!


On Thu, Oct 1, 2026 at 5:02 AM Philip Jägenstedt <[email protected]>
wrote:

> LGTM2
>
> I see that https://github.com/whatwg/bluetooth/pull/672 is approved, can
> it be merged now?
>
> On Wed, Sep 30, 2026 at 5:24 PM Chris Harrelson <[email protected]>
> wrote:
>
>> LGTM1
>>
>> On Tue, Sep 29, 2026 at 10:20 AM Helmut Januschka <[email protected]>
>> wrote:
>>
>>> *Contact emails*
>>> [email protected]
>>>
>>> *Explainer*
>>> https://github.com/WebBluetoothCG/web-bluetooth/pull/672
>>>
>>> *Specification*
>>>
>>> https://pr-preview.s3.amazonaws.com/hjanuschka/web-bluetooth/pull/672.html#bluetoothremotegattserver
>>>
>>> *Summary*
>>> BluetoothRemoteGATTServer inherits from EventTarget, exposing the
>>> standard addEventListener(), removeEventListener(), and dispatchEvent()
>>> methods. This enables connection-level events to be dispatched directly on
>>> the GATT server.
>>>
>>> *Blink component*
>>> Blink>Bluetooth
>>> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EBluetooth%22>
>>>
>>> *Web Feature ID*
>>> web-bluetooth <https://webstatus.dev/features/web-bluetooth>
>>>
>>> *Motivation*
>>> BluetoothRemoteGATTServer represents an active GATT connection and needs
>>> to host connection-level events. Making it an EventTarget gives web
>>> applications the standard event-listener API needed by events such as the
>>> separately proposed maxwritewithoutresponsesizechanged event.
>>>
>>> *Initial public proposal*
>>> https://github.com/WebBluetoothCG/web-bluetooth/pull/672
>>>
>>> *Search tags*
>>> web-bluetooth <https://chromestatus.com/features#tags:web-bluetooth>,
>>> bluetooth <https://chromestatus.com/features#tags:bluetooth>,
>>> eventtarget <https://chromestatus.com/features#tags:eventtarget>
>>>
>>> *TAG review*
>>> *No information provided*
>>>
>>> *TAG review status*
>>> Issues addressed
>>>
>>> *Goals for experimentation*
>>> None
>>>
>>> *Risks*
>>>
>>>
>>> *Interoperability and Compatibility*
>>> This is a small but observable change to an existing interface. Existing
>>> content could be affected if it relies on BluetoothRemoteGATTServer not
>>> having addEventListener(), relies on an instance not being an instanceof
>>> EventTarget, or enumerates inherited properties and does not expect
>>> EventTarget members. The affected surface is limited to sites using Web
>>> Bluetooth. Firefox and Safari do not currently implement Web Bluetooth.
>>>
>>> *Gecko*: Negative (
>>> https://github.com/mozilla/standards-positions/issues/95) Firefox does
>>> not implement Web Bluetooth. The citation is Mozilla's position on the
>>> overall Web Bluetooth API, not a separate position on this inheritance
>>> change.
>>>
>>> *WebKit*: Oppose (
>>> https://github.com/WebKit/standards-positions/issues/570) Safari does
>>> not implement Web Bluetooth. The citation is WebKit's position on the
>>> overall Web Bluetooth API, not a separate position on this inheritance
>>> change.
>>>
>>> *Web developers*: Positive this is a small preparation feature for the
>>> larger demanded: https://issues.chromium.org/issues/40265040
>>>
>>> *Other signals*: The WebBluetoothCG specification change is approved in
>>> https://github.com/WebBluetoothCG/web-bluetooth/pull/672 but has not
>>> yet merged.
>>>
>>> *Ergonomics*
>>> Low. EventTarget is the standard event-listener pattern used throughout
>>> the web platform. The change does not add synchronous work, thread
>>> constraints, or performance-sensitive behavior. It prepares
>>> BluetoothRemoteGATTServer to expose connection-level events alongside the
>>> existing Web Bluetooth APIs.
>>>
>>> *Activation*
>>> Low. Developers use the standard addEventListener() API and need no
>>> polyfill or library. This inheritance change alone does not require
>>> application changes; developers use it when connection-level events are
>>> exposed.
>>>
>>> *Security*
>>> This exposes only the standard EventTarget methods on an existing Web
>>> Bluetooth object. It does not grant access to additional devices, services,
>>> characteristics, data, or operations. Existing Web Bluetooth permission,
>>> secure-context, service allowlist, blocklist, and Permissions Policy
>>> protections remain unchanged.
>>>
>>> *WebView application risks*
>>>
>>> Does this intent deprecate or change behavior of existing APIs, such
>>> that it has potentially high risk for Android WebView-based applications?
>>> None. Android WebView does not expose Web Bluetooth, so
>>> BluetoothRemoteGATTServer is not available there.
>>>
>>>
>>> *Debuggability*
>>> The inherited EventTarget methods and registered listeners are
>>> inspectable using the existing DevTools Console and event-listener tools.
>>> No dedicated DevTools panel or protocol support is required.
>>>
>>> *Will this feature be supported on all six Blink platforms (Windows,
>>> Mac, Linux, ChromeOS, Android, and Android WebView)?*
>>> No
>>> Supported on Windows, macOS, Linux, ChromeOS, and Android wherever Web
>>> Bluetooth is available. Chrome on iOS and Android WebView do not expose Web
>>> Bluetooth.
>>>
>>> *Is this feature fully tested by web-platform-tests
>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?*
>>> No
>>> Chromium's global interface listing tests verify that
>>> BluetoothRemoteGATTServer inherits from EventTarget:
>>> https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/webexposed/global-interface-listing.html
>>> The Web Bluetooth WPT IDL harness will cover the same inheritance after
>>> specification PR 672 merges and the generated Web Bluetooth IDL snapshot is
>>> updated:
>>> https://github.com/web-platform-tests/wpt/blob/master/bluetooth/bidi/idl/idlharness.tentative.https.window.js
>>> https://github.com/WebBluetoothCG/web-bluetooth/pull/672
>>>
>>> *Flag name on about://flags*
>>> *No information provided*
>>>
>>> *Finch feature name*
>>> *No information provided*
>>>
>>> *Non-finch justification*
>>> Blink cannot conditionally enable Web IDL inheritance. The inheritance
>>> change has therefore been isolated into a standalone implementation CL and
>>> shipping intent.
>>>
>>> *Rollout plan*
>>> Will ship enabled for all users
>>>
>>> *Requires code in //chrome?*
>>> False
>>>
>>> *Tracking bug*
>>> https://issues.chromium.org/issues/40265040
>>>
>>> *Measurement*
>>> No dedicated UseCounter is added for the inheritance change. Exposure
>>> and use remain associated with the existing web-bluetooth Web Feature ID.
>>> The change is also covered by Chromium's global interface listing tests.
>>>
>>> *Estimated milestones*
>>>
>>> Shipping on desktop
>>> 157
>>> Shipping on Android
>>> 157
>>> Shipping on WebView
>>> 157
>>> Shipping on iOS
>>> 157
>>>
>>> *Anticipated spec changes*
>>>
>>> Open questions about a feature may be a source of future web compat or
>>> interop issues. Please list open issues (e.g. links to known github issues
>>> in the project for the feature specification) whose resolution may
>>> introduce web compat/interop risk (e.g., changing to naming or structure of
>>> the API in a non-backward-compatible way).
>>> The inheritance change is included in WebBluetoothCG PR 672. The PR is
>>> approved and no further substantive changes to this inheritance are
>>> anticipated, but it must merge before shipping.
>>>
>>> *Link to entry on the Chrome Platform Status*
>>> https://chromestatus.com/feature/5138797158334464?gate=6155787868176384
>>>
>>> This intent message was generated by Chrome Platform Status
>>> <https://chromestatus.com/>.
>>>
>>>
>>> this is a "formal" feature, its a formal necessity for proceeding with
>>> https://chromestatus.com/feature/5177569273053184
>>>
>>> to make this easier in the future, i prepared a issue/cl - to make
>>> inheritance feature flaggable, and reduce similiar feature entry
>>> requirements for changes like this!
>>>
>>> https://issues.chromium.org/issues/558254917
>>>
>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "blink-dev" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To view this discussion visit
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/9c0d3b76-5d3d-4ff2-8537-131e89331e5cn%40chromium.org
>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/9c0d3b76-5d3d-4ff2-8537-131e89331e5cn%40chromium.org?utm_medium=email&utm_source=footer>
>>> .
>>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "blink-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To view this discussion visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw_iue9RNdYx2z9XdnfEte318vtKr1ue3nRUHZ8uaBVXug%40mail.gmail.com
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw_iue9RNdYx2z9XdnfEte318vtKr1ue3nRUHZ8uaBVXug%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> You received this message because you are subscribed to the Google Groups
> "blink-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAARdPYd%2BD3%2Br%3DOuSGeuPx5OCF3GwecmRqXJJeTb2qbsHetY0Zw%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAARdPYd%2BD3%2Br%3DOuSGeuPx5OCF3GwecmRqXJJeTb2qbsHetY0Zw%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY-9i55BjjC16jTGhCivg1vRcFhaEnSmw3O1MXGgGwmo%3Dg%40mail.gmail.com.

Reply via email to