diff --git a/fetch.bs b/fetch.bs index de4606f20..9127c50c2 100644 --- a/fetch.bs +++ b/fetch.bs @@ -2156,6 +2156,11 @@ Unless stated otherwise, it is false.
This is for exclusive use by HTML's navigate algorithm. [[!HTML]] +
A request has an associated WebDriver navigation id +(null or a string). Unless stated otherwise, it is null. + +
This is for exclusive use by HTML's navigate algorithm. [[!HTML]] +
A request has an associated boolean render-blocking. Unless stated otherwise, it is false. @@ -2197,6 +2202,15 @@ otherwise, it is unset. done flag, and timing allow failed flag are used as bookkeeping details by the fetch algorithm. +
A request has an associated +WebDriver id +which is a unique string automatically set when the request is created. + +
The [=request/WebDriver id=] is used by WebDriver-BiDi. It remains constant +across all requests resulting from a redirect of an initial request. When a +request is [=request/cloned=], the created request gets a unique +[=request/WebDriver id=]. [[!WEBDRIVER-BIDI]] +
A subresource request is a request
@@ -2273,7 +2287,9 @@ is to return the result of serializing a request origin with request
 
  Let newRequest be a copy of request, except for its
- body.
+ body and WebDriver id.
+
+  Set newRequest's WebDriver id to a new unique string.
 
   If request's body is non-null, set newRequest's
  body to the result of cloning request's
@@ -4829,6 +4845,11 @@ steps:
      URL, fetchParams's request's
      initiator type, global, cacheState,
      bodyInfo, and responseStatus.
+
+      If response is a network error, run
+     the WebDriver BiDi fetch error steps with request. Otherwise
+     run the WebDriver BiDi response completed steps with
+     request and response.
      Run the [=WebDriver BiDi response started=] steps with
+     request and response.
+     
+
       If one of the following is true
 
@@ -5209,6 +5237,8 @@ these steps:
       WebDriver BiDi cache behavior with request is " Then:
@@ -5297,8 +5327,12 @@ these steps:
 
       Set response to the result of running HTTP-redirect fetch given
-      fetchParams and response. Set response to the result of running HTTP-redirect fetch given
+       fetchParams and response.
+       If WebDriver BiDi cache behavior with request is " If httpRequest's cache mode is " This intentionally does not depend on httpRequest's
     credentials mode.
 
+   
+    Run the WebDriver BiDi before request sent steps with request.
+
     Set httpCache to the result of determining the HTTP cache partition,
    given httpRequest.
 
@@ -5799,6 +5840,8 @@ run these steps:
   If aborted, then return the appropriate network error for
  fetchParams.
 
+  If response is not null, run the WebDriver BiDi response
+ started steps with request and response.
 
  
   Wait until all the HTTP response headers are transmitted.
 
+        Run the [=WebDriver BiDi response started=] steps with
+       |request| and |response|.
+
         Let status be the HTTP response's status code.
 
         If max-age is greater than an imposed limit on
    max-age, then set max-age to the imposed limit.
 
-    If the user agent does not provide for a cache, then
-   return response.
+    If the user agent does not provide for a cache,
+   or WebDriver BiDi cache behavior with request is " For each method in methods for which there is a
    method cache entry match using request, set matching entry's
  
 
    bypass".
     
 
     follow"
      
+      
+       
     
     
   
@@ -5583,6 +5617,9 @@ run these steps:
    default `User-Agent` value) to httpRequest's
    header list.
 
+   bypass, then
+   set httpRequest's cache mode to "no-store".
+
    default" and
    httpRequest's header list contains
    `If-Modified-Since`,
@@ -5704,6 +5741,10 @@ run these steps:
     bypass",
+   then return response.