Testing: Serviceworker test with and without ServiceWorker gives very different results in Chrome.
Without SW all images are requested immediately and received in parallel.
On the second run, when ServiceWorker kicks in, “waiting” state appears all over the waterfall. Image requests are significantly delayed, and responses arrive one by one, instead of being streamed in parallel.
ServiceWorker in this case is intentionally the most basic one:
On further testing I think it is the loading of the ServiceWorker js which stops Chrome from requesting the images with same priority until the ServiceWorker is loaded. Then the images are requested in parallel. WPT appears to display information about the request to the SW rather than the SW fetch to the origin. I’m not entirely sure where the HTTP/1.1 protocol and Priority LOWEST.