[w3ctag/design-reviews] Early Design Review: document.prerendering (#613)

HIQaH! QaH! TAG!

I'm requesting a TAG review of `document.prerendering`.

We propose introducing a boolean property `document.prerendering` and associated change event to distinguish prerendering browsing contexts from regular ones for next-generation prerendering on the web, described more broadly at https://github.com/jeremyroman/alternate-loading-modes.


  - Explainer¹: [prerendering-state](https://github.com/jeremyroman/alternate-loading-modes/blob/main/prerendering-state.md). We also have a [draft spec](https://jeremyroman.github.io/alternate-loading-modes/#prerendering-bcs). (The spec is more broad but `document.prerendering` and related concepts are specified in "Prerendering browsing context infrastructure" section)
  - Security and Privacy self-review²: [prerendering-state-privacy-questionnaire.md](https://github.com/jeremyroman/alternate-loading-modes/blob/main/prerendering-state-privacy-questionnaire.md)
  - GitHub repo: https://github.com/jeremyroman/alternate-loading-modes

  - Primary contacts:
      - David Bokan (@bokand), Google
  - Organization/project driving the design: Google - Chrome Prerendering
  - External status/issue trackers for this feature: https://chromestatus.com/feature/5355965538893824


Further details:

  - [:heavy_check_mark:] I have reviewed the TAG's [API Design Principles](https://w3ctag.github.io/design-principles/)
  - The group where the incubation/design work on this is being done: WICG (future)
  - The group where standardization of this work is intended to be done: WHATWG
  - Existing major pieces of multi-stakeholder review or discussion of this design: 
    - Nothing substantial in terms of multi-stakeholder reviews, but there's some background on the problems with using pageVisibility for prerendering state in https://github.com/w3c/page-visibility/issues/59.

    - I've also discussed with with the WebPerf WG in https://github.com/w3c/page-visibility/issues/69

  - Major unresolved issues with or opposition to this design: N/A
  - This work is being funded by: Google

You should also know that...

This is a small piece of a large effort to bring back prerendering in a more predictable and standardized way. The entirety of the prerendering feature is a very large body of work so we thought it be good to separate out parts of it, where it makes sense, for ease of review. This feature would only ship as part of a larger launch of a new prerendering mode.

Also, old versions of prerendering used a special value of the `document.visibilityState` API for this purpose, but it has since been unshipped and [removed from the spec](https://github.com/w3c/page-visibility/issues/42). We've considered whether to bring that back but believe it had some shortcomings (noted in https://github.com/w3c/page-visibility/issues/59) and would be better addressed by an API not tied to visibility.

We'd prefer the TAG provide feedback as:

  💬 leave review feedback as a **comment in this issue** and @-notify @bokand

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3ctag/design-reviews/issues/613

Received on Monday, 1 March 2021 13:48:01 UTC