Intent to Prototype: No-Vary-Search Hint for Prerender Speculation Rules

321 ogledov
Preskoči na prvo neprebrano sporočilo

Liviu Tinta

neprebran,
16. maj 2024, 17:13:4016. maj
do blink-dev

Contact emails

dom...@chromium.orgjbr...@chromium.orgliviu...@chromium.org

Explainer

https://github.com/WICG/nav-speculation/blob/main/triggers.md#no-vary-search-hint

Specification

https://wicg.github.io/nav-speculation/prerendering.html

Summary

Adds a hint to speculation rules that informs the navigation prerender cache that the URL to be prerendered expects to receive the same No-Vary-Search header in the response. The hint is useful because prerenders that depend on No-Vary-Search to match to navigations do not benefit the user if the navigation happens before prerender headers return from the server. Using the hint, the web browser will expect, but verify, that the No-Vary-Search hint matches with the No-Vary-Search header. If the No-Vary-Search hint does not match the No-Vary-Search header received then the web browser will send a new request.



Blink component

Internals>Preload>Prerender

Motivation

Adds a hint to speculation rules that informs the navigation prerender cache that the URL to be prerendered expects to receive the same No-Vary-Search header in the response. The hint is useful because prerenders that depend on No-Vary-Search to match to navigations do not benefit the user if the navigation happens before prerender headers return from the server. Using the hint, the web browser will expect, but verify, that the No-Vary-Search hint matches with the No-Vary-Search header. If the No-Vary-Search hint does not match the No-Vary-Search header received then the web browser will send a new request.



Initial public proposal

https://github.com/WICG/nav-speculation/blob/main/triggers.md#no-vary-search-hint

TAG review

Not applicable. The TAG has already given a negative opinion on the overall complexity of speculation rules (https://github.com/w3ctag/design-reviews/issues/721), so we anticipate it would not be a good use of their time to review additions to the syntax. The addition itself is small and any architectural questions about it would be covered under the general closed speculation rules review.

TAG review status

Not applicable.

Risks



Interoperability and Compatibility

None



Gecko: No signal

WebKit: No signal

Web developers: No signals

Other signalsNo-Vary-Search Hint for Prefetch Speculation Rules has been discussed, together with No-Vary-Search header at Web Perf WG meeting at TPAC 2023. This feature implements the same No-Vary-Search Hint behaviour for prerender Speculation Rules.

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



Debuggability

The No-Vary-Search hint is represented as a new json attribute ("expects_no_vary_search") in prerender Speculation Rules. The Speculation Rules can be viewed in DevTools on the Application tab under Speculative loads->Rules.



Is this feature fully tested by web-platform-tests?

Yes, Web Platform Tests will be added.

Flag name on chrome://flags

None

Finch feature name

Prerender2NoVarySearch - shared with No-Vary-Search support for Prerender 

Non-finch justification

None

Requires code in //chrome?

False

Estimated milestones

No milestones specified



Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5190922953555968?gate=5169870617706496

This intent message was generated by Chrome Platform Status.

Caleb Raitto

neprebran,
17. maj 2024, 16:51:5317. maj
do blink-dev, Liviu Tinta
I noticed the spec, https://github.com/WICG/nav-speculation/blob/main/triggers.md#no-vary-search-hint, doesn't have a privacy and security section -- could you add one? It looks like there's lots of other good information about the privacy and security aspects of this feature in questionnaires and explainers, but the explainer should mention these too.

Thanks, 
-Caleb

On Thursday, May 16, 2024 at 5:13:40 PM UTC-4 Liviu Tinta wrote:

Liviu Tinta

neprebran,
28. maj 2024, 10:49:3228. maj
do blink-dev, Caleb Raitto, Liviu Tinta
Hi Caleb,

Your request will be addressed as part of nav-speculation#319.

Thank you,
Liviu

Caleb Raitto

neprebran,
28. maj 2024, 12:20:0428. maj
do Liviu Tinta, blink-dev
Thanks Liviu!

-Caleb

On Tue, May 28, 2024 at 10:49 AM Liviu Tinta <liviu...@chromium.org> wrote:
Hi Caleb,

Your request will be addressed as part of nav-speculation#319.

Thank you,
Liviu
On Friday, May 17, 2024 at 4:51:53 PM UTC-4 Caleb Raitto wrote:
I noticed the spec, https://github.com/WICG/nav-speculation/blob/main/triggers.md#no-vary-search-hint, doesn't have a privacy and security section -- could you add one? It looks like there's lots of other good information about the privacy and security aspects of this feature in questionnaires and explainers, but the explainer should mention these too.

Thanks, 
-Caleb

On Thursday, May 16, 2024 at 5:13:40 PM UTC-4 Liviu Tinta wrote:
Odgovori vsem
Odgovori avtorju
Posreduj
0 novih sporočil