こんにちは TAG-さん!
I'm requesting a TAG review of expect-no-linked-resources
Document-Policy.
User Agents have implemented speculative parsing of HTML to speculatively fetch resources that are present in the HTML markup, to speed up page loading. For the vast majority of pages on the Web that have resources declared in the HTML markup, the optimization is beneficial and the cost paid in determining such resources is a sound tradeoff. However, the following scenarios might result in a sub-optimal performance tradeoff vs. the explicit time spent parsing HTML for determining sub resources to fetch:
- Pages that do not have any resources declared in the HTML.
- Large HTML pages with minimal or no resource loads that could explicitly control preloading resources via other preload mechanisms available.
This proposal introduces a configuration point in Document Policy expect-no-linked-resources to explicitly state to the User Agent that it may choose to optimize out the time spent in such sub resource determination.
- Explainer¹: https://github.com/explainers-by-googlers/expect-no-linked-resources
- Specification: https://explainers-by-googlers.github.io/expect-no-linked-resources
- WPT Tests: TBD.
- User research: Chrome Origin Trial, M125-M130
- Security and Privacy self-review²: https://explainers-by-googlers.github.io/expect-no-linked-resources/blob/main/privacy-security-questionnaire.md
- GitHub repo: https://github.com/explainers-by-googlers/expect-no-linked-resources
- Primary contacts:
- Alex N. Jose (@alexnj), Google, Author
- Organization/project driving the spfication: Google
- Multi-stakeholder support³:
- Chromium comments: We are excited to have completed the Origin Trial of this feature and are positive about the performance improvement. We are excited to ship this feature to stable.
- Mozilla comments:
- W3C perf WG meeting notes: https://docs.google.com/document/d/1UtBJA6fQa_8dp2pQCQh_7Fg-snwQKq-A298i-jD0_FI/edit?tab=t.0
- whatwg/html#10718 (comment)
- WHATNOT Meeting 2024-11-7 notes: whatwg/html#10734
- WebKit comments:
- whatwg/html#10718 (comment)
- W3C perf WG meeting notes: https://docs.google.com/document/d/1UtBJA6fQa_8dp2pQCQh_7Fg-snwQKq-A298i-jD0_FI/edit?tab=t.0
- WHATNOT Meeting 2024-11-7 notes: whatwg/html#10734
- {{...include feedback/review from developers, implementers, civil society, and others}}
- Status/issue trackers for implementations⁴:
Further details:
- I have reviewed the TAG's Web Platform Design Principles
- The group where the work on this specification is currently being done: Google or WICG
- The group where standardization of this work is intended to be done (if different from the current group): N/A
- Major unresolved issues with or opposition to this specification:
- There is feedback from Mozilla and WebKit around the correctness of relying on hint from the page or web developers. This is however not against the priority of constituencies and very similar optimization to say, preload directives. This improves the user experience, in terms of perceived performance and reduced computation needs on the user's browser by actioning the hint provided by the page about its nature.
- This work is being funded by: Google
You should also know that:
- There was an earlier version of the specification, which was a full HTTP header
Prefer-No-Speculative-Parsing
that direclty tried to control the speculative parser behavior. After consulting W3PerfWG, the header was renamed intoexpect-no-linked-resources
and repositioned as a Document-Policy header, to avoid controlling the scanner behavior directly, and to create a reusable signal that might benefit more usecases.