Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b63b8ad3e3888a79049ca9bfdc75d7f1190fe70a
      
https://github.com/WebKit/WebKit/commit/b63b8ad3e3888a79049ca9bfdc75d7f1190fe70a
  Author: Qianlang Chen <[email protected]>
  Date:   2026-07-08 (Wed, 08 Jul 2026)

  Changed paths:
    M 
LayoutTests/http/tests/site-isolation/inspector/debugger/resources/site-isolation-debugger-test-utilities.js
    M 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-network-events-have-correct-frame-id-expected.txt
    M 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-network-events-have-correct-frame-id.html
    M 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-network-loading-finished-expected.txt
    M 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-network-loading-finished.html
    M 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-resource-appears-in-network-domain-expected.txt
    M 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-resource-appears-in-network-domain.html
    R 
LayoutTests/http/tests/site-isolation/inspector/network/resources/iframe-with-abort.html
    A 
LayoutTests/http/tests/site-isolation/inspector/network/resources/iframe-with-failed-fetch.html
    R 
LayoutTests/http/tests/site-isolation/inspector/network/resources/slow-response.py
    M LayoutTests/platform/mac-wk2/TestExpectations

  Log Message:
  -----------
  [Site Isolation] Web Inspector: ProxyingNetworkAgent tests fail despite 
completed event-routing work
https://bugs.webkit.org/show_bug.cgi?id=318380

Reviewed by BJ Burg.

Fix the three skipped site-isolation/inspector/network tests. There were
three problems, where fixing one revealed another:

1. We were executing commands on the wrong frame target. Under SI, a
   cross-origin iframe is represented by two WI.FrameTargets: a
   placeholder created in the parent process (from
   WebFrameProxy::didCreateSubframe, isProvisional=false, where the
   iframe's JavaScript never runs) and the real target created in the
   iframe's own process (from ProvisionalFrameProxy /
   didCreateProvisionalFrame, isProvisional=true, where the execution
   context is created). The tests selected a target with a single-shot
   WI.targetManager.awaitEvent(TargetAdded), which would usually return
   the parent-process placeholder.

   Fix this by declaring the cross-origin iframe statically in the page
   instead, which should already be committed when the test runs.

2. We were comparing frame IDs that use two different string formats.
   we asserted iframe attribution by string-comparing resource.parentFrame.id
   against frameTarget.identifier. Those encode the same (frameID,
   processID) pair in different formats -- the Network protocol uses
   "frame-<process>.<frame>" (InspectorIdentifierRegistry::protocolFrameId)
   while target identifiers use "frame-<frame>-<process>" 
(FrameInspectorTarget::toTargetID)
   so they never match.

   Replace the comparison with a semantic check that the resource's
   parent frame is a direct child of the main frame.

3. The abort case asserted the wrong thing and couldn't test the fail
   path. It expected an aborted fetch to fire loadingFailed, but
   aborting a fetch is reported as a finished load (I verified this
   against the page target, which behaved the same with SI off,
   because canceling a fetch doesn't cancel the underlying loader).

   Fix this by triggering a genuine network-level failure (a fetch to a
   dead port), which goes through SubresourceLoader::didFail and
   exercises loadingFailed routing through ProxyingNetworkAgent, the
   fail path the original test was reaching for.

Filed bug 318836 as a follow-up to potentially add more test cases.

* 
LayoutTests/http/tests/site-isolation/inspector/debugger/resources/site-isolation-debugger-test-utilities.js:
(TestPage.registerInitializer.window.frameTargetForURLContaining.async 
frameTargetForURLContaining):
* 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-network-events-have-correct-frame-id-expected.txt:
* 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-network-events-have-correct-frame-id.html:
* 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-network-loading-finished-expected.txt:
* 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-network-loading-finished.html:
* 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-resource-appears-in-network-domain-expected.txt:
* 
LayoutTests/http/tests/site-isolation/inspector/network/cross-origin-iframe-resource-appears-in-network-domain.html:
* 
LayoutTests/http/tests/site-isolation/inspector/network/resources/iframe-with-abort.html:
 Removed.
* 
LayoutTests/http/tests/site-isolation/inspector/network/resources/iframe-with-failed-fetch.html:
 Added.
* 
LayoutTests/http/tests/site-isolation/inspector/network/resources/slow-response.py:
 Removed.
* LayoutTests/platform/mac-wk2/TestExpectations:

Canonical link: https://commits.webkit.org/316759@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to