Skip to content

Commit 8620da3

Browse files
committed
Define how cross-origin isolated impacts BCGs
BCGs being browsing context groups.
1 parent 087431d commit 8620da3

File tree

1 file changed

+23
-12
lines changed

1 file changed

+23
-12
lines changed

source

Lines changed: 23 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -89471,31 +89471,35 @@ import "https://example.com/foo/../module2.mjs";</code></pre>
8947189471
ensure that web developers see interoperable behavior with regard to shared memory, even in the
8947289472
face of varying and changing user agent process models.</p>
8947389473

89474+
<p>An <span>agent cluster</span> has an associated <dfn>cross-origin isolated</dfn> (a boolean),
89475+
which is initially false.</p>
89476+
<!-- TODO: maybe this should move into the eventual COEP PR as it impacts shared workers? -->
89477+
89478+
8947489479
<div w-nodev>
8947589480

8947689481
<hr>
8947789482

8947889483
<p>The following defines the allocation of the <span data-x="agent cluster">agent clusters</span>
8947989484
of <span data-x="similar-origin window agent">similar-origin window agents</span>.</p>
8948089485

89481-
<p>An <dfn>agent cluster key</dfn> is a <span>site</span>.</p>
89482-
89483-
<p class="XXX"><a href="https://github.com/whatwg/html/pull/4734">whatwg/html #4734</a> is
89484-
expected to widen <span>agent cluster key</span> (but not <span>site</span>) to encompass all
89485-
<span data-x="concept-origin-tuple">tuple origins</span>.</p>
89486-
89487-
<p>To <dfn data-x="obtain-agent-cluster-key">obtain an agent cluster key</dfn>, given an origin
89488-
<var>origin</var>, return the result of <span data-x="obtain a site">obtaining a site</span> with
89489-
<var>origin</var>.</p>
89486+
<p>An <dfn>agent cluster key</dfn> is a <span>site</span> or <span
89487+
data-x="concept-origin-tuple">tuple origin</span> whose <span
89488+
data-x="concept-origin-host">host</span>'s <span>registrable domain</span> is non-null. I.e., an
89489+
<span>agent cluster key</span> can be any <span>origin</span>.</p>
8949089490

8949189491
<p>To <dfn data-x="obtain-similar-origin-window-agent">obtain a similar-origin window agent</dfn>,
8949289492
given an <span>origin</span> <var>origin</var> and <span>browsing context group</span>
8949389493
<var>group</var>, run these steps:</p>
8949489494

8949589495
<ol>
89496-
<li><p>Let <var>clusterKey</var> be the result of <span
89497-
data-x="obtain-agent-cluster-key" data-export="">obtaining an agent cluster key</span> given
89498-
<var>origin</var>.</p></li>
89496+
<li><p>Let <var>clusterKey</var> be the result of <span data-x="obtain a site">obtaining a
89497+
site</span> with <var>origin</var>.</p></li>
89498+
89499+
<li><p>If <var>group</var>'s <dfn data-x="bcg cross-origin isolated">cross-origin isolated</dfn>
89500+
is true, then set <var>clusterKey</var> to <var>origin</var>.</p></li>
89501+
<!-- TODO: this is not the place to <dfn> this, but doing this for now so the build does not
89502+
fail. https://github.com/whatwg/html/pull/5334 will take care of this. -->
8949989503

8950089504
<li><p>Let <var>agentCluster</var> be the result of <span
8950189505
data-x="obtain-browsing-agent-cluster">obtaining a browsing context agent cluster</span> with
@@ -89508,14 +89512,21 @@ import "https://example.com/foo/../module2.mjs";</code></pre>
8950889512
<p>To <dfn data-x="obtain-browsing-agent-cluster">obtain a browsing context agent cluster</dfn>,
8950989513
given a <span>browsing context group</span> <var>group</var> and <span>agent cluster key</span>
8951089514
<var>key</var>, run these steps:</p>
89515+
<!-- Question: why not fold this into the above algorithm? Does it really need to be separate?
89516+
Might even add some clarity around the return value of the above algorithm. -->
8951189517

8951289518
<ol>
8951389519
<li>
8951489520
<p>If <var>group</var>'s <span>agent cluster map</span>[<var>key</var>] <span data-x="map
8951589521
exists">does not exist, then:</span></p>
89522+
8951689523
<ol>
8951789524
<li><p>Let <var>agentCluster</var> be a new <span>agent cluster</span>.</p></li>
8951889525

89526+
<li><p>If <var>group</var>'s <span data-x="bcg cross-origin isolated">cross-origin
89527+
isolated</span> is true, then set <var>agentCluster</var>'s <span>cross-origin isolated</span>
89528+
to true.</p></li>
89529+
8951989530
<li><p>Add the result of <span data-x="create an agent">creating an agent</span>, given false,
8952089531
to <var>agentCluster</var>.</p></li>
8952189532

0 commit comments

Comments
 (0)