Origin isolation refers to segregating cross-origin documents into separate agent clusters. Translated into developer-observable effects, this means:
- preventing the
document.domain
setter from relaxing the same-origin policy; and - preventing
SharedArrayBuffer
s from being shared with cross-origin (but same-site) documents.
If a developer chooses to give up these capabilities, then the browser has more flexibility in how it allocates resources like processes, threads, and event loops.
This proposal allows web applications to give up these capabilities for their origin, and also hint at why they are doing so, to better guide the browser in its resource allocation decisions. This is done via an origin policy.
See the full explainer for more details.
Note: Upon posting this topic, I learned that there was a previous proposal of the same name back in 2016 posted to WICG Discourse. It seems that my modern proposal represents an refinement of the 2016 proposal to focus on specific cases related to isolating same-site, cross-origin documents from synchronously accessing each other.
This proposal is being prototyped behind a flag in Chrome, and has a designation of “worth prototyping” from Mozilla, so I am hopeful it can migrate to WICG forthwith.