jbr...@chromium.org, adit...@chromium.org, isab...@google.com, dom...@chromium.org, kenji...@chromium.org
https://github.com/WICG/nav-speculation/blob/main/triggers.md
https://github.com/w3c/resource-timing/issues/332
https://wicg.github.io/nav-speculation/speculation-rules.html
https://github.com/w3c/resource-timing/pull/343
https://github.com/WICG/nav-speculation/pull/180
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):
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.
https://github.com/w3ctag/design-reviews/issues/721
Pending
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)
WebKit: No signal (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:
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.
See https://wicg.github.io/nav-speculation/speculation-rules.html#security-considerations.
None that are specifically anticipated.
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.
At this time the constraints are believed to be minimal.
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=1384419
Yes
Yes
Origin trial name "SpeculationRulesPrefetchFuture", spanning multiple underlying feature flags.
False
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=1358591
110-115 (inclusive) on all Chrome platforms
https://chromestatus.com/feature/5112150536749056
https://chromestatus.com/feature/5069400512659456
https://chromestatus.com/feature/6347141115543552
Intents to prototype:
This intent message was generated by Chrome Platform Status (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+...@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.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
Hi Jeremy,We've been reviewing this intent as part of the S&P review process and had a few questions:
- Does the document rules only apply to same-origin links in the page?
- Is the delivery type gated behind TAO?
Thanks!Camille
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.