Contact emails

sisidov...@chromium.org

Explainer

https://github.com/explainers-by-googlers/service-worker-auto-preload

Specification

None yet, we’ll write one after the experiment.

Summary

ServiceWorkerAutoPreload is the mode where the browser issues the network
request in parallel with the ServiceWorker bootstrap, and consumes the
network request result inside the fetch handler if the fetch handler
returns the response with respondwith. If the fetch handler result is
fallback, pass the response directly to the browser.


Blink component

Blink>ServiceWorker
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EServiceWorker>

TAG review

https://github.com/w3ctag/design-reviews/issues/963

TAG review status

Pending

Risks

Interoperability and Compatibility

For compatibility risks, the main concern is about how this feature works
with the navigation preload API. But we don't think this feature introduces
major compatibility issues because this feature respects the navigation
preload API, and is not exposed when the navigation preload API is already
enabled.

The only cost is the server side cost to respond to the network requests,
which may not be used if the fetch handler returns a result from the disk
cache. This cost can be mitigated by applying the feature only for websites
that meet some criteria e.g. fetch handler always fallback to the network


Gecko: No signal (https://github.com/mozilla/standards-positions/issues/1036
)

WebKit: No signal (https://github.com/WebKit/standards-positions/issues/359)

Web developers: No signals

Other signals:

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


Goals for experimentation

Our intent is to run a Finch experiment on 1% Stable instead of Origin
Trials, because this feature is only exposed with heuristics and it doesn't
have an API surface.

We run the experiment to evaluate the potential impact of
ServiceWorkerAutoPreload on the loading metrics. And also we’d like to
gather inputs and feedback to decide a reasonable criteria, or conditions
to enable ServiceWorkerAutoPreload when it’s fully launched.

Conversely, currently we don’t have a plan to ship this feature as it is
without any criteria or conditions.

Experiment Risks

The cost of this feature is to increase the server side cost to respond to
the network requests. For the experiment, we are going to enable the
feature on 1% traffic.

Ongoing technical constraints

None


Debuggability

We have a plan to show some info when the preload requests by this feature
are triggered on DevTools. It's tracked in crbug.com/344912796


Will this feature be supported on all six Blink platforms (Windows, Mac,
Linux, ChromeOS, Android, and Android WebView)?

No

Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?

No

Currently we don't have WPT tests. As this feature is only exposed with
heuristics and it doesn't have an API surface, it's not testable on the WPT
infrastructure.


Flag name on about://flags

#service-worker-auto-preload

Finch feature name

ServiceWorkerAutoPreload

Requires code in //chrome?

False

Estimated milestones

Estimated milestones are for Finch, not for the Origin Trials.

desktop first 131

desktop last 136

Android first 131

Android last 136

Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5194817700364288?gate=5100561098866688

Links to previous Intent discussions

Intent to Prototype:
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGMyg-btkw3n_k0Vr9GgW%2B_c%2BT5K%3D_1_BPFstqAVi0y%3DxxT-pg%40mail.gmail.com


This intent message was generated by Chrome Platform Status
<https://chromestatus.com/>.

-- 
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 blink-dev+unsubscr...@chromium.org.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGMyg-YF1qRNkBUPGxN-GgDGG3yvqCijZ56QEQYgNA4a9YrfMg%40mail.gmail.com.

Reply via email to