16:03:07 RRSAgent has joined #webdriver 16:03:11 logging to https://www.w3.org/2026/09/09-webdriver-irc 16:03:13 Zakim has joined #webdriver 16:03:33 sasha has joined #webdriver 16:03:37 jimevans has joined #webdriver 16:03:46 Meeting: Browser Testing & Tools 16:03:59 Agenda: https://www.w3.org/wiki/WebDriver/2026-09-BiDi#Agenda 16:04:22 RRSAgent, make logs public 16:04:50 present+ 16:04:50 present+ 16:04:53 sadym has joined #webdriver 16:04:55 present+ 16:04:58 present+ 16:05:18 present+ 16:05:36 scribe: tidoust 16:05:46 Topic: Define behavior of browsingContext.navigate for javascript: URLs 16:06:04 present+ 16:06:10 github: https://github.com/w3c/webdriver-bidi/issues/1123 16:06:44 Henrik: Trying to make our implementation more secure. Question came up about handling javascript: URLs. 16:07:30 q? 16:07:41 ... If we have an about page open in the parent process, we don't want if we need to wait or not. That leads to undefined behavior. 16:08:09 ... We don't know at least for classic how many users use javascript: URLs. 16:08:26 AutomatedTester has joined #webdriver 16:08:41 ... I'm wondering whether we can drop support for javascript: URLs. 16:09:07 ... If someone's using them, that would then report an invalid argument error. 16:10:05 burg has joined #webdriver 16:10:18 present+ 16:10:19 ... I can create a PR. Navigation with javascript: URLs would still possible through navigation within a page. It's really only about the "navigate" command. 16:10:53 Topic: Update for "make userContext mandatory in event payloads"? 16:10:55 ... I'll start with BiDi. If that does not cause any problem, we can adapt it to Classic afterwards as well. 16:11:16 github: https://github.com/w3c/webdriver-bidi/pull/1144#pullrequestreview-5087578787 16:12:02 Henrik: The question is mainly about landing the PR. We are only waiting for Chrome to keep up. When can userContext be added to event so that we can make it optional instead of mandatory? 16:12:35 Maksim: A question of prioritization. 16:12:45 ... Should not be a big deal. 16:13:26 Topic: Do not allow for forcing classic scrollbars 16:13:37 github: https://github.com/w3c/webdriver-bidi/pull/1087 16:14:01 Maksim: Don't remember if we already discussed it. 16:14:22 https://github.com/w3c/webdriver-bidi/issues/692 is the related issue 16:14:25 ... Apparently, it's not possible for us to force the classic scrollbar for all devices, e.g., for Android where it will be overlay. 16:14:50 q+ 16:15:20 ... For platform where classic scrollbars are shown, the change would change them to overlay or the other option. 16:15:32 ack next 16:16:31 jgraham: Reading the comment from Sam, it seems reasonable. The pattern that we use in cases where stuff is not supported everywhere is to report an error. Client has to deal with that. 16:16:43 q+ 16:16:47 ack next 16:17:17 q+ 16:17:41 Maksim: I don't know if, from WPT perspective, it would help if we fail with an error. That would make some tests fail. Not sure that's the right approach. 16:17:43 ack next 16:18:33 jgraham: Two cases we care about: 1) You're a desktop platform and you cannot have scrollbars, a number of tests will fail due to reftests. In that case, it would be good to know that this is the reason why the tests are failing. 16:19:11 q+ 16:19:18 ... 2) Mobile use cases where classic scrollbars aren't usually supported. Making tests not designed for mobile run under mobile is work in any case. 16:20:11 ... I also don't think that WPT is the main driving case here. In general, I don't think it's possible to design the API such that everything works on every platform. I'm not sure that's a special enough case that we should do something specific for that. 16:20:32 ... I'm also happy with a default option here. 16:20:50 ... But I do think to request a specific configuration even though it may not make sense in some specific environment. 16:20:51 ack next 16:21:32 mradbourne has joined #webdriver 16:21:48 Maksim: Then that means we don't want any emulation. It's different from the default one: let's say we have a global emulation overlay. Null and default become different. 16:22:19 ... From the user perspective, we're leaning on option 3 in the proposal, extending the options with default. 16:22:26 jgraham: I think that would be fine. 16:22:49 Topic: Allow for specifying schema in "proxy" 16:23:09 github: https://github.com/w3c/webdriver/pull/1937 16:23:14 Maksim: Call for action, but I see that Henrik already provided comments. I'll revisit the PR. 16:23:32 Henrik: 2 or 3 PRs opened. 16:23:44 ... Would be good to know which one we pursue. 16:24:04 Maksim: #1922 should be the one. The others are draft. 16:24:28 Topic: Streaming API 16:24:44 github: https://github.com/w3c/webdriver-bidi/pull/1135 16:24:59 q+ 16:25:12 sasha: Where we ended is that Alex pushed back on adding the option to return stream from script evaluation. 16:25:58 ... If we would be ok to removing it, we would need to figure out the return type evaluation, but not adding support for network body for now and move forward with the rest. 16:26:16 ack next 16:27:20 Maksim: From I understand, we try to get with the API. The JS case is quite specific case. For screencast and network body, it's a completely different problem. 16:27:44 q+ 16:27:49 ... Alex' point is that it would make more sense to create explicit features for them for scenarios where we're explicitly going to use them. 16:27:52 ack next 16:28:17 jgraham: I think it's ok to merge the API without connecting with anything at the moment. 16:29:18 ... Network bodies and screencast are slightly different things. I think there is a little bit of an advantage with a design that is more generic. 16:29:32 ... I also agree that it's not the most compelling use case. 16:29:52 q+ 16:29:59 ... It's strange if you have to access a stream from different APIs. 16:30:02 ack next 16:30:50 q+ 16:30:53 sasha: I have the feeling that for each specific use case, we'll need to handle it separately. Additional wiring may be needed for each use case. 16:31:03 ... I would like to make progress while we figure this out. 16:31:05 ack next 16:32:38 Maksim: I don't think there is any user benefit but there is a slight benefit for those that will provide the streaming of the screencasting. Meaning it's useful for us, writers of the specification, not the end users. 16:33:36 jgraham: I think the current proposal is to remove the connection to the js stuff for now. And land an API that isn't connected to anything. 16:34:07 Maksim: Either that way, or postpone it to the API in the network stream use case. 16:34:12 q+ 16:34:17 ack next 16:35:13 q+ 16:35:13 jimevans: Doesn't defering until we land on the other use cases take us back to the initial problem in terms of using platform primitives? Or is that completely orthogonal to where we are here? 16:35:18 ack next 16:35:56 q+ 16:35:57 jgraham: I'm not completely sure I understand. The advantage of landing the API is that with the shape in place, we're not blocked on what the API for streaming is going to look like. 16:36:44 ... I'm not sure about platform primitives. There are different mechanisms. But the high-level API feels like we have some level of agreement for WebDriver. 16:37:12 ack next 16:37:58 jimevans: We had different PRs around that feature already in terms of defining streams, stream access. One of the sticking points I recall is that we need some kind of realm for the stream to live in. 16:38:09 ... And that's what I'm referring to. 16:38:15 q+ 16:38:50 ... If we want to shape the API first and define the implementation later, I'm fine, but I don't want to block ourselves in progress because we haven't figured out all the internal workings of how the API should work. 16:39:00 ack next 16:39:14 jgraham: That makes sense. That is still the case. 16:39:35 ... We would just take out the part that gives you access to the stream. 16:40:31 ... It is true that it isn't entirely clear how some of the streams will work as they need to be in a realm. For example with screencasting. Do we use a virtual realm? Etc. 16:40:47 ... With some streams, the realm is more defined. E.g., with fetch. 16:40:59 ... I like the part where you said: "we should do this" 16:41:30 Topic: Pass a "hasImmediateNavigation" flag to the "browsingContext.contextCreated" event. 16:41:42 github: https://github.com/w3c/webdriver-bidi/pull/1151 16:42:16 sasha: New flag to indicate whether this a navigation soon. 16:42:55 ... What I propose to do with lazy iframes is to set the flag if certain conditions are met. 16:43:38 ... Then we had a discussion that maybe we don't want to handle it altogether, maybe for lazy iframes we want a separate flag to say it's a lazy iframe and whether it is in the viewport. 16:44:02 ... And the flag that we introduce now is only going to cover cases except lazy iframes. 16:44:11 ... And later on, for lazy iframes, we introduce more flags. 16:44:52 q+ 16:44:55 ack next 16:45:48 jgraham: Two main use case: Should I be waiting for the load even in this frame? Should I be running a preload script in this frame? 16:46:29 ... One other considerations is: do we want a bunch of boolean flags here? Or is more like an enum-shaped? 16:46:41 q+ 16:47:02 ... Sometimes, browsers have background contexts, extension pages. At the moment, we're not exposing those. 16:47:13 ... We should not be too specific. 16:47:39 ack next 16:48:10 q+ 16:48:22 Maksim: The only difference is that, what we want to say is that the navigation will start even though we don't know when it may end. 16:48:36 ... We may try with different approaches, and figure out lazy later on. 16:48:42 ack next 16:49:30 sasha: For the lazy iframes, proposal is to only set the flag when navigation is going to be happen when it's added to the viewport. 16:49:47 q+ 16:49:49 ... Figuring out whether we want to handle lazy iframes or not. 16:50:11 ... If check whether src attribute is set. 16:50:34 ... We may need a better name for that property. What do we want to say with this property in terms of navigation? 16:50:36 ack next 16:50:58 Maksim: I don't think it's any different from iframes which are navigated by JavaScript. 16:51:23 ... From that perspective, I agree with that proposal, we only have to show that the navigation already started. 16:51:38 Topic: Periodic screenshots 16:51:51 github: https://github.com/w3c/webdriver-bidi/issues/1134 16:52:28 sasha: Idea would be to bring an API similar to CDP when clients can ask for a screenshot when the screen changes. 16:52:41 ... Command to acknowledge that the screenshot was handled. 16:52:59 ... Agentic tools may want to see what is happening in the page. 16:53:19 ... I'm concerned with the shape of the API. We don't have other cases where we would call a command to setup an event. 16:53:27 ... And another command to maybe acknowledge it. 16:53:38 ... Alternative proposal would be to have a streaming API here. 16:54:15 ... Command would configure this screenshoting, and client would pull the stream. We would have the backpressure handled in that scenario. 16:54:29 ... Client can call it as soon as they're ready to receive the next one. 16:54:38 ... I just wanted to start the discussion today. 16:54:44 q+ 16:54:48 q+ 16:54:55 ack next 16:55:27 jgraham: One thing I just thought of is that the stream command is presumably blocking, while waiting for an event is not. 16:55:46 ack next 16:55:50 ... You need a thread vs. an event loop. Maybe that's a meaningful difference for clients as well. 16:56:30 Maksim: It looks like this case would be better handled with events and doesn't need streaming at all. I haven't checked in details yet. 16:57:08 jgraham: Let's discuss in the issue. 16:57:12 Topic: WG rechartering - ongoing call for review and upcoming change of staff contact 16:57:45 scribe: jgraham 16:59:06 tidoust: The WG was temporarily out of charter. Apologies. There is a new proposed charter being reviewed by the AC. Some already replied, but not all. Please support! Then we can adopt it. Practically speaking we have a tacit rule that we need 5% of members to express support before it gets rechartered. IF there aren't enough votes we need to 16:59:07 justify it. 16:59:34 tidoust: Note that the proposed charter doesn't have me as staff contact. I will hand over to [name?] 17:00:09 s/[name?]/Xiaoqian 17:00:31 Topic: TPAC vs October meeting 17:00:58 Maksim: I assume that we still want to have an October meeting on top of TPAC? 17:01:14 jgraham: I would encourage people to attend TPAC. 2 days of meetings. 17:01:28 ... I would cancel the other October meeting. 17:01:48 (I'm registered for remote TPAC participation) 17:01:52 Maksim: Works for me. 17:02:02 RRSAgent, draft minutes 17:02:03 I have made the request to generate https://www.w3.org/2026/09/09-webdriver-minutes.html tidoust