[wpt-sync] Sync PR 64351 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=329441
Categories
(Core :: DOM: Core & HTML, task, P4)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox162 | --- | fixed |
People
(Reporter: wpt-sync, Unassigned)
References
()
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 64351 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/64351
Details from upstream follow.
Anne van Kesteren <annevk@annevk.nl> wrote:
WebKit export of https://bugs.webkit.org/show_bug.cgi?id=329441
WebKit export from bug: A page in the back/<!---->forward cache shares processes with a document of the page in the same browsing context group
<pre>
A page in the back/forward cache shares processes with a document of the page in the same browsing context groupSince <a href="https://commits.webkit.org/324033@main">324033@main</a>, a same-site navigation can move the main frame to another
process when only one of the documents has a Document-Isolation-Policy. The page
stays in its browsing context group, so the document that goes into the
back/forward cache keeps sharing the group's processes with the new one. A frame
of the new document could then be sent to a process where the page's WebPage is
the cached one, and never load, which made
location-replace-keeps-entry.tentative.https.html time out after
isolate-and-require-corp.tentative.https.html. And evicting the cached document
closed the new document's remote pages.Now, when a document commits, the processes of the page's cached documents in
its group move to groups of their own, with the page's remote pages in them.
Restoring a document moves them back, as long as no other page uses the group.
Otherwise the document is loaded again, or keeps its own group if the other page
only joined during the restore. A cached document with a frame in the process
the new document's main frame started in is dropped from the cache, as that
frame's WebPage became the new document's.WebKit-Bug: <a href="https://bugs.webkit.org/show_bug.cgi?id=329441">https://bugs.webkit.org/show_bug.cgi?id=329441</a>
</pre>
| Assignee | ||
Updated•4 days ago
|
| Assignee | ||
Comment 1•3 days ago
|
||
Pushed to try (stability) https://treeherder.mozilla.org/jobs?repo=try&landoInstance=lando-prod-2025&landoCommitID=118640
| Assignee | ||
Comment 2•2 days ago
|
||
CI Results
Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI
Total 61 tests and 6 subtests
Status Summary
Firefox
OK : 1[GitHub] 54[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug, Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt]
PASS: 181
FAIL: 4[GitHub] 113[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug, Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt]
Chrome
OK : 1
PASS: 3
FAIL: 1
Safari
OK : 1
FAIL: 4
Links
Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base
Details
New Tests That Don't Pass
- /html/document-isolation-policy/reporting-cache-storage-corp.tentative.https.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/reporting-cached-and-service-worker-responses.tentative.https.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/reporting-dedicated-worker.tentative.https.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/reporting-subresource-corp.tentative.https.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/reporting.tentative.https.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/service-worker-coep-credentialless-proxy.https.tentative.window.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/service-worker-coep-none-proxy.https.tentative.window.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/agent-cluster.tentative.https.html [wpt.fyi]
- A document without a policy and a same-origin frame with one cannot access each other:
FAIL - A document with a policy cannot access a same-origin frame without one:
FAIL - An about:blank frame created by a document with a policy inherits it and can be accessed:
FAIL - Navigating the initial about:blank document of a popup to a same-origin document with a policy does not reuse its Window:
FAIL - A document without a policy and a same-origin popup with one cannot access each other:
FAIL - A document with a policy is in an origin-keyed agent cluster:
FAIL - A document without a policy cannot run a javascript: URL in a same-origin frame with one:
FAIL - A navigate event in a same-origin frame without a policy does not expose a link of a document with one as its sourceElement:
FAIL - A same-origin frame without a policy for a navigation from a document with one gets no cross-document navigate event (link):
FAIL - A same-origin frame with a policy for a navigation from a document without one gets no cross-document navigate event (link):
FAIL - A same-origin frame without a policy for a navigation from a document with one gets no cross-document navigate event (window.open()):
FAIL - A same-origin frame with a policy for a navigation from a document without one gets no cross-document navigate event (window.open()):
FAIL - A same-origin frame without a policy for a navigation from a document with one gets no cross-document navigate event (form submission):
FAIL - A same-origin frame with a policy for a navigation from a document without one gets no cross-document navigate event (form submission):
FAIL - A fragment navigation during a reload of a same-origin frame with a policy does not move the reloaded document into another agent cluster:
FAIL - Posting a WebAssembly.Module to a same-origin frame with a policy fails:
FAIL - A frame with a policy that is cross origin with a cross-origin isolated top-level document is not in the agent cluster of same-origin documents without one:
FAIL - A popup with a policy keeps it when its response switches browsing context groups:
FAIL
- A document without a policy and a same-origin frame with one cannot access each other:
- /html/document-isolation-policy/back-forward-cache-frames.tentative.https.html [wpt.fyi]
- A document with a policy and a same-origin child frame without one are restored after a cross-site navigation:
FAIL - A document with a policy and a cross-site child frame without one are restored after a cross-site navigation:
FAIL
- A document with a policy and a same-origin child frame without one are restored after a cross-site navigation:
- /html/document-isolation-policy/back-forward-cache-same-origin-frames.tentative.https.html [wpt.fyi]
- A document without a policy and a same-origin document with one that replaces it can each have a same-origin child frame with the other's policy:
FAIL(Chrome:PASS, Safari:FAIL) - A document with a policy and a same-origin document without one that replaces it can each have a same-origin child frame with the other's policy:
FAIL(Chrome:PASS, Safari:FAIL) - A document without a policy can have a same-origin child frame with a policy after going back past a same-origin document with one and a document of another site:
FAIL(Chrome:PASS, Safari:FAIL) - A document without a policy can have a same-origin child frame with a policy after going back from a same-origin document with one that opened a popup:
FAIL(Chrome:FAIL, Safari:FAIL)
- A document without a policy and a same-origin document with one that replaces it can each have a same-origin child frame with the other's policy:
- /html/document-isolation-policy/back-forward-cache.tentative.https.html [wpt.fyi]
- A document with a policy is restored after a cross-site navigation:
FAIL - A document with a policy is restored after a cross-site navigation to a document with a policy:
FAIL - A document with a policy is restored after a same-origin navigation to a document without one:
FAIL - A document with a policy is restored after a same-origin navigation to a document with a policy:
FAIL - A document with a policy is restored after a same-site navigation to a document with a policy:
FAIL - A document with a policy is restored after a same-origin navigation to a cross-origin isolated document with COOP and COEP:
FAIL
- A document with a policy is restored after a cross-site navigation:
- /html/document-isolation-policy/blob-document-inherits-policy.tentative.https.html [wpt.fyi]
- A blob: document created by a document with a policy inherits it:
FAIL - A blob: document created by a sandboxed document with a policy inherits it:
FAIL
- A blob: document created by a document with a policy inherits it:
- /html/document-isolation-policy/broadcast-channel.tentative.https.html [wpt.fyi]
- A SharedArrayBuffer posted on a BroadcastChannel by a document with a policy fires messageerror at same-origin documents without one:
FAIL - A SharedArrayBuffer posted on a BroadcastChannel by a document with a policy arrives at same-origin documents with one in its agent cluster and shares memory with them:
FAIL
- A SharedArrayBuffer posted on a BroadcastChannel by a document with a policy fires messageerror at same-origin documents without one:
- /html/document-isolation-policy/credentialless-cache-storage-from-credentialless.https.tentative.window.html?dedicated_worker [wpt.fyi]
- [dedicated_worker] isolate-and-credentialless => isolate-and-require-corp:
FAIL
- [dedicated_worker] isolate-and-credentialless => isolate-and-require-corp:
- /html/document-isolation-policy/credentialless-cache-storage-from-credentialless.https.tentative.window.html?service_worker [wpt.fyi]
- [service_worker] isolate-and-credentialless => isolate-and-require-corp:
FAIL
- [service_worker] isolate-and-credentialless => isolate-and-require-corp:
- /html/document-isolation-policy/credentialless-cache-storage-from-credentialless.https.tentative.window.html?shared_worker [wpt.fyi]
- [shared_worker] isolate-and-credentialless => isolate-and-require-corp:
FAIL
- [shared_worker] isolate-and-credentialless => isolate-and-require-corp:
- /html/document-isolation-policy/credentialless-cache-storage-from-credentialless.https.tentative.window.html?document [wpt.fyi]
- [document] isolate-and-credentialless => isolate-and-require-corp:
FAIL
- [document] isolate-and-credentialless => isolate-and-require-corp:
- /html/document-isolation-policy/credentialless-cache-storage-from-none.https.tentative.window.html?document [wpt.fyi]
- [document] none => isolate-and-credentialless:
FAIL - [document] none => isolate-and-require-corp:
FAIL - [document] none => isolate-and-require-corp (omit):
FAIL
- [document] none => isolate-and-credentialless:
- /html/document-isolation-policy/credentialless-cache-storage-from-none.https.tentative.window.html?dedicated_worker [wpt.fyi]
- [dedicated_worker] none => isolate-and-credentialless:
FAIL - [dedicated_worker] none => isolate-and-require-corp:
FAIL - [dedicated_worker] none => isolate-and-require-corp (omit):
FAIL
- [dedicated_worker] none => isolate-and-credentialless:
- /html/document-isolation-policy/credentialless-cache-storage-from-none.https.tentative.window.html?shared_worker [wpt.fyi]
- [shared_worker] none => isolate-and-credentialless:
FAIL - [shared_worker] none => isolate-and-require-corp:
FAIL - [shared_worker] none => isolate-and-require-corp (omit):
FAIL
- [shared_worker] none => isolate-and-credentialless:
- /html/document-isolation-policy/credentialless-cache-storage-from-none.https.tentative.window.html?service_worker [wpt.fyi]
- [service_worker] none => isolate-and-credentialless:
FAIL - [service_worker] none => isolate-and-require-corp:
FAIL - [service_worker] none => isolate-and-require-corp (omit):
FAIL
- [service_worker] none => isolate-and-credentialless:
- /html/document-isolation-policy/credentialless-cache.tentative.window.html [wpt.fyi]
- The HTTP cache must not be used:
FAIL
- The HTTP cache must not be used:
- /html/document-isolation-policy/credentialless-cross-origin-isolated.tentative.window.html [wpt.fyi]
- Main crossOriginIsolated case::
FAIL - Report-only + enforced::
FAIL
- Main crossOriginIsolated case::
- /html/document-isolation-policy/credentialless-dedicated-worker.https.tentative.window.html [wpt.fyi]
- fetch cross-origin + credentialless worker:
FAIL
- fetch cross-origin + credentialless worker:
- /html/document-isolation-policy/credentialless-fetch.https.tentative.window.html [wpt.fyi]
- fetch cross-origin + no-cors + credentials:include:
FAIL
- fetch cross-origin + no-cors + credentials:include:
- /html/document-isolation-policy/credentialless-link.https.tentative.window.html [wpt.fyi]
- link cross-origin + undefined:
FAIL
- link cross-origin + undefined:
- /html/document-isolation-policy/credentialless-redirect.tentative.window.html [wpt.fyi]
- same-origin -> cross-origin:
FAIL - cross-origin -> same-origin:
FAIL - cross-origin -> cross-origin:
FAIL
- same-origin -> cross-origin:
- /html/document-isolation-policy/credentialless-script.https.tentative.window.html [wpt.fyi]
- script cross-origin + undefined:
FAIL
- script cross-origin + undefined:
- /html/document-isolation-policy/credentialless-service-worker.https.tentative.window.html [wpt.fyi]
- fetch cross-origin + credentialless worker:
FAIL
- fetch cross-origin + credentialless worker:
- /html/document-isolation-policy/credentialless-shared-worker.https.tentative.window.html?request_origin=cross_origin&worker_dip=credentialless&window_dip=credentialless [wpt.fyi]
- credentialless-shared-worker:
FAIL
- credentialless-shared-worker:
- /html/document-isolation-policy/credentialless-shared-worker.https.tentative.window.html?request_origin=cross_origin&worker_dip=credentialless&window_dip=none [wpt.fyi]
- credentialless-shared-worker:
FAIL
- credentialless-shared-worker:
- /html/document-isolation-policy/credentialless-video.https.tentative.window.html [wpt.fyi]
- video cross-origin + undefined:
FAIL
- video cross-origin + undefined:
- /html/document-isolation-policy/cross-origin-isolated-permissions-policy-nested.tentative.https.html [wpt.fyi]
- A cross-origin frame with isolate-and-require-corp without allow="cross-origin-isolated" is cross-origin isolated, but its child without a policy isn't:
FAIL
- A cross-origin frame with isolate-and-require-corp without allow="cross-origin-isolated" is cross-origin isolated, but its child without a policy isn't:
- /html/document-isolation-policy/cross-origin-isolated-permissions-policy.tentative.https.html [wpt.fyi]
- A cross-origin frame with isolate-and-require-corp without allow="cross-origin-isolated" is cross-origin isolated and can serialize a SharedArrayBuffer:
FAIL - A same-origin frame with isolate-and-require-corp and allow="cross-origin-isolated 'none'" is cross-origin isolated and can serialize a SharedArrayBuffer:
FAIL - A cross-origin frame with isolate-and-require-corp and allow="cross-origin-isolated" is cross-origin isolated and can serialize a SharedArrayBuffer:
FAIL
- A cross-origin frame with isolate-and-require-corp without allow="cross-origin-isolated" is cross-origin isolated and can serialize a SharedArrayBuffer:
- /html/document-isolation-policy/cross-origin-isolated.tentative.https.html [wpt.fyi]
- A popup with isolate-and-require-corp is cross-origin isolated and exposes SharedArrayBuffer:
FAIL - A same-origin frame with isolate-and-require-corp in a document without a policy is cross-origin isolated and exposes SharedArrayBuffer:
FAIL - A cross-origin frame with isolate-and-require-corp and allow="cross-origin-isolated" in a document without a policy is cross-origin isolated and exposes SharedArrayBuffer:
FAIL - An about:blank popup opened by a popup with isolate-and-require-corp is cross-origin isolated and exposes SharedArrayBuffer:
FAIL - A frame navigated to about:blank in a popup with isolate-and-require-corp is cross-origin isolated and exposes SharedArrayBuffer:
FAIL - A srcdoc frame in a popup with isolate-and-require-corp is cross-origin isolated and exposes SharedArrayBuffer:
FAIL - A data: URL document that a document with isolate-and-require-corp navigates a frame without a policy to is cross-origin isolated and exposes SharedArrayBuffer:
FAIL
- A popup with isolate-and-require-corp is cross-origin isolated and exposes SharedArrayBuffer:
- /html/document-isolation-policy/dedicated-worker.tentative.https.html [wpt.fyi]
- A dedicated worker of a popup with isolate-and-require-corp is cross-origin isolated and exposes SharedArrayBuffer:
FAIL - A dedicated worker started by a dedicated worker of a popup with isolate-and-require-corp is cross-origin isolated and exposes SharedArrayBuffer:
FAIL - A blob: URL dedicated worker of a popup with isolate-and-require-corp is cross-origin isolated and exposes SharedArrayBuffer:
FAIL - A dedicated worker of a popup with isolate-and-require-corp can't retrieve a cross-origin response without CORP from CacheStorage:
FAIL - A SharedArrayBuffer posted by a popup with isolate-and-require-corp to its dedicated worker arrives and shares memory with it:
FAIL - A SharedArrayBuffer posted by a dedicated worker of a popup with isolate-and-require-corp to the popup arrives and shares memory with it:
FAIL
- A dedicated worker of a popup with isolate-and-require-corp is cross-origin isolated and exposes SharedArrayBuffer:
- /html/document-isolation-policy/header-parsing.tentative.https.html [wpt.fyi]
- policy applied for ["isolate-and-require-corp"]:
FAIL - policy applied for [" isolate-and-require-corp "]:
FAIL - policy applied for ["\tisolate-and-require-corp\t"]:
FAIL - policy applied for [" \tisolate-and-require-corp"]:
FAIL - policy applied for ["isolate-and-require-corp\t "]:
FAIL - policy applied for ["isolate-and-require-corp; foo=bar"]:
FAIL - policy applied for ["isolate-and-require-corp;isolate-and-require-corp"]:
FAIL - policy applied for ["isolate-and-require-corp; report-to="endpoint""]:
FAIL
- policy applied for ["isolate-and-require-corp"]:
- /html/document-isolation-policy/isolate-and-require-corp-load-from-cache-storage.tentative.https.html [wpt.fyi]
- Fetch cross-origin no-cors cors-disabled corp-undefined from network and CacheStorage.:
FAIL - Fetch cross-origin no-cors cors-enabled corp-undefined from network and CacheStorage.:
FAIL
- Fetch cross-origin no-cors cors-disabled corp-undefined from network and CacheStorage.:
- /html/document-isolation-policy/isolate-and-require-corp.tentative.https.html [wpt.fyi]
- "isolate-and-require-corp" top-level: fetch() to cross-origin response without CORP should fail:
FAIL
- "isolate-and-require-corp" top-level: fetch() to cross-origin response without CORP should fail:
- /html/document-isolation-policy/location-replace-keeps-entry.tentative.https.html [wpt.fyi]
- A frame's document replaced by a same-origin one with a policy keeps the session history entry:
FAIL - A popup's document replaced by a same-origin one with a policy keeps the session history entry:
FAIL
- A frame's document replaced by a same-origin one with a policy keeps the session history entry:
- /html/document-isolation-policy/message-channel.tentative.https.html [wpt.fyi]
- A SharedArrayBuffer posted over a MessageChannel by a document with a policy fires messageerror at its same-origin frame without one:
FAIL - A SharedArrayBuffer posted over a MessageChannel by a document with a policy arrives at its same-origin frame with one and shares memory with it:
FAIL
- A SharedArrayBuffer posted over a MessageChannel by a document with a policy fires messageerror at its same-origin frame without one:
- /html/document-isolation-policy/origin-agent-cluster.tentative.https.html [wpt.fyi]
- A document with a policy that sends Origin-Agent-Cluster: ?0 is in an origin-keyed agent cluster:
FAIL - After a document with a policy, a same-origin document without one that sends Origin-Agent-Cluster: ?0 is in a site-keyed agent cluster:
FAIL - After a document with a policy, a same-origin document without one that sends Origin-Agent-Cluster: ?1 is in an origin-keyed agent cluster:
FAIL
- A document with a policy that sends Origin-Agent-Cluster: ?0 is in an origin-keyed agent cluster:
- /html/document-isolation-policy/partial-deployment.tentative.https.html [wpt.fyi]
- A document without a policy and its same-origin frame with one can post messages to each other:
FAIL - A document without a policy and its same-origin frame with one only have the cross-origin members of each other's Window and Location objects:
FAIL - A document with a policy and its same-origin frame without one can post messages to each other:
FAIL - A document with a policy and its same-origin frame without one only have the cross-origin members of each other's Window and Location objects:
FAIL
- A document without a policy and its same-origin frame with one can post messages to each other:
- /html/document-isolation-policy/shared-array-buffer.tentative.https.html [wpt.fyi]
- A SharedArrayBuffer posted by a popup with isolate-and-require-corp to its same-origin frame with isolate-and-require-corp arrives and shares memory with it:
FAIL - A SharedArrayBuffer posted by a popup with isolate-and-require-corp to its same-origin frame with isolate-and-credentialless arrives and shares memory with it:
FAIL - A SharedArrayBuffer posted by a popup with isolate-and-require-corp to its same-origin frame without a policy fires messageerror at the frame:
FAIL
- A SharedArrayBuffer posted by a popup with isolate-and-require-corp to its same-origin frame with isolate-and-require-corp arrives and shares memory with it:
- /html/document-isolation-policy/shared-workers.tentative.https.html [wpt.fyi]
- "isolate-and-require-corp" (derived from response):
FAIL - isolate-and-require-corp (derived from blob URL creator):
FAIL - "isolate-and-require-corp" (derived from owner set due to use of local scheme - blob URL):
FAIL - "isolate-and-require-corp" (derived from owner set due to use of local scheme - data URL):
FAIL
- "isolate-and-require-corp" (derived from response):
- /html/document-isolation-policy/window-reuse.tentative.https.html [wpt.fyi]
- A frame's initial about:blank document created by a document without a policy that navigates to a same-origin document with a policy does not reuse its Window:
FAIL - A frame's initial about:blank document created by a document with a policy that navigates to a same-origin document without a policy does not reuse its Window:
FAIL - A popup's initial about:blank document created by a document with a policy that navigates to a same-origin document without a policy does not reuse its Window:
FAIL
- A frame's initial about:blank document created by a document without a policy that navigates to a same-origin document with a policy does not reuse its Window:
Tests Disabled in Gecko Infrastructure
- /html/document-isolation-policy/reporting-cache-storage-corp.tentative.https.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/reporting-cached-and-service-worker-responses.tentative.https.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/reporting-dedicated-worker.tentative.https.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/reporting-subresource-corp.tentative.https.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/reporting.tentative.https.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/service-worker-coep-credentialless-proxy.https.tentative.window.html [wpt.fyi]:
SKIP - /html/document-isolation-policy/service-worker-coep-none-proxy.https.tentative.window.html [wpt.fyi]:
SKIP
Comment 4•10 hours ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/74eec6205ba4
https://hg.mozilla.org/mozilla-central/rev/8c21c2749b8e
Description
•