Contact emails

*jbro...@chromium.org <jbro...@chromium.org>, adith...@chromium.org
<adith...@chromium.org>, isabo...@google.com <isabo...@google.com>,
dome...@chromium.org <dome...@chromium.org>, kenjibah...@chromium.org
<kenjibah...@chromium.org>*Explainer


*https://github.com/WICG/nav-speculation/blob/main/triggers.md
<https://github.com/WICG/nav-speculation/blob/main/triggers.md>https://github.com/w3c/resource-timing/issues/332
<https://github.com/w3c/resource-timing/issues/332>*Specification


*https://wicg.github.io/nav-speculation/speculation-rules.html
<https://wicg.github.io/nav-speculation/speculation-rules.html>https://github.com/w3c/resource-timing/pull/343
<https://github.com/w3c/resource-timing/pull/343>https://github.com/WICG/nav-speculation/pull/180
<https://github.com/WICG/nav-speculation/pull/180>*Summary






*Three enhancements to preloading, under a combined experiment:An extension
to speculation rules syntax that lets the browser obtain URLs for
speculation from link elements in a page. They may include criteria which
restrict which of these links can be used.Currently developers can only
specify speculation rules using inline script tags.  The proposed feature
provides an alternative through the "Speculation-Rules" header. Its value
must be a URL to a text resource with "application/speculationrules+json"
MIME type. The resource's rules will be added to the document's rule
set.Expose information about how a resource was delivered. For example,
resources which were delivered from the cache (currently exposed through
transferSize) and navigations which were prefetched by the previous page
are useful to identify.An overview of this experiment is drafted (once
reviewed, this will be merged into
WICG/nav-speculation):https://github.com/jeremyroman/nav-speculation/blob/experiment-summary/chrome-2023q1-experiment-overview.md
<https://github.com/jeremyroman/nav-speculation/blob/experiment-summary/chrome-2023q1-experiment-overview.md>Of
particular note is that due to the oddity of needing to enable the origin
trial for a potentially third-party origin serving speculation rules, this
trial will be enabled for third-party use and with a bit of special logic
allowing the OT token to be supplied in the document response headers,
providing its origin matches the origin of the external speculation
rules.*Blink
component


*Internals>Preload
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Internals%3EPreload>*TAG
review


*https://github.com/w3ctag/design-reviews/issues/721
<https://github.com/w3ctag/design-reviews/issues/721>*TAG review status


*Pending*Risks

Interoperability and Compatibility







*Because authors cannot rely on speculation rules being evaluated (or
preloading generally), applications which use them should function
correctly in other browsers and should continue to function correctly were
the feature to be deprecated. Of course, ideally other browsers do find it
compelling to implement this feature.Gecko: No signal
(https://github.com/mozilla/standards-positions/issues/620
<https://github.com/mozilla/standards-positions/issues/620>)WebKit: No
signal (https://github.com/WebKit/standards-positions/issues/54
<https://github.com/WebKit/standards-positions/issues/54>)Web developers:
We built these enhancements specifically upon requests from partners that
found the current speculation rules too hard to integrate into their sites,
and have at least one partner lined up to participate in the origin
trial.Other signals:*Activation



*Some developers might not be immediately aware of which URLs they can
preload without side effects. This risk is reduced if they primarily use
the feature for same-origin URL patterns they are familiar with.*Security



*See
https://wicg.github.io/nav-speculation/speculation-rules.html#security-considerations
<https://wicg.github.io/nav-speculation/speculation-rules.html#security-considerations>.*WebView
application risks



*None that are specifically anticipated.*Goals for experimentation





*We're hoping to gain experience about the ergonomics and impact of
declarative browser-driven preloading of links in the document, tuning
heuristics to provide useful tradeoffs, and refining the API surface to be
easy to use.We're hoping to confirm that the Speculation-Rules header is a
useful way for servers to deliver speculation rules, that the ergonomics
work sufficiently well, and that this fetch does not have adverse
performance effects.Finally, we would like to validate that this API shape
of PerformanceResourceTiming's deliveryType allows developers to
conveniently distinguish how a document resource was delivered.*Ongoing
technical constraints



*At this time the constraints are believed to be minimal.*Debuggability




*Preloading and speculation rules fetches which occur are both visible in
the Network panel and the in-development Preloading panel. Console warnings
are logged when several types of issues are encountered.See,
e.g.https://bugs.chromium.org/p/chromium/issues/detail?id=1315706
<https://bugs.chromium.org/p/chromium/issues/detail?id=1315706>https://bugs.chromium.org/p/chromium/issues/detail?id=1384419
<https://bugs.chromium.org/p/chromium/issues/detail?id=1384419>*Will this
feature be supported on all six Blink platforms (Windows, Mac, Linux,
Chrome OS, Android, and Android WebView)?


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


*Yes*Flag name


*Origin trial name "SpeculationRulesPrefetchFuture", spanning multiple
underlying feature flags.*Requires code in //chrome?


*False*Tracking bug


*https://bugs.chromium.org/p/chromium/issues/detail?id=1371522
<https://bugs.chromium.org/p/chromium/issues/detail?id=1371522>https://bugs.chromium.org/p/chromium/issues/detail?id=1366940
<https://bugs.chromium.org/p/chromium/issues/detail?id=1366940>https://bugs.chromium.org/p/chromium/issues/detail?id=1358591
<https://bugs.chromium.org/p/chromium/issues/detail?id=1358591>*Estimated
milestones



*110-115 (inclusive) on all Chrome platforms*Link to entry on the Chrome
Platform Status


*https://chromestatus.com/feature/5112150536749056
<https://chromestatus.com/feature/5112150536749056>https://chromestatus.com/feature/5069400512659456
<https://chromestatus.com/feature/5069400512659456>https://chromestatus.com/feature/6347141115543552
<https://chromestatus.com/feature/6347141115543552>*Links to previous
Intent discussions

Intents to prototype:

https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CA%2B5JZsPqZakqnGx2zgreGEfRCJ1Xrr16cL2gcqGF7577dFhvsw%40mail.gmail.com

https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAC2TYLVmZ%2BC%3Dct9VkfMi86RmypyfDOc14o1O4%3DiynRy%2B3rnyxg%40mail.gmail.com

https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACuR13cZU8%3D7Ka3SWSf4E2dgDuhRRBRt_fGgDeC6d%3DqHP%3Durrw%40mail.gmail.com

This intent message was generated by Chrome Platform Status
<https://chromestatus.com/> (or rather, three of them were, and then mashed
together).

-- 
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 on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACuR13fCBTneL%2BmDJewBQ81A3otF9Ux4aXBVcjthkT6hfQfHJg%40mail.gmail.com.

Reply via email to