Closed outofambit closed 1 month ago
cc @lolaodelola @mzgoddard @boazsender
Hey @outofambit I am not quite sure but would fall this under this specification: https://w3c.github.io/permissions ?
I think permissions were discussed in https://github.com/w3c/webdriver-bidi/issues/403 and looks like the agreement want that we want to do something in WebDriver BiDi. I think we should discuss it again.
This could become the first ever WebDriver BiDi (rather than WebDriver Classic) extension, as in, another spec defines its own commands/events. Exciting! cc @thiagowfx
Folks looking to take this on might be interested in the 2017 collaboration which informed the design of the WebDriver Classic Extension Command. While some details may be worth replicating, I imagine that thread will be just as useful in determining what to discard (due to the bi-directional paradigm shift, BiDi's richer abstractions for browsing contexts, and six years of refinements to the Permissions specification).
The editorial history of that section may also be instructive--it was removed in 2021 for lack of implementation interest and reinstated a few months later.
This could become the first ever WebDriver BiDi (rather than WebDriver Classic) extension, as in, another spec defines its own commands/events. Exciting! cc @thiagowfx
If my experience with WebDriver is any indication, we can also expect it to surface latent issues in the specification's extension mechanism.
The Browser Testing and Tools Working Group just discussed Adding Permissions Automation to the Roadmap
.
hi @OrKoN! I made a small update to the phrasing in the roadmap item to emphasize the "chooser" aspect of the bluetooth permission automation since that is somewhat unique compared to other permissions APIs. Based on the conversation today, do you think we can merge this PR in?
My understanding based on the discussion was that we want the specification for the Bluetooth specific part to be part of the Bluetooth spec and perhaps only define a general pattern for such interactions in the WebDriver BiDi spec. Perhaps we should add a more general item to the roadmap about supporting/clarifying how extensions could be defined and documenting the more general device access pattern (similar to the DeviceAccess in CDP)? For example, the existing permissions extension in WebDriver https://w3c.github.io/permissions/#automation
Also, should we file an issue in https://github.com/WebBluetoothCG/web-bluetooth/issues/ for specifying the Bluetooth specific extension and an issue in this repo for providing guidelines for extensions? We could link those issues in the roadmap. WDYT?
P.S. One of the issues about extensions we can probably link to is https://github.com/w3c/webdriver-bidi/issues/506
Hey @OrKoN, thanks for clarifying that. I dug in some more and what you're saying makes sense! I appreciate the extra links and resources. I took a quick pass at revising this PR, and will revise it again once I've gotten an issue filed in https://github.com/WebBluetoothCG/web-bluetooth/ next week. I'll ping you again once that's done to get another review. Thanks!
I'm going to do the implementation in the chromium mapper side of whatever comes out of this spec, so please keep me in the loop as well, thank you Evelyn :-)
cc @jgraham @whimboo PTAL
I think we will not extend the roadmap with permissions and web bluetooth since those are defined in external specifications and automation algorithms can be defined there. This already happened for Permissions and WebBluetooth:
My team is working on automated bluetooth testing in WPT, which has no way to automate managing device permissions. Instead of implementing something chrome specific, we’d like to explore device access/permission automation in BiDi. We’ll follow up with a design approach in an issue but wanted to start alignment conversations now.