Re: [w3ctag/design-reviews] Deprecating `document.domain`. (#564)

If we use Origin-Agent-Cluster for this purpose then it will effectively become tri-state instead of boolean:

- `Origin-Agent-Cluster: ?1` means "I would really like an origin-keyed agent cluster, ideally with a separate process, because I have done measurements and that helps my site perform better, and I don't use `document.domain`"
- `Origin-Agent-Cluster: ?0` means "I definitely use `document.domain` and so I cannot be put into an origin-keyed agent cluster and need to share a process with other same-site cross-origin pages"
- Missing header means "I don't use `document.domain`, so I will go into an origin-keyed agent cluster. But, it's up to the browser to apply heuristics and determine whether that means a separate process or a shared process; I have not done any measurements to figure out whether a separate process is a good tradeoff for me".

I think this is reasonable, although a bit subtle. Having a separate switch specifically for `document.domain` is more explicit, but it creates a 2x2 matrix where one of the entries is an error:

- `Origin-Agent-Cluster: ?0` + `Document-Policy: document-domain=?0` means heuristics for process/separate agent cluster
- `Origin-Agent-Cluster: ?0` + `Document-Policy: document-domain=?1` means shared process/shared agent cluster
- `Origin-Agent-Cluster: ?1` + `Document-Policy: document-domain=?0` means separate process/separate agent cluster
- `Origin-Agent-Cluster: ?1` + `Document-Policy: document-domain=?1` is a conflict and we'd have to pick one of those to win

(but in this 2x2 matrix version, everything is really a boolean; there is no tri-state "boolean".)

-- 
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/564#issuecomment-921063032

Received on Thursday, 16 September 2021 16:45:21 UTC