Expose initiatorUrl in resourceTiming for html initiators [chromium/src : main]

0 views
Skip to first unread message

Guohui Deng (Gerrit)

unread,
Mar 27, 2025, 2:04:58 PMMar 27
to Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
Attention needed from Ian Clelland, Noam Rosenthal and Yoav Weiss (@Shopify)

Guohui Deng added 1 comment

Patchset-level comments
File-level comment, Patchset 1 (Latest):
Guohui Deng . resolved

This CL calculates the resource initiator using
BuildInitiatorObejct() that's used by devTool, Except for using "TaskAttribution" instead of "V8_Inspector_StackTrace".

This CL already achieves more than
https://chromium-review.googlesource.com/c/chromium/src/+/4812813 and
https://chromium-review.googlesource.com/c/chromium/src/+/5242518 combined.

And I think I am very close to solve the "JS initiator" and "CSS initiator".

Other unsovled cases are:
1. A main html initiates another html file in a subframe;
2. Worker thread fetchs (not sure if this requires an additional code path)

--
I would like to highlight the following: (that I think there may be possible objects)

1. There is some overlap with Devtool code. Could potentially consolidate. For our purpose "TaskAttribution" is better because it seems faster and it does tell the script url. (whereas StackTrace seems to tell the file name only), so it looks to me a complete consolidate is not likely though.

2. I propose that the `initiator info` is only provided for the resource loaded from the network. This reduces overhead of the Chromium(When not loading from network, resources load fast so it's important to reduce overhead), simplifies both implementation and how the information is used to construct resource dependency tree. We could further discuss at
https://github.com/w3c/resource-timing/issues/263

Thanks for reviewing!
Guohui

Open in Gerrit

Related details

Attention is currently required from:
  • Ian Clelland
  • Noam Rosenthal
  • Yoav Weiss (@Shopify)
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Review
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
Gerrit-Change-Number: 6397615
Gerrit-PatchSet: 1
Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
Gerrit-Reviewer: Noam Rosenthal <nrose...@chromium.org>
Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
Gerrit-CC: Annie Sullivan <sull...@chromium.org>
Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
Gerrit-CC: Nate Chapin <jap...@chromium.org>
Gerrit-CC: Paul Irish <paul...@chromium.org>
Gerrit-Attention: Noam Rosenthal <nrose...@chromium.org>
Gerrit-Attention: Ian Clelland <icle...@chromium.org>
Gerrit-Attention: Yoav Weiss (@Shopify) <yoav...@chromium.org>
Gerrit-Comment-Date: Thu, 27 Mar 2025 18:04:45 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Yoav Weiss (@Shopify) (Gerrit)

unread,
Mar 27, 2025, 3:39:49 PMMar 27
to Guohui Deng, Noam Rosenthal, Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
Attention needed from Guohui Deng, Ian Clelland and Noam Rosenthal

Yoav Weiss (@Shopify) added 1 comment

Patchset-level comments
Yoav Weiss (@Shopify) . resolved

Thank you so much for working on this!! I'll review next week (traveling this week)

Open in Gerrit

Related details

Attention is currently required from:
  • Guohui Deng
  • Ian Clelland
  • Noam Rosenthal
Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
Gerrit-Comment-Date: Thu, 27 Mar 2025 19:39:38 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Yoav Weiss (@Shopify) (Gerrit)

unread,
Apr 7, 2025, 7:12:21 AMApr 7
to Guohui Deng, Noam Rosenthal, Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
Attention needed from Guohui Deng, Ian Clelland and Noam Rosenthal

Yoav Weiss (@Shopify) added 1 comment

Patchset-level comments
Yoav Weiss (@Shopify) . resolved

Apologies. I failed to review this and I'm traveling this week..

Noam - could you take a look?

Gerrit-Comment-Date: Mon, 07 Apr 2025 11:12:12 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Noam Rosenthal (Gerrit)

unread,
Apr 7, 2025, 11:13:56 AMApr 7
to Guohui Deng, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
Attention needed from Guohui Deng and Ian Clelland

Noam Rosenthal added 5 comments

Patchset-level comments
Noam Rosenthal . resolved

Nice work, did a first pass

Commit Message
Line 7, Patchset 1 (Latest):Expose initiatorUrl in resourceTiming for html initiators
Noam Rosenthal . unresolved

Can you explain in one sentence what this is, andd add a link to spec/chromestatus? Is there an I2P for this?

File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
Line 145, Patchset 1 (Latest): while (document && !document->GetScriptableDocumentParser()) {
Noam Rosenthal . unresolved

Why are we going up the frame owner chain?

File third_party/blink/renderer/platform/blink_platform_unittests_bundle_data.filelist
Line 22, Patchset 1 (Latest):../../web_tests/external/wpt/fonts/Lato-Medium-Liga.ttf
Noam Rosenthal . unresolved

What are these for?

File third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h
Line 43, Patchset 1 (Latest): initiator_url("") {}
Noam Rosenthal . unresolved

Unnecessary line

Open in Gerrit

Related details

Attention is currently required from:
  • Guohui Deng
  • Ian Clelland
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 1
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@chromium.org>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Mon, 07 Apr 2025 15:13:45 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    Apr 8, 2025, 3:53:20 PMApr 8
    to Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland and Noam Rosenthal

    Guohui Deng added 4 comments

    Commit Message
    Line 7, Patchset 1:Expose initiatorUrl in resourceTiming for html initiators
    Noam Rosenthal . unresolved

    Can you explain in one sentence what this is, andd add a link to spec/chromestatus? Is there an I2P for this?

    Guohui Deng

    I rewrote the commit message. I added the link to chromestatus. No spec PR though :(

    I sent the I2P email and updated the chromestatus page with the link to the I2P email.

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 145, Patchset 1: while (document && !document->GetScriptableDocumentParser()) {
    Noam Rosenthal . unresolved

    Why are we going up the frame owner chain?

    Guohui Deng

    Thank you for catching that! I removed the code that goes up the frame owner chain.

    I think the devTool code goes up the frame owner chain because it requires a "line position". For ResourceTiming we need the most accurate resource identification so we shouldn't go up the frame owner chain.

    File third_party/blink/renderer/platform/blink_platform_unittests_bundle_data.filelist
    Line 22, Patchset 1:../../web_tests/external/wpt/fonts/Lato-Medium-Liga.ttf
    Noam Rosenthal . resolved

    What are these for?

    Guohui Deng

    Sorry I should have made some explanation here. Back then when this CL was running CQ, something else was broken so I had to add the two lines. Later someone else added the two lines. After I rebase, the two lines are no longer part of this CL.

    File third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h
    Line 43, Patchset 1: initiator_url("") {}
    Noam Rosenthal . unresolved

    Unnecessary line

    Guohui Deng

    Removed. Additionally, I added "checking null value" in performance_resource_timing.cc

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Noam Rosenthal
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 4
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@chromium.org>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@chromium.org>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Comment-Date: Tue, 08 Apr 2025 19:53:10 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Noam Rosenthal <nrose...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    Apr 11, 2025, 12:14:42 PMApr 11
    to Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland and Noam Rosenthal

    Guohui Deng added 1 comment

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 132, Patchset 5 (Latest): // TODO(guohu...@microsoft.com): Find out if the initiator is a script
    // resource. If yes, fill |initiator_ulr| accordingly and return.
    Guohui Deng . resolved

    Update:

    In Yosh's CL, `TaskAttribution` was used to determine if the JS is loading resource dynamically, so I was using the same code here before.

    Then I tried the next step: using the TaskAttribution to distinguish between:

    1) iframe loaded in html statically
    2) iframe loaded by javascript dynamically

    I found out that TaskAttribution no longer works for this purpose. I contacted Scott (shaseley@). The TaskAttribution is still under development, and we could extend TaskAttribution to support this. So there is some work to do in TaskAttribution for the "initiator info" project.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Noam Rosenthal
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 5
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@chromium.org>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@chromium.org>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Comment-Date: Fri, 11 Apr 2025 16:14:32 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Noam Rosenthal (Gerrit)

    unread,
    May 7, 2025, 4:04:32 AMMay 7
    to Guohui Deng, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng and Ian Clelland

    Noam Rosenthal voted and added 3 comments

    Votes added by Noam Rosenthal

    Code-Review+1

    3 comments

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 49, Patchset 5 (Latest):#include "third_party/blink/renderer/platform/scheduler/public/task_attribution_tracker.h"
    Noam Rosenthal . unresolved

    Check if all these includes are needed

    Line 145, Patchset 1: while (document && !document->GetScriptableDocumentParser()) {
    Noam Rosenthal . resolved

    Why are we going up the frame owner chain?

    Guohui Deng

    Thank you for catching that! I removed the code that goes up the frame owner chain.

    I think the devTool code goes up the frame owner chain because it requires a "line position". For ResourceTiming we need the most accurate resource identification so we shouldn't go up the frame owner chain.

    Noam Rosenthal

    Acknowledged

    File third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h
    Line 43, Patchset 1: initiator_url("") {}
    Noam Rosenthal . resolved

    Unnecessary line

    Guohui Deng

    Removed. Additionally, I added "checking null value" in performance_resource_timing.cc

    Noam Rosenthal

    Acknowledged

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 5
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Wed, 07 May 2025 08:04:20 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    Comment-In-Reply-To: Noam Rosenthal <nrose...@google.com>
    Comment-In-Reply-To: Guohui Deng <guohu...@microsoft.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    May 7, 2025, 5:29:37 PMMay 7
    to Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland and Noam Rosenthal

    Guohui Deng added 1 comment

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 49, Patchset 5:#include "third_party/blink/renderer/platform/scheduler/public/task_attribution_tracker.h"
    Noam Rosenthal . resolved

    Check if all these includes are needed

    Guohui Deng

    Done

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Noam Rosenthal
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 6
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Comment-Date: Wed, 07 May 2025 21:29:26 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Noam Rosenthal <nrose...@google.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Noam Rosenthal (Gerrit)

    unread,
    May 21, 2025, 3:54:40 AMMay 21
    to Guohui Deng, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng and Ian Clelland

    Noam Rosenthal voted and added 1 comment

    Votes added by Noam Rosenthal

    Code-Review-1

    1 comment

    Patchset-level comments
    File-level comment, Patchset 6 (Latest):
    Noam Rosenthal . resolved

    Please link to at least a public explainer before submitting further code changes.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is blockingCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 6
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Wed, 21 May 2025 07:54:23 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    blocking_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    May 21, 2025, 12:02:35 PMMay 21
    to Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland and Noam Rosenthal

    Guohui Deng added 1 comment

    Patchset-level comments
    Noam Rosenthal . resolved

    Please link to at least a public explainer before submitting further code changes.

    Guohui Deng

    Done.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Noam Rosenthal
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is blockingCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 7
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Comment-Date: Wed, 21 May 2025 16:02:26 +0000
    satisfied_requirement
    blocking_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    May 21, 2025, 1:51:06 PMMay 21
    to Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland and Noam Rosenthal

    Guohui Deng added 1 comment

    Patchset-level comments
    File-level comment, Patchset 6:
    Noam Rosenthal . unresolved

    Please link to at least a public explainer before submitting further code changes.

    Guohui Deng

    Done.

    Guohui Deng

    I mean I added the explainer link in the commit message. There is also an explainer link in third_party/blink/renderer/core/timing/performance_resource_timing.idl.

    I updated the link to the one in MicrosoftEdge repo because they require that I put the explainer there. That should be accessible to the public. Is it O.K.?

    Gerrit-Comment-Date: Wed, 21 May 2025 17:50:57 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Noam Rosenthal <nrose...@google.com>
    Comment-In-Reply-To: Guohui Deng <guohu...@microsoft.com>
    satisfied_requirement
    blocking_requirement
    unsatisfied_requirement
    open
    diffy

    Noam Rosenthal (Gerrit)

    unread,
    May 21, 2025, 1:59:07 PMMay 21
    to Guohui Deng, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng and Ian Clelland

    Noam Rosenthal voted and added 2 comments

    Votes added by Noam Rosenthal

    Code-Review-1

    2 comments

    Patchset-level comments
    File-level comment, Patchset 6:
    Noam Rosenthal . resolved

    Please link to at least a public explainer before submitting further code changes.

    Guohui Deng

    Done.

    Guohui Deng

    I mean I added the explainer link in the commit message. There is also an explainer link in third_party/blink/renderer/core/timing/performance_resource_timing.idl.

    I updated the link to the one in MicrosoftEdge repo because they require that I put the explainer there. That should be accessible to the public. Is it O.K.?

    Noam Rosenthal

    Acknowledged

    Commit Message
    Line 7, Patchset 1:Expose initiatorUrl in resourceTiming for html initiators
    Noam Rosenthal . resolved

    Can you explain in one sentence what this is, andd add a link to spec/chromestatus? Is there an I2P for this?

    Guohui Deng

    I rewrote the commit message. I added the link to chromestatus. No spec PR though :(

    I sent the I2P email and updated the chromestatus page with the link to the I2P email.

    Noam Rosenthal

    Done

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is blockingCode-Review
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 7
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Wed, 21 May 2025 17:58:55 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    blocking_requirement
    open
    diffy

    Noam Rosenthal (Gerrit)

    unread,
    May 21, 2025, 2:26:07 PMMay 21
    to Guohui Deng, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng and Ian Clelland

    Noam Rosenthal voted and added 2 comments

    Votes added by Noam Rosenthal

    Code-Review+0

    2 comments

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 130, Patchset 7 (Latest): // resource. If yes, fill |initiator_ulr| accordingly and return.
    Noam Rosenthal . unresolved
    ulr -> url
    ```suggestion
    // resource. If yes, fill |initiator_url| accordingly and return.
    ```
    Line 178, Patchset 7 (Latest): Resource* resource) {
    Noam Rosenthal . unresolved

    Hmm not sure about this. I don't know about the design of filling the initiator info in an "observer". It seems surprising because obsrver usually don't change what they observe.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 7
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Wed, 21 May 2025 18:25:46 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    May 21, 2025, 3:39:22 PMMay 21
    to AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland and Noam Rosenthal

    Guohui Deng added 2 comments

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 130, Patchset 7: // resource. If yes, fill |initiator_ulr| accordingly and return.
    Noam Rosenthal . resolved
    ulr -> url
    ```suggestion
    // resource. If yes, fill |initiator_url| accordingly and return.
    ```
    Guohui Deng

    Done

    Line 178, Patchset 7: Resource* resource) {
    Noam Rosenthal . unresolved

    Hmm not sure about this. I don't know about the design of filling the initiator info in an "observer". It seems surprising because obsrver usually don't change what they observe.

    Guohui Deng
    It's indeed not common.

    The logic is here because it is not possible to implement it in platform/loader. The logic satisfies all the conditions listed here:
    https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/platform/loader/fetch/resource_load_observer.h;l=28;drc=c76e4f83a8c5786b463c3e55c070a21ac751b96b

    There is actually a precedence in `ResourceLoadObserverForFrame` that the observer modifies the data it receives.
    Notice the ` (... BlobDataHandle* blob) ` isn't "const" in `DidDownloadToBlob(...)`
    (https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc;l=286)
    Eventually, the ownership of `blob` is transferred to a collection of inspector agents, see:
    https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/inspector/inspector_network_agent.cc;l=1663;drc=c76e4f83a8c5786b463c3e55c070a21ac751b96b;bpv=1;bpt=1

    I think the most important reason for `ResourceLoadObserver` is that it's a place where we can add react logic to individual "load" that cannot happen in platform/loader folder. Modification to the observed data should be allowed here, although it's not common.

    The main problem here is actually the name "observer", rather than the design that code in `platform/loader` calls into `core/loader` for something that cannot be in `platform/loader`. The alternative is to rename "observer" to something else. But then someone may object, reasoning that observer can modify things occasionally if it has to, and the name "observer" is suitable except for that we don't modify the data usually.

    What do you think?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Noam Rosenthal
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 8
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Comment-Date: Wed, 21 May 2025 19:39:12 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    May 21, 2025, 10:31:29 PMMay 21
    to AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland and Noam Rosenthal

    Guohui Deng added 1 comment

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 178, Patchset 7: Resource* resource) {
    Noam Rosenthal . unresolved

    Hmm not sure about this. I don't know about the design of filling the initiator info in an "observer". It seems surprising because obsrver usually don't change what they observe.

    Guohui Deng
    It's indeed not common.

    The logic is here because it is not possible to implement it in platform/loader. The logic satisfies all the conditions listed here:
    https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/platform/loader/fetch/resource_load_observer.h;l=28;drc=c76e4f83a8c5786b463c3e55c070a21ac751b96b

    There is actually a precedence in `ResourceLoadObserverForFrame` that the observer modifies the data it receives.
    Notice the ` (... BlobDataHandle* blob) ` isn't "const" in `DidDownloadToBlob(...)`
    (https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc;l=286)
    Eventually, the ownership of `blob` is transferred to a collection of inspector agents, see:
    https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/inspector/inspector_network_agent.cc;l=1663;drc=c76e4f83a8c5786b463c3e55c070a21ac751b96b;bpv=1;bpt=1

    I think the most important reason for `ResourceLoadObserver` is that it's a place where we can add react logic to individual "load" that cannot happen in platform/loader folder. Modification to the observed data should be allowed here, although it's not common.

    The main problem here is actually the name "observer", rather than the design that code in `platform/loader` calls into `core/loader` for something that cannot be in `platform/loader`. The alternative is to rename "observer" to something else. But then someone may object, reasoning that observer can modify things occasionally if it has to, and the name "observer" is suitable except for that we don't modify the data usually.

    What do you think?

    Guohui Deng

    For this CL, I think I can avoid this problem by making a separate callback/call_back_class that's explicitly named `InitiatorInfoCalculator`.(Which is parallel to this `ResourceLoadObserverForFrame` class). In future if we have more callbacks that modify the observed data, we can have a container class called `ResourceLoadCallbacksForFrame`.

    But I don't quite like it because it's very verbose and it's duplicate to this `ResourceLoadObserverForFrame` class.

    Alternatively, we can put all the callbacks in the same container(i.e., the current `ResourceLoadObserverForFrame`). Because some modifies the observed data, we don't call this container "observer". So we could rename this class `ResourceLoadObserverForFrame` to `ResourceLoadCallbacksForFrame`. This approach is simpler, but it's a big change. I don't know if someone would object.

    Would appreciate any thoughts shared! Thanks!

    Gerrit-Comment-Date: Thu, 22 May 2025 02:31:19 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Noam Rosenthal <nrose...@google.com>
    Comment-In-Reply-To: Guohui Deng <guohu...@microsoft.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    May 22, 2025, 6:04:25 PMMay 22
    to AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland and Noam Rosenthal

    Guohui Deng added 1 comment

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 178, Patchset 7: Resource* resource) {
    Noam Rosenthal . unresolved

    Hmm not sure about this. I don't know about the design of filling the initiator info in an "observer". It seems surprising because obsrver usually don't change what they observe.

    Guohui Deng
    It's indeed not common.

    The logic is here because it is not possible to implement it in platform/loader. The logic satisfies all the conditions listed here:
    https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/platform/loader/fetch/resource_load_observer.h;l=28;drc=c76e4f83a8c5786b463c3e55c070a21ac751b96b

    There is actually a precedence in `ResourceLoadObserverForFrame` that the observer modifies the data it receives.
    Notice the ` (... BlobDataHandle* blob) ` isn't "const" in `DidDownloadToBlob(...)`
    (https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc;l=286)
    Eventually, the ownership of `blob` is transferred to a collection of inspector agents, see:
    https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/inspector/inspector_network_agent.cc;l=1663;drc=c76e4f83a8c5786b463c3e55c070a21ac751b96b;bpv=1;bpt=1

    I think the most important reason for `ResourceLoadObserver` is that it's a place where we can add react logic to individual "load" that cannot happen in platform/loader folder. Modification to the observed data should be allowed here, although it's not common.

    The main problem here is actually the name "observer", rather than the design that code in `platform/loader` calls into `core/loader` for something that cannot be in `platform/loader`. The alternative is to rename "observer" to something else. But then someone may object, reasoning that observer can modify things occasionally if it has to, and the name "observer" is suitable except for that we don't modify the data usually.

    What do you think?

    Guohui Deng

    For this CL, I think I can avoid this problem by making a separate callback/call_back_class that's explicitly named `InitiatorInfoCalculator`.(Which is parallel to this `ResourceLoadObserverForFrame` class). In future if we have more callbacks that modify the observed data, we can have a container class called `ResourceLoadCallbacksForFrame`.

    But I don't quite like it because it's very verbose and it's duplicate to this `ResourceLoadObserverForFrame` class.

    Alternatively, we can put all the callbacks in the same container(i.e., the current `ResourceLoadObserverForFrame`). Because some modifies the observed data, we don't call this container "observer". So we could rename this class `ResourceLoadObserverForFrame` to `ResourceLoadCallbacksForFrame`. This approach is simpler, but it's a big change. I don't know if someone would object.

    Would appreciate any thoughts shared! Thanks!

    Guohui Deng

    Sorry I cannot edit my previous comment. Let me make some corrections and clarifications. Below are two options that I am considering:

    Option 1. Rename `ResourceLoadObserver' class to `ResourceLoadClient`
    Option 2. Use a partially bound `RepeatingCallback` named `fill_initiator_info_cb_`. This callback is set from `core/loader` and called in `platform/loader`

    1) has larger footprint, while 2) is a little hacky.

    Gerrit-Comment-Date: Thu, 22 May 2025 22:04:14 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Kouhei Ueno (Gerrit)

    unread,
    May 26, 2025, 3:45:28 AMMay 26
    to Guohui Deng, Yoshisato Yanagisawa, Nidhi Jaju, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng, Ian Clelland, Nidhi Jaju, Noam Rosenthal and Yoshisato Yanagisawa

    Kouhei Ueno added 1 comment

    Patchset-level comments
    File-level comment, Patchset 8 (Latest):
    Kouhei Ueno . resolved

    yyanagisawa: Would you review this CL since this is a significant change to core/loading stack?
    nidhi: Would you review the performance impact of the change (since you are looking into URL handling optimizations)?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    • Nidhi Jaju
    • Noam Rosenthal
    • Yoshisato Yanagisawa
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 8
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Kouhei Ueno <kou...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Mon, 26 May 2025 07:45:09 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Nidhi Jaju (Gerrit)

    unread,
    May 27, 2025, 12:56:21 AMMay 27
    to Guohui Deng, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng, Ian Clelland, Noam Rosenthal and Yoshisato Yanagisawa

    Nidhi Jaju added 2 comments

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 133, Patchset 8 (Latest): UrlWithoutFragment(document->Url()).GetString();
    Nidhi Jaju . unresolved

    Can we just store the KURL, similar to initial_url/name? Or even wait to remove the fragment identifier until the property is accessed, so that we don't need to scan the entire URL if not necessary?

    File third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc
    Line 3135, Patchset 8 (Latest): resource->Options().initiator_info.initiator_url,
    Nidhi Jaju . unresolved

    It seems like this is the only place where you pass in a non-empty value for initiator_url. Do we need to pass it in, or can we just call FillInitiatorInfo() or just a setter when we need to?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    • Noam Rosenthal
    • Yoshisato Yanagisawa
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Tue, 27 May 2025 04:55:51 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    May 27, 2025, 12:39:01 PMMay 27
    to Yoshisato Yanagisawa, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland, Nidhi Jaju, Noam Rosenthal and Yoshisato Yanagisawa

    Guohui Deng added 2 comments

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 133, Patchset 8 (Latest): UrlWithoutFragment(document->Url()).GetString();
    Nidhi Jaju . unresolved

    Can we just store the KURL, similar to initial_url/name? Or even wait to remove the fragment identifier until the property is accessed, so that we don't need to scan the entire URL if not necessary?

    Guohui Deng

    Yes, that's a great idea. I Will update accordingly in the patchset after I receive more feedback from yyanagisawa. (continued in the next comment).

    File third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc
    Line 3135, Patchset 8 (Latest): resource->Options().initiator_info.initiator_url,
    Nidhi Jaju . unresolved

    It seems like this is the only place where you pass in a non-empty value for initiator_url. Do we need to pass it in, or can we just call FillInitiatorInfo() or just a setter when we need to?

    Guohui Deng

    Yes, I will do that(using a setter) in the next patchset.
    I will do the following:

    1) the url is stored in `KURL` before added to `ResourceTimingInfo`. It will be added using a setter.
    2) I will not process the URL here. The sites can process it in a worker thread or on there server.

    (FYI in my next step I plan to add a couple of more locations where the `initiator_url` is added to `ResourceTimingInfo`. I will follow the same rules stated above.)

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Nidhi Jaju
    • Noam Rosenthal
    • Yoshisato Yanagisawa
    Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Comment-Date: Tue, 27 May 2025 16:38:51 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Nidhi Jaju <nidh...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    Jun 2, 2025, 4:39:46 PMJun 2
    to Yoshisato Yanagisawa, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland, Noam Rosenthal and Yoshisato Yanagisawa

    Guohui Deng added 1 comment

    Patchset-level comments
    Guohui Deng . resolved

    @yyana...@chromium.org: Hi, would you please take a look once you have a chance? Thanks a lot.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Noam Rosenthal
    • Yoshisato Yanagisawa
    Gerrit-Comment-Date: Mon, 02 Jun 2025 20:39:35 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Yoshisato Yanagisawa (Gerrit)

    unread,
    Jun 3, 2025, 12:11:10 AMJun 3
    to Guohui Deng, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng, Ian Clelland and Noam Rosenthal

    Yoshisato Yanagisawa added 1 comment

    Patchset-level comments
    Yoshisato Yanagisawa . resolved

    Do you have a CL to describe the final shape of the changes?
    Or, is it possible to chain the CL to what happens next?
    The newly added initiator_url fields usually looks to take "", which I suppose will be updated later.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    • Noam Rosenthal
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Tue, 03 Jun 2025 04:10:41 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    Jun 3, 2025, 11:34:42 AMJun 3
    to Yoshisato Yanagisawa, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland, Noam Rosenthal and Yoshisato Yanagisawa

    Guohui Deng added 1 comment

    Patchset-level comments
    Yoshisato Yanagisawa . unresolved

    Do you have a CL to describe the final shape of the changes?
    Or, is it possible to chain the CL to what happens next?
    The newly added initiator_url fields usually looks to take "", which I suppose will be updated later.

    Guohui Deng

    There are only two spots where the `initiator_url` is expected to be updated later. They are `resource_load_observer_for_worker.cc` and `html_frame_owner_element.cc`.

    The reason is that I plan to only track the network downloaded resources, and I may not track all of them.

    The `resource_load_observer_for_worker.cc` is similar to this one. `html_frame_owner_element.cc` change can be see here:
    https://chromium-review.googlesource.com/c/chromium/src/+/6357989/17/third_party/blink/renderer/core/html/html_frame_owner_element.cc
    (It's a draft but it shows what I plan to do)

    It would be much easier for me to review this one without making all the rest ready. I have a long way to go :) The next step is blocked by some work I need to do in `TaskAttribution`, which I am working on right now.

    If you think we need all the rest of the CLs to be ready, I will do. Maybe I can make some CLs that are not complete?(with `TODO`s because we cannot decide on Javascript initiators)

    Please let me know. Thanks!

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Noam Rosenthal
    • Yoshisato Yanagisawa
    Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Comment-Date: Tue, 03 Jun 2025 15:34:26 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    Jun 3, 2025, 12:13:47 PMJun 3
    to Yoshisato Yanagisawa, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland, Noam Rosenthal and Yoshisato Yanagisawa

    Guohui Deng added 1 comment

    Patchset-level comments
    Yoshisato Yanagisawa . unresolved

    Do you have a CL to describe the final shape of the changes?
    Or, is it possible to chain the CL to what happens next?
    The newly added initiator_url fields usually looks to take "", which I suppose will be updated later.

    Guohui Deng

    There are only two spots where the `initiator_url` is expected to be updated later. They are `resource_load_observer_for_worker.cc` and `html_frame_owner_element.cc`.

    The reason is that I plan to only track the network downloaded resources, and I may not track all of them.

    The `resource_load_observer_for_worker.cc` is similar to this one. `html_frame_owner_element.cc` change can be see here:
    https://chromium-review.googlesource.com/c/chromium/src/+/6357989/17/third_party/blink/renderer/core/html/html_frame_owner_element.cc
    (It's a draft but it shows what I plan to do)

    It would be much easier for me to review this one without making all the rest ready. I have a long way to go :) The next step is blocked by some work I need to do in `TaskAttribution`, which I am working on right now.

    If you think we need all the rest of the CLs to be ready, I will do. Maybe I can make some CLs that are not complete?(with `TODO`s because we cannot decide on Javascript initiators)

    Please let me know. Thanks!

    Guohui Deng

    Actually, I think, I can do the following:

    1) Make a separate file, somewhere under `/render/core`, in the file I implement`FillInitiatorInfo` functions (two versions, for resource vs page)

    2) Use these functions in `/render/core/loader/resource_load_observer_for_frame.cc`, `/renderer/core/loader/resource_load_observer_for_worder.cc` and `/renderer/core/html/html_frame_owner_element.cc`

    What do you think?

    Additionally, what do you think that I rename `ResourceLoadObserver` to `ResourceLoadClient`?

    Gerrit-Comment-Date: Tue, 03 Jun 2025 16:13:35 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
    Comment-In-Reply-To: Guohui Deng <guohu...@microsoft.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    Jun 4, 2025, 5:48:16 PMJun 4
    to Yoshisato Yanagisawa, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland, Noam Rosenthal and Yoshisato Yanagisawa

    Guohui Deng added 1 comment

    Patchset-level comments
    File-level comment, Patchset 10 (Latest):
    Guohui Deng . resolved

    @yyana...@chromium.org:

    I modified this CL according to Nidhi's suggestion; and there are no more places `CreateResourceTimingInfo` taking "" parameter. I am not sure if this is what you mean by it takes "" in many places, but they are gone.

    I made a new CL that is chained after this one to illustrate what the final shape of this project would be. It's better than the old link I posted before that combines two steps.

    This CL has been up for more than two months already, and I am eager to move this forward. Would you please take a look as soon as possible? Especially, can you advise on whether I can rename `ResourceLoadObserverForFrame`? This is a big change and it really needs someone who owns this folder to decide.

    Thanks a lot.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Noam Rosenthal
    • Yoshisato Yanagisawa
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 10
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Kouhei Ueno <kou...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Comment-Date: Wed, 04 Jun 2025 21:48:08 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Nidhi Jaju (Gerrit)

    unread,
    Jun 5, 2025, 2:41:29 AMJun 5
    to Guohui Deng, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng, Ian Clelland, Noam Rosenthal and Yoshisato Yanagisawa

    Nidhi Jaju added 3 comments

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 107, Patchset 10 (Latest):// TODO(guohu...@micrisoft.com): Consider consolidating the calculation.
    Nidhi Jaju . unresolved

    nit:
    ```suggestion
    // TODO(guohu...@microsoft.com): Consider consolidating the calculation.
    ```

    File third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h
    Line 55, Patchset 10 (Latest): String initiator_url;
    Nidhi Jaju . unresolved

    I think we want to store an `AtomicString` here similar to `name`. This means that `PopulateAndResourceTimingInfo` would then just be setting the `AtomicString` on the mojo call, and `PerformanceResourceTiming::initiatorUrl()` wouldn't need to make the `AtomicString` every time it's called, it could just return the `AtomicString` directly.

    File third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc
    Line 3135, Patchset 8: resource->Options().initiator_info.initiator_url,
    Nidhi Jaju . unresolved

    It seems like this is the only place where you pass in a non-empty value for initiator_url. Do we need to pass it in, or can we just call FillInitiatorInfo() or just a setter when we need to?

    Guohui Deng

    Yes, I will do that(using a setter) in the next patchset.
    I will do the following:

    1) the url is stored in `KURL` before added to `ResourceTimingInfo`. It will be added using a setter.
    2) I will not process the URL here. The sites can process it in a worker thread or on there server.

    (FYI in my next step I plan to add a couple of more locations where the `initiator_url` is added to `ResourceTimingInfo`. I will follow the same rules stated above.)

    Nidhi Jaju

    I will do the following:

    > 1) the url is stored in KURL before added to ResourceTimingInfo. It will be added using a setter.


    2) I will not process the URL here. The sites can process it in a worker thread or on there server.

    Do you plan to do this?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Thu, 05 Jun 2025 06:41:01 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Nidhi Jaju <nidh...@chromium.org>
    Comment-In-Reply-To: Guohui Deng <guohu...@microsoft.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Yoshisato Yanagisawa (Gerrit)

    unread,
    Jun 5, 2025, 6:30:15 AMJun 5
    to Guohui Deng, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng, Ian Clelland and Noam Rosenthal

    Yoshisato Yanagisawa added 2 comments

    Patchset-level comments
    Yoshisato Yanagisawa . unresolved

    Do you have a CL to describe the final shape of the changes?
    Or, is it possible to chain the CL to what happens next?
    The newly added initiator_url fields usually looks to take "", which I suppose will be updated later.

    Guohui Deng

    There are only two spots where the `initiator_url` is expected to be updated later. They are `resource_load_observer_for_worker.cc` and `html_frame_owner_element.cc`.

    The reason is that I plan to only track the network downloaded resources, and I may not track all of them.

    The `resource_load_observer_for_worker.cc` is similar to this one. `html_frame_owner_element.cc` change can be see here:
    https://chromium-review.googlesource.com/c/chromium/src/+/6357989/17/third_party/blink/renderer/core/html/html_frame_owner_element.cc
    (It's a draft but it shows what I plan to do)

    It would be much easier for me to review this one without making all the rest ready. I have a long way to go :) The next step is blocked by some work I need to do in `TaskAttribution`, which I am working on right now.

    If you think we need all the rest of the CLs to be ready, I will do. Maybe I can make some CLs that are not complete?(with `TODO`s because we cannot decide on Javascript initiators)

    Please let me know. Thanks!

    Guohui Deng

    Actually, I think, I can do the following:

    1) Make a separate file, somewhere under `/render/core`, in the file I implement`FillInitiatorInfo` functions (two versions, for resource vs page)

    2) Use these functions in `/render/core/loader/resource_load_observer_for_frame.cc`, `/renderer/core/loader/resource_load_observer_for_worder.cc` and `/renderer/core/html/html_frame_owner_element.cc`

    What do you think?

    Additionally, what do you think that I rename `ResourceLoadObserver` to `ResourceLoadClient`?

    Yoshisato Yanagisawa

    Sorry for the slow reply, it actually does not need to be a chain of CLs. However, I hope to see the design doc that explains the final picture.

    I just followed the CLs you linked in the CL description and found https://docs.google.com/document/d/1ODMUQP9ua-0plxe0XhDds6aPCe_paZS6Cz1h1wdYiKU/edit?tab=t.0. It explains how you are going to change Chromium, but I feel details different from what you are doing with this CL and https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/ResourceTimingInitiatorInfo/explainer.md.

    Is it possible for you to update the design doc or create a new design doc to tell the full picture?
    If you need to rename a class name, I hope to know the rationale. People who will read the code in the future, who can sometimes be ourselves, should want to understand why we did this.

    I feel guilty on pushing back after making you wait long, but my LGTM brings certain size of approval in the code, and I want to do that with confidence.

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 107, Patchset 10 (Latest):// TODO(guohu...@micrisoft.com): Consider consolidating the calculation.
    Nidhi Jaju . unresolved

    nit:
    ```suggestion
    // TODO(guohu...@microsoft.com): Consider consolidating the calculation.
    ```

    Yoshisato Yanagisawa

    I know old Chromium code still use TODO(somebody@name) style but currently TODO(crbug.com/xxx) is recommended because:
    1. we can write more context in the crbug.
    2. easy to delegate the task to somebody.
    3. easy to discuss on the issue with the dedicated ID.

    Will you file a new crbug and use it (or linked to the existing crbug)?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    • Noam Rosenthal
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Thu, 05 Jun 2025 10:29:41 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    Jun 5, 2025, 6:37:32 PMJun 5
    to Yoshisato Yanagisawa, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland, Nidhi Jaju, Noam Rosenthal and Yoshisato Yanagisawa

    Guohui Deng added 5 comments

    Patchset-level comments
    Guohui Deng

    @yyana...@chromium.org: No worries! I understand that reviewers can have too many incoming requests and other tasks at the same time. I appreciate your input and that we are moving this forward! :)

    In my commit message I linked to Yosh's CLs but I was just giving credits to where it's due. Yosh did a lot of hard work that provided some very valuable information. However, after I took over this project, I decided to take a very different approach. So Yosh's design doc is not quite relevant now.

    I updated my commit message in patchset(13) and you can see the link to the new design doc I just wrote. In "Implement plan" section I described what needs to be done. Most importantly, in the length A)2. section, I described why I would like to rename the class `ResourceLoadObserver`.

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 107, Patchset 10:// TODO(guohu...@micrisoft.com): Consider consolidating the calculation.
    Nidhi Jaju . resolved

    nit:
    ```suggestion
    // TODO(guohu...@microsoft.com): Consider consolidating the calculation.
    ```

    Yoshisato Yanagisawa

    I know old Chromium code still use TODO(somebody@name) style but currently TODO(crbug.com/xxx) is recommended because:
    1. we can write more context in the crbug.
    2. easy to delegate the task to somebody.
    3. easy to discuss on the issue with the dedicated ID.

    Will you file a new crbug and use it (or linked to the existing crbug)?

    Guohui Deng

    I created a new issue on crbug.com and used it instead of my account. That removed the misspell too. Thanks :)

    Line 133, Patchset 8: UrlWithoutFragment(document->Url()).GetString();
    Nidhi Jaju . resolved

    Can we just store the KURL, similar to initial_url/name? Or even wait to remove the fragment identifier until the property is accessed, so that we don't need to scan the entire URL if not necessary?

    Guohui Deng

    Yes, that's a great idea. I Will update accordingly in the patchset after I receive more feedback from yyanagisawa. (continued in the next comment).

    Guohui Deng

    Done. I removed the "UrlWithoutFragment" and saved the string in an `AtomicString`.

    File third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h
    Line 55, Patchset 10: String initiator_url;
    Nidhi Jaju . resolved

    I think we want to store an `AtomicString` here similar to `name`. This means that `PopulateAndResourceTimingInfo` would then just be setting the `AtomicString` on the mojo call, and `PerformanceResourceTiming::initiatorUrl()` wouldn't need to make the `AtomicString` every time it's called, it could just return the `AtomicString` directly.

    Guohui Deng

    100% and done.
    There are more implications from this change. Please see the response from the other comment for details.

    File third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc
    Line 3135, Patchset 8: resource->Options().initiator_info.initiator_url,
    Nidhi Jaju . resolved

    It seems like this is the only place where you pass in a non-empty value for initiator_url. Do we need to pass it in, or can we just call FillInitiatorInfo() or just a setter when we need to?

    Guohui Deng

    Yes, I will do that(using a setter) in the next patchset.
    I will do the following:

    1) the url is stored in `KURL` before added to `ResourceTimingInfo`. It will be added using a setter.
    2) I will not process the URL here. The sites can process it in a worker thread or on there server.

    (FYI in my next step I plan to add a couple of more locations where the `initiator_url` is added to `ResourceTimingInfo`. I will follow the same rules stated above.)

    Nidhi Jaju

    I will do the following:
    > 1) the url is stored in KURL before added to ResourceTimingInfo. It will be added using a setter.
    2) I will not process the URL here. The sites can process it in a worker thread or on there server.

    Do you plan to do this?

    Guohui Deng

    Now the latest patch(13) completed this improvement.

    I need to correct myself, that the "ulr" was not stored in KURL, but it was implicitly converted to String when it was assigned to a String. I shouldn't have .GetString() in the early patch. However, now the `initiator_url` in `FetchInitiatorInfo` is no longer a String, but a `AtomicString`, so I will still need to call `GetString()` such that the `KURL` is converted to String then a `AtomisString`. And `UrlWithoutFragment` is completely removed.

    Ah and I used a setter instead of adding a new parameter in `CreateResourceTimingInfo`

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Nidhi Jaju
    • Noam Rosenthal
    • Yoshisato Yanagisawa
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 13
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Kouhei Ueno <kou...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Comment-Date: Thu, 05 Jun 2025 22:37:17 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Nidhi Jaju (Gerrit)

    unread,
    Jun 6, 2025, 3:16:37 AMJun 6
    to Guohui Deng, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng, Ian Clelland, Noam Rosenthal and Yoshisato Yanagisawa

    Nidhi Jaju added 2 comments

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 107, Patchset 10:// TODO(guohu...@micrisoft.com): Consider consolidating the calculation.
    Nidhi Jaju . unresolved

    nit:
    ```suggestion
    // TODO(guohu...@microsoft.com): Consider consolidating the calculation.
    ```

    Yoshisato Yanagisawa

    I know old Chromium code still use TODO(somebody@name) style but currently TODO(crbug.com/xxx) is recommended because:
    1. we can write more context in the crbug.
    2. easy to delegate the task to somebody.
    3. easy to discuss on the issue with the dedicated ID.

    Will you file a new crbug and use it (or linked to the existing crbug)?

    Guohui Deng

    I created a new issue on crbug.com and used it instead of my account. That removed the misspell too. Thanks :)

    Nidhi Jaju

    Can you keep the rest of the comment for what this TODO is about? Also, please use the same TODO(crbug.com/xxxxxxxx) style in other places as well instead of your email.
    ```suggestion
    // TODO(crbug.com/422626353): Consider consolidating the calculation.
    ```

    File third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc
    Line 3135, Patchset 8: resource->Options().initiator_info.initiator_url,
    Nidhi Jaju . resolved

    It seems like this is the only place where you pass in a non-empty value for initiator_url. Do we need to pass it in, or can we just call FillInitiatorInfo() or just a setter when we need to?

    Guohui Deng

    Yes, I will do that(using a setter) in the next patchset.
    I will do the following:

    1) the url is stored in `KURL` before added to `ResourceTimingInfo`. It will be added using a setter.
    2) I will not process the URL here. The sites can process it in a worker thread or on there server.

    (FYI in my next step I plan to add a couple of more locations where the `initiator_url` is added to `ResourceTimingInfo`. I will follow the same rules stated above.)

    Nidhi Jaju

    I will do the following:
    > 1) the url is stored in KURL before added to ResourceTimingInfo. It will be added using a setter.
    2) I will not process the URL here. The sites can process it in a worker thread or on there server.

    Do you plan to do this?

    Guohui Deng

    Now the latest patch(13) completed this improvement.

    I need to correct myself, that the "ulr" was not stored in KURL, but it was implicitly converted to String when it was assigned to a String. I shouldn't have .GetString() in the early patch. However, now the `initiator_url` in `FetchInitiatorInfo` is no longer a String, but a `AtomicString`, so I will still need to call `GetString()` such that the `KURL` is converted to String then a `AtomisString`. And `UrlWithoutFragment` is completely removed.

    Ah and I used a setter instead of adding a new parameter in `CreateResourceTimingInfo`

    Nidhi Jaju

    Thank you!

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    • Noam Rosenthal
    • Yoshisato Yanagisawa
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Fri, 06 Jun 2025 07:16:13 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Yoshisato Yanagisawa (Gerrit)

    unread,
    Jun 6, 2025, 4:40:35 AMJun 6
    to Guohui Deng, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng, Ian Clelland and Noam Rosenthal

    Yoshisato Yanagisawa added 1 comment

    Patchset-level comments
    Yoshisato Yanagisawa

    Thanks. I left some comments there.
    I still concerns that allowing ResourceLoadObserver to modify Resource itself is footgun. Do you have any ideas to avoid that? Or, is it so cumbersome to provide yet another channel to avoid modification?
    Anyway, let's continue the discussion in the doc.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    • Noam Rosenthal
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Fri, 06 Jun 2025 08:40:14 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
    Comment-In-Reply-To: Guohui Deng <guohu...@microsoft.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    Jun 6, 2025, 11:52:22 AMJun 6
    to Yoshisato Yanagisawa, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland, Nidhi Jaju, Noam Rosenthal and Yoshisato Yanagisawa

    Guohui Deng added 2 comments

    Patchset-level comments
    Guohui Deng

    Hi, yes there is an alternative and I am leaning towards to calling the class "client". I responded in the doc. Let's continue the discussion in the doc. :)

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 107, Patchset 10:// TODO(guohu...@micrisoft.com): Consider consolidating the calculation.
    Nidhi Jaju . resolved

    nit:
    ```suggestion
    // TODO(guohu...@microsoft.com): Consider consolidating the calculation.
    ```

    Yoshisato Yanagisawa

    I know old Chromium code still use TODO(somebody@name) style but currently TODO(crbug.com/xxx) is recommended because:
    1. we can write more context in the crbug.
    2. easy to delegate the task to somebody.
    3. easy to discuss on the issue with the dedicated ID.

    Will you file a new crbug and use it (or linked to the existing crbug)?

    Guohui Deng

    I created a new issue on crbug.com and used it instead of my account. That removed the misspell too. Thanks :)

    Nidhi Jaju

    Can you keep the rest of the comment for what this TODO is about? Also, please use the same TODO(crbug.com/xxxxxxxx) style in other places as well instead of your email.
    ```suggestion
    // TODO(crbug.com/422626353): Consider consolidating the calculation.
    ```

    Guohui Deng

    Done. Sorry I missed these, I didn't realize I can use the (crbug.com/xxx) style with extra text. :)

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Nidhi Jaju
    • Noam Rosenthal
    • Yoshisato Yanagisawa
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 14
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Kouhei Ueno <kou...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Comment-Date: Fri, 06 Jun 2025 15:52:12 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Yoshisato Yanagisawa (Gerrit)

    unread,
    Jun 11, 2025, 3:50:24 AMJun 11
    to Guohui Deng, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng, Ian Clelland, Nidhi Jaju and Noam Rosenthal

    Yoshisato Yanagisawa added 2 comments

    Patchset-level comments
    File-level comment, Patchset 14 (Latest):
    Yoshisato Yanagisawa . resolved

    Thanks kouhei@ for the suggestion.
    I still have a concern on allowing ResourceLoadObserver to modify the Resource.
    At the same time, it might not be good to block all your CL by that.

    Is it possible to revise this CL without the ResourceLoadObserver modification, and put ResourceLoadObserver changes in the other CL? I mean keeps the changes in resource_fetcher as-is, but remove changes to ResourceObserver from this CL.

    I hope to discuss the following part in the other CL.
    > But, the logic that calculates the “initiator_url” depends on code in
    third_party/blink/renderer/core/, which depends on “third_party/blink/renderer/platform/”
    So we cannot calculate “initiator_url” in “third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc”

    File third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h
    Line 54, Patchset 14 (Latest): // Todo(guohuideng@microsoft): Refactor and consolidate FetchInitiatorInfo.
    Yoshisato Yanagisawa . unresolved

    Will you use TODO(crbug/<id>) instead of TODO(someboyd's email)?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    • Nidhi Jaju
    • Noam Rosenthal
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Wed, 11 Jun 2025 07:49:49 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    Jun 11, 2025, 6:58:33 PMJun 11
    to Yoshisato Yanagisawa, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland, Nidhi Jaju, Noam Rosenthal and Yoshisato Yanagisawa

    Guohui Deng added 2 comments

    Patchset-level comments
    Yoshisato Yanagisawa . resolved

    Thanks kouhei@ for the suggestion.
    I still have a concern on allowing ResourceLoadObserver to modify the Resource.
    At the same time, it might not be good to block all your CL by that.

    Is it possible to revise this CL without the ResourceLoadObserver modification, and put ResourceLoadObserver changes in the other CL? I mean keeps the changes in resource_fetcher as-is, but remove changes to ResourceObserver from this CL.

    I hope to discuss the following part in the other CL.
    > But, the logic that calculates the “initiator_url” depends on code in
    third_party/blink/renderer/core/, which depends on “third_party/blink/renderer/platform/”
    So we cannot calculate “initiator_url” in “third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc”

    Guohui Deng

    It sounds like you plan to let this CL merge with the `ResourceLoadObserver` being still called an observer? Thanks for the flexibility and I will work with you on the follow-up work to get it properly fixed.

    This CL doesn't change `ResourceLoadObserver` except for removing one `const` so that the method can modify the Resource.

    I made a separate CL that renames `ResourceloadObserver`. It's here
    https://chromium-review.googlesource.com/c/chromium/src/+/6639155
    (It's chained behind this CL as well). And I am open to alternative too. There are pro and cons for each.

    And please let me know what else I will need to do to move this CL forward.

    Cheers,
    Guohui

    File third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h
    Line 54, Patchset 14: // Todo(guohuideng@microsoft): Refactor and consolidate FetchInitiatorInfo.
    Yoshisato Yanagisawa . resolved

    Will you use TODO(crbug/<id>) instead of TODO(someboyd's email)?

    Guohui Deng

    sorry I missed this one. Fixed.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Nidhi Jaju
    • Noam Rosenthal
    • Yoshisato Yanagisawa
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 15
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Kouhei Ueno <kou...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Comment-Date: Wed, 11 Jun 2025 22:58:24 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Yoshisato Yanagisawa (Gerrit)

    unread,
    Jun 12, 2025, 1:04:18 AMJun 12
    to Guohui Deng, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng, Ian Clelland, Nidhi Jaju and Noam Rosenthal

    Yoshisato Yanagisawa added 1 comment

    Patchset-level comments
    File-level comment, Patchset 14:
    Yoshisato Yanagisawa . unresolved

    Thanks kouhei@ for the suggestion.
    I still have a concern on allowing ResourceLoadObserver to modify the Resource.
    At the same time, it might not be good to block all your CL by that.

    Is it possible to revise this CL without the ResourceLoadObserver modification, and put ResourceLoadObserver changes in the other CL? I mean keeps the changes in resource_fetcher as-is, but remove changes to ResourceObserver from this CL.

    I hope to discuss the following part in the other CL.
    > But, the logic that calculates the “initiator_url” depends on code in
    third_party/blink/renderer/core/, which depends on “third_party/blink/renderer/platform/”
    So we cannot calculate “initiator_url” in “third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc”

    Guohui Deng

    It sounds like you plan to let this CL merge with the `ResourceLoadObserver` being still called an observer? Thanks for the flexibility and I will work with you on the follow-up work to get it properly fixed.

    This CL doesn't change `ResourceLoadObserver` except for removing one `const` so that the method can modify the Resource.

    I made a separate CL that renames `ResourceloadObserver`. It's here
    https://chromium-review.googlesource.com/c/chromium/src/+/6639155
    (It's chained behind this CL as well). And I am open to alternative too. There are pro and cons for each.

    And please let me know what else I will need to do to move this CL forward.

    Cheers,
    Guohui

    Yoshisato Yanagisawa

    The point I (and maybe Noam) do not agree is making `ResourceLoadObserver` to modify the Resource structure. However, we do not have argument other than that.

    I think it reasonable:
    1. to make FetchInitiatorInfo to have initiator URL,
    2. to make ResourceFetcher to set the initiator URL,
    3. and to make ResourceTiming or PerformanceResourceTiming to have the initiator URL.

    However, we do not agree to make `ResourceLoadObserver` to modify `Resource`. It is not a naming issue but a design issue.

    I suggest removing the `ResourceLoadObserver` changes from this CL, while keeping what I think reasonable (explained above).

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    • Nidhi Jaju
    • Noam Rosenthal
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Thu, 12 Jun 2025 05:03:53 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
    Comment-In-Reply-To: Guohui Deng <guohu...@microsoft.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Nidhi Jaju (Gerrit)

    unread,
    Jun 12, 2025, 1:23:05 AMJun 12
    to Guohui Deng, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng, Ian Clelland and Noam Rosenthal

    Nidhi Jaju added 2 comments

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 105, Patchset 14:// TODO(crbug.com/422626353)
    Nidhi Jaju . unresolved

    Can you add the rest of the comment, of what this TODO is for?

    Line 191, Patchset 15 (Latest): if (RuntimeEnabledFeatures::ResourceTimingInitiatorEnabled()) {
    FillInitiatorInfo(document_, resource->MutableOptions().initiator_info);
    }
    Nidhi Jaju . unresolved

    I think what Yanagisawa-san was suggesting is removing this part of the change from this CL, and using a follow-up CL to pursue an alternate design i.e. using FrameFetchContext instead of ResourceLoadObserver to fill out the initiator info.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    • Noam Rosenthal
    Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Comment-Date: Thu, 12 Jun 2025 05:22:37 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    Jun 12, 2025, 12:21:03 PMJun 12
    to Yoshisato Yanagisawa, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland, Nidhi Jaju and Noam Rosenthal

    Guohui Deng added 1 comment

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 191, Patchset 15 (Latest): if (RuntimeEnabledFeatures::ResourceTimingInitiatorEnabled()) {
    FillInitiatorInfo(document_, resource->MutableOptions().initiator_info);
    }
    Nidhi Jaju . unresolved

    I think what Yanagisawa-san was suggesting is removing this part of the change from this CL, and using a follow-up CL to pursue an alternate design i.e. using FrameFetchContext instead of ResourceLoadObserver to fill out the initiator info.

    Guohui Deng

    Thank you for pointing me to the right direction! `FetchContext` is a perfect place for me to put the `FillInitiatorUrl` and it nicely works for both `Frame` and `Worker`(which I will take care of soon). This is what I have been looking for and without it I cannot merge this CL. (I once saw `FetchContext` in the past, but I really missed it :))

    I will upload a new patchset before the end of this week. Due to time zone difference, I think you guys are already on Friday. You guys have a great weekend and really appreciate the guidance!

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Nidhi Jaju
    • Noam Rosenthal
    Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Comment-Date: Thu, 12 Jun 2025 16:20:52 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Nidhi Jaju <nidh...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Guohui Deng (Gerrit)

    unread,
    Jun 12, 2025, 7:31:18 PMJun 12
    to Yoshisato Yanagisawa, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Ian Clelland, Nidhi Jaju, Noam Rosenthal and Yoshisato Yanagisawa

    Guohui Deng added 4 comments

    Patchset-level comments
    File-level comment, Patchset 14:
    Yoshisato Yanagisawa . resolved
    Guohui Deng

    Following Nidhi's advice, I moved the `FillInitiatorInfo` function to `FetchContext` class. The `FillInitiatorInfo` function takes a parameter of `FetchInitiatorInfo`, and that's the only data open to write outside `platform/load`.

    I think we solved the problem. Really appreciate the patience and guidance I receive from everyone here.

    File-level comment, Patchset 16 (Latest):
    Guohui Deng . resolved

    Now the "observer" problem is solved. This CL is ready for review again. Thanks!

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Nidhi Jaju . resolved

    Can you add the rest of the comment, of what this TODO is for?

    Guohui Deng

    I moved this to `third_party/blink/renderer/core/loader/frame_fetch_context.cc` and I fixed the comment there, including what this TODO is for.

    Line 191, Patchset 15: if (RuntimeEnabledFeatures::ResourceTimingInitiatorEnabled()) {
    FillInitiatorInfo(document_, resource->MutableOptions().initiator_info);
    }
    Nidhi Jaju . resolved

    I think what Yanagisawa-san was suggesting is removing this part of the change from this CL, and using a follow-up CL to pursue an alternate design i.e. using FrameFetchContext instead of ResourceLoadObserver to fill out the initiator info.

    Guohui Deng

    Thank you for pointing me to the right direction! `FetchContext` is a perfect place for me to put the `FillInitiatorUrl` and it nicely works for both `Frame` and `Worker`(which I will take care of soon). This is what I have been looking for and without it I cannot merge this CL. (I once saw `FetchContext` in the past, but I really missed it :))

    I will upload a new patchset before the end of this week. Due to time zone difference, I think you guys are already on Friday. You guys have a great weekend and really appreciate the guidance!

    Guohui Deng

    Ah, the new patchset is ready now despite the gerrit outrage today :)

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Clelland
    • Nidhi Jaju
    • Noam Rosenthal
    • Yoshisato Yanagisawa
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
    Gerrit-Change-Number: 6397615
    Gerrit-PatchSet: 16
    Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
    Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
    Gerrit-Reviewer: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
    Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
    Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-CC: Annie Sullivan <sull...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
    Gerrit-CC: Kouhei Ueno <kou...@chromium.org>
    Gerrit-CC: Nate Chapin <jap...@chromium.org>
    Gerrit-CC: Paul Irish <paul...@chromium.org>
    Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
    Gerrit-Attention: Ian Clelland <icle...@chromium.org>
    Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
    Gerrit-Comment-Date: Thu, 12 Jun 2025 23:31:07 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Yoshisato Yanagisawa (Gerrit)

    unread,
    Jun 16, 2025, 6:45:55 AMJun 16
    to Guohui Deng, Nidhi Jaju, Kouhei Ueno, AyeAye, Noam Rosenthal, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Guohui Deng, Ian Clelland, Nidhi Jaju and Noam Rosenthal

    Yoshisato Yanagisawa voted and added 2 comments

    Votes added by Yoshisato Yanagisawa

    Code-Review+1

    2 comments

    Patchset-level comments
    File-level comment, Patchset 16 (Latest):
    Yoshisato Yanagisawa . resolved

    loader lgtm.
    @nrose...@google.com PTAL.

    File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
    Line 191, Patchset 15: if (RuntimeEnabledFeatures::ResourceTimingInitiatorEnabled()) {
    FillInitiatorInfo(document_, resource->MutableOptions().initiator_info);
    }
    Nidhi Jaju . resolved

    I think what Yanagisawa-san was suggesting is removing this part of the change from this CL, and using a follow-up CL to pursue an alternate design i.e. using FrameFetchContext instead of ResourceLoadObserver to fill out the initiator info.

    Guohui Deng

    Thank you for pointing me to the right direction! `FetchContext` is a perfect place for me to put the `FillInitiatorUrl` and it nicely works for both `Frame` and `Worker`(which I will take care of soon). This is what I have been looking for and without it I cannot merge this CL. (I once saw `FetchContext` in the past, but I really missed it :))

    I will upload a new patchset before the end of this week. Due to time zone difference, I think you guys are already on Friday. You guys have a great weekend and really appreciate the guidance!

    Guohui Deng

    Ah, the new patchset is ready now despite the gerrit outrage today :)

    Yoshisato Yanagisawa

    Thanks for the update.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Guohui Deng
    • Ian Clelland
    • Nidhi Jaju
    • Noam Rosenthal
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
      Gerrit-Attention: Ian Clelland <icle...@chromium.org>
      Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
      Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
      Gerrit-Comment-Date: Mon, 16 Jun 2025 10:43:40 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Noam Rosenthal (Gerrit)

      unread,
      Jun 16, 2025, 6:59:36 AMJun 16
      to Guohui Deng, Yoshisato Yanagisawa, Nidhi Jaju, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
      Attention needed from Guohui Deng, Ian Clelland and Nidhi Jaju

      Noam Rosenthal voted and added 1 comment

      Votes added by Noam Rosenthal

      Code-Review+1

      1 comment

      Patchset-level comments
      Noam Rosenthal . resolved

      Nice work, LGTM!

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Guohui Deng
      • Ian Clelland
      • Nidhi Jaju
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement satisfiedCode-Review
      Gerrit-Attention: Ian Clelland <icle...@chromium.org>
      Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
      Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
      Gerrit-Comment-Date: Mon, 16 Jun 2025 10:59:23 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Nidhi Jaju (Gerrit)

      unread,
      Jun 16, 2025, 8:46:40 AMJun 16
      to Guohui Deng, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
      Attention needed from Guohui Deng and Ian Clelland

      Nidhi Jaju voted and added 1 comment

      Votes added by Nidhi Jaju

      Code-Review+1

      1 comment

      Patchset-level comments
      Nidhi Jaju . resolved

      lgtm, thanks

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Guohui Deng
      • Ian Clelland
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
      Gerrit-Comment-Date: Mon, 16 Jun 2025 12:44:18 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Guohui Deng (Gerrit)

      unread,
      Jun 16, 2025, 10:17:40 AMJun 16
      to Chromium IPC Reviews, Nidhi Jaju, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
      Attention needed from Chromium IPC Reviews and Ian Clelland

      Guohui Deng added 2 comments

      Patchset-level comments
      File-level comment, Patchset 8:
      Yoshisato Yanagisawa . resolved
      Guohui Deng

      I am closing this comment since we solved the observer problem.

      File third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc
      Line 178, Patchset 7: Resource* resource) {
      Noam Rosenthal . resolved

      Hmm not sure about this. I don't know about the design of filling the initiator info in an "observer". It seems surprising because obsrver usually don't change what they observe.

      Guohui Deng
      It's indeed not common.

      The logic is here because it is not possible to implement it in platform/loader. The logic satisfies all the conditions listed here:
      https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/platform/loader/fetch/resource_load_observer.h;l=28;drc=c76e4f83a8c5786b463c3e55c070a21ac751b96b

      There is actually a precedence in `ResourceLoadObserverForFrame` that the observer modifies the data it receives.
      Notice the ` (... BlobDataHandle* blob) ` isn't "const" in `DidDownloadToBlob(...)`
      (https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/loader/resource_load_observer_for_frame.cc;l=286)
      Eventually, the ownership of `blob` is transferred to a collection of inspector agents, see:
      https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/inspector/inspector_network_agent.cc;l=1663;drc=c76e4f83a8c5786b463c3e55c070a21ac751b96b;bpv=1;bpt=1

      I think the most important reason for `ResourceLoadObserver` is that it's a place where we can add react logic to individual "load" that cannot happen in platform/loader folder. Modification to the observed data should be allowed here, although it's not common.

      The main problem here is actually the name "observer", rather than the design that code in `platform/loader` calls into `core/loader` for something that cannot be in `platform/loader`. The alternative is to rename "observer" to something else. But then someone may object, reasoning that observer can modify things occasionally if it has to, and the name "observer" is suitable except for that we don't modify the data usually.

      What do you think?

      Guohui Deng

      For this CL, I think I can avoid this problem by making a separate callback/call_back_class that's explicitly named `InitiatorInfoCalculator`.(Which is parallel to this `ResourceLoadObserverForFrame` class). In future if we have more callbacks that modify the observed data, we can have a container class called `ResourceLoadCallbacksForFrame`.

      But I don't quite like it because it's very verbose and it's duplicate to this `ResourceLoadObserverForFrame` class.

      Alternatively, we can put all the callbacks in the same container(i.e., the current `ResourceLoadObserverForFrame`). Because some modifies the observed data, we don't call this container "observer". So we could rename this class `ResourceLoadObserverForFrame` to `ResourceLoadCallbacksForFrame`. This approach is simpler, but it's a big change. I don't know if someone would object.

      Would appreciate any thoughts shared! Thanks!

      Guohui Deng

      Sorry I cannot edit my previous comment. Let me make some corrections and clarifications. Below are two options that I am considering:

      Option 1. Rename `ResourceLoadObserver' class to `ResourceLoadClient`
      Option 2. Use a partially bound `RepeatingCallback` named `fill_initiator_info_cb_`. This callback is set from `core/loader` and called in `platform/loader`

      1) has larger footprint, while 2) is a little hacky.

      Guohui Deng

      I am closing this comment since we solved the observer problem.

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Chromium IPC Reviews
      • Ian Clelland
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement satisfiedCode-Review
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
      Gerrit-Change-Number: 6397615
      Gerrit-PatchSet: 16
      Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
      Gerrit-Reviewer: Chromium IPC Reviews <chrome-ip...@google.com>
      Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
      Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
      Gerrit-Reviewer: Nidhi Jaju <nidh...@chromium.org>
      Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
      Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
      Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
      Gerrit-CC: Annie Sullivan <sull...@chromium.org>
      Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
      Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
      Gerrit-CC: Kouhei Ueno <kou...@chromium.org>
      Gerrit-CC: Nate Chapin <jap...@chromium.org>
      Gerrit-CC: Paul Irish <paul...@chromium.org>
      Gerrit-Attention: Ian Clelland <icle...@chromium.org>
      Gerrit-Attention: Chromium IPC Reviews <chrome-ip...@google.com>
      Gerrit-Comment-Date: Mon, 16 Jun 2025 14:17:28 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
      satisfied_requirement
      open
      diffy

      gwsq (Gerrit)

      unread,
      Jun 16, 2025, 10:22:14 AMJun 16
      to Guohui Deng, Chromium IPC Reviews, Mustafa Emre Acer, Nidhi Jaju, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
      Attention needed from Ian Clelland and Mustafa Emre Acer

      Message from gwsq

      From googleclient/chrome/chromium_gwsq/ipc/config.gwsq:
      IPC: mea...@chromium.org

      📎 It looks like you’re making a possibly security-sensitive change! 📎 IPC security review isn’t a rubberstamp, so your friendly security reviewer will need a fair amount of context to review your CL effectively. Please review your CL description and code comments to make sure they provide context for someone unfamiliar with your project/area. Pay special attention to where data comes from and which processes it flows between (and their privilege levels). Feel free to point your security reviewer at design docs, bugs, or other links if you can’t reasonably make a self-contained CL description. (Also see https://cbea.ms/git-commit/).

      IPC reviewer(s): mea...@chromium.org


      Reviewer source(s):
      mea...@chromium.org is from context(googleclient/chrome/chromium_gwsq/ipc/config.gwsq)

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Ian Clelland
      • Mustafa Emre Acer
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement satisfiedCode-Review
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
      Gerrit-Change-Number: 6397615
      Gerrit-PatchSet: 16
      Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
      Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
      Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
      Gerrit-Reviewer: Mustafa Emre Acer <mea...@chromium.org>
      Gerrit-Reviewer: Nidhi Jaju <nidh...@chromium.org>
      Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
      Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
      Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
      Gerrit-CC: Annie Sullivan <sull...@chromium.org>
      Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
      Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
      Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
      Gerrit-CC: Kouhei Ueno <kou...@chromium.org>
      Gerrit-CC: Nate Chapin <jap...@chromium.org>
      Gerrit-CC: Paul Irish <paul...@chromium.org>
      Gerrit-CC: gwsq
      Gerrit-Attention: Mustafa Emre Acer <mea...@chromium.org>
      Gerrit-Attention: Ian Clelland <icle...@chromium.org>
      Gerrit-Comment-Date: Mon, 16 Jun 2025 14:21:58 +0000
      Gerrit-HasComments: No
      Gerrit-Has-Labels: No
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Mustafa Emre Acer (Gerrit)

      unread,
      Jun 16, 2025, 1:08:38 PMJun 16
      to Guohui Deng, Chromium IPC Reviews, Nidhi Jaju, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
      Attention needed from Guohui Deng and Ian Clelland

      Mustafa Emre Acer added 1 comment

      File third_party/blink/public/mojom/timing/resource_timing.mojom
      Line 134, Patchset 16 (Latest): string initiator_url;
      Mustafa Emre Acer . unresolved

      Can this be a url.mojom.Url instead?

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Guohui Deng
      • Ian Clelland
      Submit Requirements:
        • requirement satisfiedCode-Coverage
        • requirement is not satisfiedCode-Owners
        • requirement satisfiedCode-Review
        • requirement is not satisfiedNo-Unresolved-Comments
        Gerrit-Attention: Ian Clelland <icle...@chromium.org>
        Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
        Gerrit-Comment-Date: Mon, 16 Jun 2025 17:08:02 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Guohui Deng (Gerrit)

        unread,
        Jun 16, 2025, 6:41:39 PMJun 16
        to Chromium IPC Reviews, Mustafa Emre Acer, Nidhi Jaju, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
        Attention needed from Ian Clelland and Mustafa Emre Acer

        Guohui Deng added 1 comment

        File third_party/blink/public/mojom/timing/resource_timing.mojom
        Line 134, Patchset 16 (Latest): string initiator_url;
        Mustafa Emre Acer . unresolved

        Can this be a url.mojom.Url instead?

        Guohui Deng

        Ah I see `url.mojom.Url` is commonly used in mojom. In this case, I still prefer using string.

        From `FetchInitiatorInfo`, it's already calculated to be an `AtomicString`. The rest of the work is to transport it to `ResourceTiming` to report it. Using `url.mojom.Url` will convert the string to `KURL` and it involves some processing that's not necessary.

        What do you think? Or should I rename this field to `initiator_url_string` to make it clear that the value is a string and it will never return as a URL?

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Ian Clelland
        • Mustafa Emre Acer
        Gerrit-Attention: Mustafa Emre Acer <mea...@chromium.org>
        Gerrit-Attention: Ian Clelland <icle...@chromium.org>
        Gerrit-Comment-Date: Mon, 16 Jun 2025 22:41:09 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        Comment-In-Reply-To: Mustafa Emre Acer <mea...@chromium.org>
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Mustafa Emre Acer (Gerrit)

        unread,
        Jun 16, 2025, 7:13:36 PMJun 16
        to Guohui Deng, Chromium IPC Reviews, Nidhi Jaju, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
        Attention needed from Guohui Deng and Ian Clelland

        Mustafa Emre Acer added 1 comment

        File third_party/blink/public/mojom/timing/resource_timing.mojom
        Line 134, Patchset 16 (Latest): string initiator_url;
        Mustafa Emre Acer . unresolved

        Can this be a url.mojom.Url instead?

        Guohui Deng

        Ah I see `url.mojom.Url` is commonly used in mojom. In this case, I still prefer using string.

        From `FetchInitiatorInfo`, it's already calculated to be an `AtomicString`. The rest of the work is to transport it to `ResourceTiming` to report it. Using `url.mojom.Url` will convert the string to `KURL` and it involves some processing that's not necessary.

        What do you think? Or should I rename this field to `initiator_url_string` to make it clear that the value is a string and it will never return as a URL?

        Mustafa Emre Acer

        FillInitiatorInfo seems to be setting it from document_->Url() which I assume is a KURL, right? That conversion should be automatic.

        I understand this isn't security sensitive, but I'd still prefer the actual mojo type here (unless of course using the mojo type blows up the CL complexity)

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Guohui Deng
        • Ian Clelland
        Gerrit-Attention: Ian Clelland <icle...@chromium.org>
        Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
        Gerrit-Comment-Date: Mon, 16 Jun 2025 23:13:03 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        Comment-In-Reply-To: Mustafa Emre Acer <mea...@chromium.org>
        Comment-In-Reply-To: Guohui Deng <guohu...@microsoft.com>
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Guohui Deng (Gerrit)

        unread,
        Jun 16, 2025, 7:37:03 PMJun 16
        to Chromium IPC Reviews, Mustafa Emre Acer, Nidhi Jaju, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
        Attention needed from Ian Clelland and Mustafa Emre Acer

        Guohui Deng added 1 comment

        File third_party/blink/public/mojom/timing/resource_timing.mojom
        Line 134, Patchset 16 (Latest): string initiator_url;
        Mustafa Emre Acer . unresolved

        Can this be a url.mojom.Url instead?

        Guohui Deng

        Ah I see `url.mojom.Url` is commonly used in mojom. In this case, I still prefer using string.

        From `FetchInitiatorInfo`, it's already calculated to be an `AtomicString`. The rest of the work is to transport it to `ResourceTiming` to report it. Using `url.mojom.Url` will convert the string to `KURL` and it involves some processing that's not necessary.

        What do you think? Or should I rename this field to `initiator_url_string` to make it clear that the value is a string and it will never return as a URL?

        Mustafa Emre Acer

        FillInitiatorInfo seems to be setting it from document_->Url() which I assume is a KURL, right? That conversion should be automatic.

        I understand this isn't security sensitive, but I'd still prefer the actual mojo type here (unless of course using the mojo type blows up the CL complexity)

        Guohui Deng

        `FillInitiatorInfo` stores an `AtomicString`. The data is converted from KURL -> String -> AtomicString. The result is an `AtomicString` (see third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h)

        It's a field of `PerformanceResourceTiming`, where these values are typically reported as strings and they default to empty strings if the information is not available (which is very common). So, it's much simpler we convert it to `String` early and process it like the other fields.

        My understanding is that `url.mojom.Url` would result in a construction of KURL from a string which is time consuming.

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Ian Clelland
        • Mustafa Emre Acer
        Gerrit-Attention: Mustafa Emre Acer <mea...@chromium.org>
        Gerrit-Attention: Ian Clelland <icle...@chromium.org>
        Gerrit-Comment-Date: Mon, 16 Jun 2025 23:36:31 +0000
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Mustafa Emre Acer (Gerrit)

        unread,
        Jun 16, 2025, 8:10:02 PMJun 16
        to Guohui Deng, Chromium IPC Reviews, Nidhi Jaju, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
        Attention needed from Guohui Deng and Ian Clelland

        Mustafa Emre Acer added 1 comment

        File third_party/blink/public/mojom/timing/resource_timing.mojom
        Line 134, Patchset 16 (Latest): string initiator_url;
        Mustafa Emre Acer . unresolved

        Can this be a url.mojom.Url instead?

        Guohui Deng

        Ah I see `url.mojom.Url` is commonly used in mojom. In this case, I still prefer using string.

        From `FetchInitiatorInfo`, it's already calculated to be an `AtomicString`. The rest of the work is to transport it to `ResourceTiming` to report it. Using `url.mojom.Url` will convert the string to `KURL` and it involves some processing that's not necessary.

        What do you think? Or should I rename this field to `initiator_url_string` to make it clear that the value is a string and it will never return as a URL?

        Mustafa Emre Acer

        FillInitiatorInfo seems to be setting it from document_->Url() which I assume is a KURL, right? That conversion should be automatic.

        I understand this isn't security sensitive, but I'd still prefer the actual mojo type here (unless of course using the mojo type blows up the CL complexity)

        Guohui Deng

        `FillInitiatorInfo` stores an `AtomicString`. The data is converted from KURL -> String -> AtomicString. The result is an `AtomicString` (see third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h)

        It's a field of `PerformanceResourceTiming`, where these values are typically reported as strings and they default to empty strings if the information is not available (which is very common). So, it's much simpler we convert it to `String` early and process it like the other fields.

        My understanding is that `url.mojom.Url` would result in a construction of KURL from a string which is time consuming.

        Mustafa Emre Acer

        Thanks for the explanation. In that case, changing this to initiator_url_string makes sense. Alternatively, you can add a short comment to the field saying that it's only for reporting and not used to make a security decision.

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Guohui Deng
        • Ian Clelland
        Gerrit-Attention: Ian Clelland <icle...@chromium.org>
        Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
        Gerrit-Comment-Date: Tue, 17 Jun 2025 00:09:32 +0000
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Nidhi Jaju (Gerrit)

        unread,
        Jun 17, 2025, 1:21:13 AMJun 17
        to Guohui Deng, Chromium IPC Reviews, Mustafa Emre Acer, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
        Attention needed from Guohui Deng and Ian Clelland

        Nidhi Jaju voted and added 1 comment

        Votes added by Nidhi Jaju

        Code-Review+0

        1 comment

        File third_party/blink/public/mojom/timing/resource_timing.mojom
        Line 134, Patchset 16 (Latest): string initiator_url;
        Mustafa Emre Acer . unresolved

        Can this be a url.mojom.Url instead?

        Guohui Deng

        Ah I see `url.mojom.Url` is commonly used in mojom. In this case, I still prefer using string.

        From `FetchInitiatorInfo`, it's already calculated to be an `AtomicString`. The rest of the work is to transport it to `ResourceTiming` to report it. Using `url.mojom.Url` will convert the string to `KURL` and it involves some processing that's not necessary.

        What do you think? Or should I rename this field to `initiator_url_string` to make it clear that the value is a string and it will never return as a URL?

        Mustafa Emre Acer

        FillInitiatorInfo seems to be setting it from document_->Url() which I assume is a KURL, right? That conversion should be automatic.

        I understand this isn't security sensitive, but I'd still prefer the actual mojo type here (unless of course using the mojo type blows up the CL complexity)

        Guohui Deng

        `FillInitiatorInfo` stores an `AtomicString`. The data is converted from KURL -> String -> AtomicString. The result is an `AtomicString` (see third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h)

        It's a field of `PerformanceResourceTiming`, where these values are typically reported as strings and they default to empty strings if the information is not available (which is very common). So, it's much simpler we convert it to `String` early and process it like the other fields.

        My understanding is that `url.mojom.Url` would result in a construction of KURL from a string which is time consuming.

        Mustafa Emre Acer

        Thanks for the explanation. In that case, changing this to initiator_url_string makes sense. Alternatively, you can add a short comment to the field saying that it's only for reporting and not used to make a security decision.

        Nidhi Jaju

        Taking another look, it seems that we only ever set `initiator_url` from a KURL and could use url.mojom.Url, and hence KURL, throughout to avoid processing and fetching the AtomicString from the KURL in the first place. We can use the empty KURL() for cases where there's no URL present.

        Gerrit-Comment-Date: Tue, 17 Jun 2025 05:19:02 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: Yes
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Guohui Deng (Gerrit)

        unread,
        Jun 17, 2025, 2:01:44 PMJun 17
        to Chromium IPC Reviews, Mustafa Emre Acer, Nidhi Jaju, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
        Attention needed from Ian Clelland, Mustafa Emre Acer, Nidhi Jaju, Noam Rosenthal and Yoshisato Yanagisawa

        Guohui Deng added 1 comment

        File third_party/blink/public/mojom/timing/resource_timing.mojom
        Line 134, Patchset 16: string initiator_url;
        Mustafa Emre Acer . resolved

        Can this be a url.mojom.Url instead?

        Guohui Deng

        Ah I see `url.mojom.Url` is commonly used in mojom. In this case, I still prefer using string.

        From `FetchInitiatorInfo`, it's already calculated to be an `AtomicString`. The rest of the work is to transport it to `ResourceTiming` to report it. Using `url.mojom.Url` will convert the string to `KURL` and it involves some processing that's not necessary.

        What do you think? Or should I rename this field to `initiator_url_string` to make it clear that the value is a string and it will never return as a URL?

        Mustafa Emre Acer

        FillInitiatorInfo seems to be setting it from document_->Url() which I assume is a KURL, right? That conversion should be automatic.

        I understand this isn't security sensitive, but I'd still prefer the actual mojo type here (unless of course using the mojo type blows up the CL complexity)

        Guohui Deng

        `FillInitiatorInfo` stores an `AtomicString`. The data is converted from KURL -> String -> AtomicString. The result is an `AtomicString` (see third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h)

        It's a field of `PerformanceResourceTiming`, where these values are typically reported as strings and they default to empty strings if the information is not available (which is very common). So, it's much simpler we convert it to `String` early and process it like the other fields.

        My understanding is that `url.mojom.Url` would result in a construction of KURL from a string which is time consuming.

        Mustafa Emre Acer

        Thanks for the explanation. In that case, changing this to initiator_url_string makes sense. Alternatively, you can add a short comment to the field saying that it's only for reporting and not used to make a security decision.

        Nidhi Jaju

        Taking another look, it seems that we only ever set `initiator_url` from a KURL and could use url.mojom.Url, and hence KURL, throughout to avoid processing and fetching the AtomicString from the KURL in the first place. We can use the empty KURL() for cases where there's no URL present.

        Guohui Deng

        Done. I see why it's faster now. It doesn't really construct a KURL at all(I missed that). And when copying the KURL, `AtomicString`s are copied, it's faster than converting `AtomicString` to `String` then back to `AtomicString`.

        Thanks a lot and I learnt more today. :)

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Ian Clelland
        • Mustafa Emre Acer
        • Nidhi Jaju
        • Noam Rosenthal
        • Yoshisato Yanagisawa
          Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement is not satisfiedCode-Review
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: comment
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
          Gerrit-Change-Number: 6397615
          Gerrit-PatchSet: 17
          Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
          Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
          Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
          Gerrit-Reviewer: Mustafa Emre Acer <mea...@chromium.org>
          Gerrit-Reviewer: Nidhi Jaju <nidh...@chromium.org>
          Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
          Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
          Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
          Gerrit-CC: Annie Sullivan <sull...@chromium.org>
          Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
          Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
          Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
          Gerrit-CC: Kouhei Ueno <kou...@chromium.org>
          Gerrit-CC: Nate Chapin <jap...@chromium.org>
          Gerrit-CC: Paul Irish <paul...@chromium.org>
          Gerrit-CC: gwsq
          Gerrit-Attention: Mustafa Emre Acer <mea...@chromium.org>
          Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
          Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
          Gerrit-Attention: Ian Clelland <icle...@chromium.org>
          Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
          Gerrit-Comment-Date: Tue, 17 Jun 2025 18:01:33 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: No
          Comment-In-Reply-To: Mustafa Emre Acer <mea...@chromium.org>
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Guohui Deng (Gerrit)

          unread,
          Jun 17, 2025, 2:42:18 PMJun 17
          to Chromium IPC Reviews, Mustafa Emre Acer, Nidhi Jaju, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
          Attention needed from Ian Clelland, Mustafa Emre Acer, Nidhi Jaju, Noam Rosenthal and Yoshisato Yanagisawa

          Guohui Deng added 1 comment

          File third_party/blink/public/mojom/timing/resource_timing.mojom
          Line 134, Patchset 16: string initiator_url;
          Mustafa Emre Acer . resolved

          Can this be a url.mojom.Url instead?

          Guohui Deng

          Ah I see `url.mojom.Url` is commonly used in mojom. In this case, I still prefer using string.

          From `FetchInitiatorInfo`, it's already calculated to be an `AtomicString`. The rest of the work is to transport it to `ResourceTiming` to report it. Using `url.mojom.Url` will convert the string to `KURL` and it involves some processing that's not necessary.

          What do you think? Or should I rename this field to `initiator_url_string` to make it clear that the value is a string and it will never return as a URL?

          Mustafa Emre Acer

          FillInitiatorInfo seems to be setting it from document_->Url() which I assume is a KURL, right? That conversion should be automatic.

          I understand this isn't security sensitive, but I'd still prefer the actual mojo type here (unless of course using the mojo type blows up the CL complexity)

          Guohui Deng

          `FillInitiatorInfo` stores an `AtomicString`. The data is converted from KURL -> String -> AtomicString. The result is an `AtomicString` (see third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h)

          It's a field of `PerformanceResourceTiming`, where these values are typically reported as strings and they default to empty strings if the information is not available (which is very common). So, it's much simpler we convert it to `String` early and process it like the other fields.

          My understanding is that `url.mojom.Url` would result in a construction of KURL from a string which is time consuming.

          Mustafa Emre Acer

          Thanks for the explanation. In that case, changing this to initiator_url_string makes sense. Alternatively, you can add a short comment to the field saying that it's only for reporting and not used to make a security decision.

          Nidhi Jaju

          Taking another look, it seems that we only ever set `initiator_url` from a KURL and could use url.mojom.Url, and hence KURL, throughout to avoid processing and fetching the AtomicString from the KURL in the first place. We can use the empty KURL() for cases where there's no URL present.

          Guohui Deng

          Done. I see why it's faster now. It doesn't really construct a KURL at all(I missed that). And when copying the KURL, `AtomicString`s are copied, it's faster than converting `AtomicString` to `String` then back to `AtomicString`.

          Thanks a lot and I learnt more today. :)

          Guohui Deng

          I was wrong :( The new method copies a couple more fields. And that's minimal.

          Gerrit-Comment-Date: Tue, 17 Jun 2025 18:42:08 +0000
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Mustafa Emre Acer (Gerrit)

          unread,
          Jun 17, 2025, 7:25:31 PMJun 17
          to Guohui Deng, Chromium IPC Reviews, Nidhi Jaju, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
          Attention needed from Guohui Deng, Ian Clelland, Nidhi Jaju, Noam Rosenthal and Yoshisato Yanagisawa

          Mustafa Emre Acer voted and added 1 comment

          Votes added by Mustafa Emre Acer

          Code-Review+1

          1 comment

          Patchset-level comments
          Mustafa Emre Acer . resolved

          Mojo LGTM

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Guohui Deng
          • Ian Clelland
          Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
          Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
          Gerrit-Attention: Ian Clelland <icle...@chromium.org>
          Gerrit-Attention: Nidhi Jaju <nidh...@chromium.org>
          Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
          Gerrit-Comment-Date: Tue, 17 Jun 2025 23:25:15 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: Yes
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Nidhi Jaju (Gerrit)

          unread,
          Jun 17, 2025, 7:26:44 PMJun 17
          to Guohui Deng, Mustafa Emre Acer, Chromium IPC Reviews, Noam Rosenthal, Yoshisato Yanagisawa, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
          Attention needed from Guohui Deng, Ian Clelland, Noam Rosenthal and Yoshisato Yanagisawa

          Nidhi Jaju voted and added 1 comment

          Votes added by Nidhi Jaju

          Code-Review+1

          1 comment

          Patchset-level comments
          Nidhi Jaju . resolved

          Looks good, thank you!

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Guohui Deng
          • Ian Clelland
          • Noam Rosenthal
          • Yoshisato Yanagisawa
          Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement satisfiedCode-Review
          Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
          Gerrit-Comment-Date: Tue, 17 Jun 2025 23:26:13 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: Yes
          satisfied_requirement
          open
          diffy

          Yoshisato Yanagisawa (Gerrit)

          unread,
          Jun 18, 2025, 5:10:16 AMJun 18
          to Guohui Deng, Nidhi Jaju, Mustafa Emre Acer, Chromium IPC Reviews, Noam Rosenthal, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
          Attention needed from Guohui Deng, Ian Clelland and Noam Rosenthal

          Yoshisato Yanagisawa voted and added 1 comment

          Votes added by Yoshisato Yanagisawa

          Code-Review+1

          1 comment

          Patchset-level comments
          Yoshisato Yanagisawa . resolved

          still lgtm

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Guohui Deng
          • Ian Clelland
          • Noam Rosenthal
          Gerrit-Attention: Noam Rosenthal <nrose...@google.com>
          Gerrit-Attention: Ian Clelland <icle...@chromium.org>
          Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
          Gerrit-Comment-Date: Wed, 18 Jun 2025 09:09:52 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: Yes
          satisfied_requirement
          open
          diffy

          Noam Rosenthal (Gerrit)

          unread,
          Jun 18, 2025, 5:20:56 AMJun 18
          to Guohui Deng, Yoshisato Yanagisawa, Nidhi Jaju, Mustafa Emre Acer, Chromium IPC Reviews, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
          Attention needed from Guohui Deng and Ian Clelland

          Noam Rosenthal voted Code-Review+1

          Code-Review+1
          Open in Gerrit

          Related details

          Attention is currently required from:
          • Guohui Deng
          • Ian Clelland
          Gerrit-Attention: Ian Clelland <icle...@chromium.org>
          Gerrit-Attention: Guohui Deng <guohu...@microsoft.com>
          Gerrit-Comment-Date: Wed, 18 Jun 2025 09:20:40 +0000
          Gerrit-HasComments: No
          Gerrit-Has-Labels: Yes
          satisfied_requirement
          open
          diffy

          Guohui Deng (Gerrit)

          unread,
          Jun 18, 2025, 11:12:22 AMJun 18
          to Noam Rosenthal, Yoshisato Yanagisawa, Nidhi Jaju, Mustafa Emre Acer, Chromium IPC Reviews, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
          Attention needed from Ian Clelland

          Guohui Deng added 1 comment

          Patchset-level comments
          Guohui Deng . resolved

          Thank you everyone for your time and guidance. I am submitting this CL now.

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Ian Clelland
          Gerrit-Comment-Date: Wed, 18 Jun 2025 15:12:09 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: No
          satisfied_requirement
          open
          diffy

          Guohui Deng (Gerrit)

          unread,
          Jun 18, 2025, 11:12:42 AMJun 18
          to Noam Rosenthal, Yoshisato Yanagisawa, Nidhi Jaju, Mustafa Emre Acer, Chromium IPC Reviews, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, Chromium LUCI CQ, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
          Attention needed from Ian Clelland

          Guohui Deng voted Commit-Queue+2

          Commit-Queue+2
          Gerrit-Comment-Date: Wed, 18 Jun 2025 15:12:29 +0000
          Gerrit-HasComments: No
          Gerrit-Has-Labels: Yes
          satisfied_requirement
          open
          diffy

          Chromium LUCI CQ (Gerrit)

          unread,
          Jun 18, 2025, 11:16:43 AMJun 18
          to Guohui Deng, Noam Rosenthal, Yoshisato Yanagisawa, Nidhi Jaju, Mustafa Emre Acer, Chromium IPC Reviews, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org

          Chromium LUCI CQ submitted the change

          Change information

          Commit message:
          Expose initiatorUrl in resourceTiming for html initiators

          Unsolved: to find the initiator html for the subframe html.

          Test cases are merged (with modifications) from:
          https://chromium-review.googlesource.com/c/chromium/src/+/4812813
          And For script initiators, TaskAttributionInfo is used
          according to this draft CL:
          https://chromium-review.googlesource.com/c/chromium/src/+/4931296/21
          Bug: 40919714
          Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
          Reviewed-by: Nidhi Jaju <nidh...@chromium.org>
          Commit-Queue: Guohui Deng <guohu...@microsoft.com>
          Reviewed-by: Yoshisato Yanagisawa <yyana...@chromium.org>
          Reviewed-by: Mustafa Emre Acer <mea...@chromium.org>
          Reviewed-by: Noam Rosenthal <nrose...@google.com>
          Cr-Commit-Position: refs/heads/main@{#1475603}
          Files:
          • M android_webview/test/data/web_tests/webexposed/global-interface-listing-expected.txt
          • M third_party/blink/public/mojom/timing/resource_timing.mojom
          • M third_party/blink/renderer/core/loader/cross_thread_resource_timing_info_copier.cc
          • M third_party/blink/renderer/core/loader/frame_fetch_context.cc
          • M third_party/blink/renderer/core/loader/frame_fetch_context.h
          • M third_party/blink/renderer/core/timing/performance_resource_timing.cc
          • M third_party/blink/renderer/core/timing/performance_resource_timing.h
          • M third_party/blink/renderer/core/timing/performance_resource_timing.idl
          • M third_party/blink/renderer/platform/loader/fetch/fetch_context.h
          • M third_party/blink/renderer/platform/loader/fetch/fetch_initiator_info.h
          • M third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc
          • M third_party/blink/renderer/platform/runtime_enabled_features.json5
          • M third_party/blink/web_tests/TestExpectations
          • M third_party/blink/web_tests/external/wpt/resource-timing/resources/test-initiator.js
          • M third_party/blink/web_tests/external/wpt/resource-timing/tentative/document-initiated.html
          • M third_party/blink/web_tests/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt
          • D third_party/blink/web_tests/platform/mac/webexposed/global-interface-listing-platform-specific-expected.txt
          • M third_party/blink/web_tests/webexposed/global-interface-listing-dedicated-worker-expected.txt
          • M third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt
          • M third_party/blink/web_tests/webexposed/global-interface-listing-shared-worker-expected.txt
          Change size: M
          Delta: 20 files changed, 130 insertions(+), 116 deletions(-)
          Branch: refs/heads/main
          Submit Requirements:
          • requirement satisfiedCode-Review: +1 by Mustafa Emre Acer, +1 by Noam Rosenthal, +1 by Yoshisato Yanagisawa, +1 by Nidhi Jaju
          Open in Gerrit
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: merged
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
          Gerrit-Change-Number: 6397615
          Gerrit-PatchSet: 18
          Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
          Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
          Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
          Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
          Gerrit-Reviewer: Mustafa Emre Acer <mea...@chromium.org>
          Gerrit-Reviewer: Nidhi Jaju <nidh...@chromium.org>
          Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
          Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
          Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
          Gerrit-CC: Annie Sullivan <sull...@chromium.org>
          Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
          open
          diffy
          satisfied_requirement

          Blink W3C Test Autoroller (Gerrit)

          unread,
          Jun 18, 2025, 12:00:13 PMJun 18
          to Chromium LUCI CQ, Guohui Deng, Noam Rosenthal, Yoshisato Yanagisawa, Nidhi Jaju, Mustafa Emre Acer, Chromium IPC Reviews, Kouhei Ueno, AyeAye, Yoav Weiss (@Shopify), Ian Clelland, Annie Sullivan, Paul Irish, Jack Franklin, chromium...@chromium.org, Nate Chapin, Hiroki Nakagawa, mac-r...@chromium.org, speed-metrics...@chromium.org, android-web...@chromium.org, ashleynewson+w...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, core-timi...@chromium.org, gavinp...@chromium.org, horo+...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kenjibah...@chromium.org, kinuko+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, loading-re...@chromium.org, loading...@chromium.org, peter+watch...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org

          Message from Blink W3C Test Autoroller

          The WPT PR for this CL has been merged upstream! https://github.com/web-platform-tests/wpt/pull/53250

          Open in Gerrit

          Related details

          Attention set is empty
          Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement satisfiedCode-Review
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: comment
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: I78369001d7db337a79c19debee868afecbb8c1f0
          Gerrit-Change-Number: 6397615
          Gerrit-PatchSet: 18
          Gerrit-Owner: Guohui Deng <guohu...@microsoft.com>
          Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
          Gerrit-Reviewer: Guohui Deng <guohu...@microsoft.com>
          Gerrit-Reviewer: Ian Clelland <icle...@chromium.org>
          Gerrit-Reviewer: Mustafa Emre Acer <mea...@chromium.org>
          Gerrit-Reviewer: Nidhi Jaju <nidh...@chromium.org>
          Gerrit-Reviewer: Noam Rosenthal <nrose...@google.com>
          Gerrit-Reviewer: Yoav Weiss (@Shopify) <yoav...@chromium.org>
          Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
          Gerrit-CC: Annie Sullivan <sull...@chromium.org>
          Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
          Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
          Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
          Gerrit-CC: Jack Franklin <jacktf...@chromium.org>
          Gerrit-CC: Kouhei Ueno <kou...@chromium.org>
          Gerrit-CC: Nate Chapin <jap...@chromium.org>
          Gerrit-CC: Paul Irish <paul...@chromium.org>
          Gerrit-CC: gwsq
          Gerrit-Comment-Date: Wed, 18 Jun 2025 16:00:03 +0000
          Gerrit-HasComments: No
          Gerrit-Has-Labels: No
          satisfied_requirement
          open
          diffy
          Reply all
          Reply to author
          Forward
          0 new messages