[FedCM] Hook up FedCM network traffic to show in dev tools (devtools) [chromium/src : main]

0 views
Skip to first unread message

Alex Rudenko (Gerrit)

unread,
Apr 29, 2025, 12:51:17 PMApr 29
to suresh potti, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Christian Biesinger, Nicolás Peña, Sam Goto, Yi Gu and suresh potti

Alex Rudenko added 1 comment

Patchset-level comments
File-level comment, Patchset 16 (Latest):
Alex Rudenko . unresolved

Thanks for a CL, I have got a few high-level questions:

1) could you please add inspector-protocol tests to third_party/blink/web_tests/http/tests/inspector-protocol/network/ to make sure that network events are instrumented in a way that CDP clients expect (typical network events, ability to retrieve request/response body)? Network events have a somewhat complex lifecycle so perhaps a doc would be good to define how much of Network needs to be supported for the requests to work in DevTools?

2) Do FedCM requests originate from the renderer? can they be attributes to a particular navigable? Can FedCM requests run from worker?

3) Are there any compatibility concerns for non-DevTools clients like WebDriver (especially if instrumentation is not complete). I see that FedCM integrates with the Fetch standard: exposing these CDP events would affect WebDriver BiDi. Are there plans to add FedCM x WebDriver coverage in WPT (https://github.com/web-platform-tests/wpt/tree/master/webdriver/tests/bidi/network).

Open in Gerrit

Related details

Attention is currently required from:
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Yi Gu
  • suresh potti
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 16
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Comment-Date: Tue, 29 Apr 2025 16:51:07 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Sam Goto (Gerrit)

unread,
Apr 29, 2025, 12:55:25 PMApr 29
to suresh potti, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Christian Biesinger, Nicolás Peña, Sam Goto, Yi Gu and suresh potti

Sam Goto added 1 comment

Patchset-level comments
Alex Rudenko . unresolved

Thanks for a CL, I have got a few high-level questions:

1) could you please add inspector-protocol tests to third_party/blink/web_tests/http/tests/inspector-protocol/network/ to make sure that network events are instrumented in a way that CDP clients expect (typical network events, ability to retrieve request/response body)? Network events have a somewhat complex lifecycle so perhaps a doc would be good to define how much of Network needs to be supported for the requests to work in DevTools?

2) Do FedCM requests originate from the renderer? can they be attributes to a particular navigable? Can FedCM requests run from worker?

3) Are there any compatibility concerns for non-DevTools clients like WebDriver (especially if instrumentation is not complete). I see that FedCM integrates with the Fetch standard: exposing these CDP events would affect WebDriver BiDi. Are there plans to add FedCM x WebDriver coverage in WPT (https://github.com/web-platform-tests/wpt/tree/master/webdriver/tests/bidi/network).

Sam Goto

2) Do FedCM requests originate from the renderer?

They all originate from the browser process.

Gerrit-Comment-Date: Tue, 29 Apr 2025 16:55:16 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Alex Rudenko (Gerrit)

unread,
Apr 29, 2025, 12:58:30 PMApr 29
to suresh potti, Andrey Kosyakov, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Yi Gu and suresh potti

Alex Rudenko added 3 comments

Patchset-level comments
Alex Rudenko . resolved

@ca...@chromium.org since you know more about the network and interception implementation could you please review as well?

File content/browser/devtools/devtools_instrumentation.cc
Line 2568, Patchset 16 (Latest): /*loader_id=*/"", request.headers, *request_info,
Alex Rudenko . unresolved

loader_id should be set unless the request is originating from a worker

Line 2571, Patchset 16 (Latest): /*initiator_devtools_request_id=*/"", /*frame_token=*/std::nullopt,
Alex Rudenko . unresolved

frameId is important for attributing a request to the correct frame

Open in Gerrit

Related details

Attention is currently required from:
  • Andrey Kosyakov
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Yi Gu
  • suresh potti
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 16
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Comment-Date: Tue, 29 Apr 2025 16:58:21 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Andrey Kosyakov (Gerrit)

unread,
Apr 29, 2025, 5:26:40 PMApr 29
to suresh potti, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Christian Biesinger, Nicolás Peña, Sam Goto, Yi Gu and suresh potti

Andrey Kosyakov added 3 comments

Patchset-level comments
Andrey Kosyakov . resolved

Please add test coverage.

File content/browser/webid/idp_network_request_manager.cc
Line 1346, Patchset 16 (Latest): if (IsDevToolsEnabled(frame_tree_node_id_)) {
Andrey Kosyakov . unresolved

This check is a little bit too coarse considering what is predicated upon it. The existence of a DevToolsAgentHost doesn't technically mean devtools are "enabled" for given target -- it may be somewhat incidental (e.g. someone doing a target discovery via chrome://inspect). The right thing to check is whether there's an enabled NetworkHandler. A potential problem with setting a request id the way it's done here is that we sometimes use presence of the network request id as an indication that the network domain has been enabled at the time of request creation, which, in this case, would not be a fair assumption.
So... how about this:

  • introduce `NetworkHandler::MaybeAssignDevtoolsId(network::ResourceRequest& request)`, where L1348-1349 will go `if (enabled_)` and if not set yet (there may be multiple handlers)
  • use the presence of id to gate further probes, including WillSendFedCmRequest() (or just do them unconditionally and expect devtools_instrumentation to bail out if there are no enabled agents).
Line 1415, Patchset 16 (Latest): auto it = url_devtools_request_id_map_.find(final_url);
Andrey Kosyakov . unresolved

So the final url is generally not the same as the URL we originally created the request for. Any chance we could use a stable key?

Open in Gerrit

Related details

Attention is currently required from:
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Comment-Date: Tue, 29 Apr 2025 21:26:30 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Nicolás Peña (Gerrit)

unread,
May 1, 2025, 11:05:45 AMMay 1
to suresh potti, Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Christian Biesinger, Sam Goto, Yi Gu and suresh potti

Nicolás Peña added 3 comments

Patchset-level comments
Nicolás Peña . resolved

Thanks for working on this! Any chance you could get a screencast and post it in the bug to see how it works?

File content/browser/devtools/devtools_instrumentation.cc
Line 2590, Patchset 16 (Latest): /*frame_id=*/std::nullopt);
Nicolás Peña . unresolved

Similar to Alex's comments above, I think this needs to be set

File content/browser/webid/idp_network_request_manager.h
Line 261, Patchset 16 (Latest): content::FrameTreeNodeId frame_tree_node_id = content::FrameTreeNodeId());
Nicolás Peña . unresolved

Please don't add a default value, the frame tree node ID should always be set to something

Open in Gerrit

Related details

Attention is currently required from:
  • Christian Biesinger
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Comment-Date: Thu, 01 May 2025 15:05:37 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

suresh potti (Gerrit)

unread,
May 1, 2025, 4:05:50 PMMay 1
to Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto and Yi Gu

suresh potti added 7 comments

Patchset-level comments
Alex Rudenko . unresolved

Thanks for a CL, I have got a few high-level questions:

1) could you please add inspector-protocol tests to third_party/blink/web_tests/http/tests/inspector-protocol/network/ to make sure that network events are instrumented in a way that CDP clients expect (typical network events, ability to retrieve request/response body)? Network events have a somewhat complex lifecycle so perhaps a doc would be good to define how much of Network needs to be supported for the requests to work in DevTools?

2) Do FedCM requests originate from the renderer? can they be attributes to a particular navigable? Can FedCM requests run from worker?

3) Are there any compatibility concerns for non-DevTools clients like WebDriver (especially if instrumentation is not complete). I see that FedCM integrates with the Fetch standard: exposing these CDP events would affect WebDriver BiDi. Are there plans to add FedCM x WebDriver coverage in WPT (https://github.com/web-platform-tests/wpt/tree/master/webdriver/tests/bidi/network).

Sam Goto

2) Do FedCM requests originate from the renderer?

They all originate from the browser process.

suresh potti

Can someone respond to Point 3 ?

File content/browser/devtools/devtools_instrumentation.cc
Line 2568, Patchset 16: /*loader_id=*/"", request.headers, *request_info,
Alex Rudenko . resolved

loader_id should be set unless the request is originating from a worker

suresh potti

Done

Line 2571, Patchset 16: /*initiator_devtools_request_id=*/"", /*frame_token=*/std::nullopt,
Alex Rudenko . resolved

frameId is important for attributing a request to the correct frame

suresh potti

Done

Line 2590, Patchset 16: /*frame_id=*/std::nullopt);
Nicolás Peña . resolved

Similar to Alex's comments above, I think this needs to be set

suresh potti

Done

File content/browser/webid/idp_network_request_manager.h
Line 261, Patchset 16: content::FrameTreeNodeId frame_tree_node_id = content::FrameTreeNodeId());
Nicolás Peña . resolved

Please don't add a default value, the frame tree node ID should always be set to something

suresh potti

It gets set in IdpNetworkRequestManager cstr.

File content/browser/webid/idp_network_request_manager.cc
Line 1346, Patchset 16: if (IsDevToolsEnabled(frame_tree_node_id_)) {
Andrey Kosyakov . resolved

This check is a little bit too coarse considering what is predicated upon it. The existence of a DevToolsAgentHost doesn't technically mean devtools are "enabled" for given target -- it may be somewhat incidental (e.g. someone doing a target discovery via chrome://inspect). The right thing to check is whether there's an enabled NetworkHandler. A potential problem with setting a request id the way it's done here is that we sometimes use presence of the network request id as an indication that the network domain has been enabled at the time of request creation, which, in this case, would not be a fair assumption.
So... how about this:

  • introduce `NetworkHandler::MaybeAssignDevtoolsId(network::ResourceRequest& request)`, where L1348-1349 will go `if (enabled_)` and if not set yet (there may be multiple handlers)
  • use the presence of id to gate further probes, including WillSendFedCmRequest() (or just do them unconditionally and expect devtools_instrumentation to bail out if there are no enabled agents).
suresh potti

Done

Line 1415, Patchset 16: auto it = url_devtools_request_id_map_.find(final_url);
Andrey Kosyakov . resolved

So the final url is generally not the same as the URL we originally created the request for. Any chance we could use a stable key?

suresh potti

I logged the url request at both place at request and reponse and it happens to be same.

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 18
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Thu, 01 May 2025 20:05:38 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Nicolás Peña <n...@chromium.org>
Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
Comment-In-Reply-To: Andrey Kosyakov <ca...@chromium.org>
Comment-In-Reply-To: Sam Goto <go...@google.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

Christian Biesinger (Gerrit)

unread,
May 1, 2025, 4:22:31 PMMay 1
to suresh potti, Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Nicolás Peña, Sam Goto, Sam Goto, Yi Gu and suresh potti

Christian Biesinger added 3 comments

Patchset-level comments
Alex Rudenko . unresolved

Thanks for a CL, I have got a few high-level questions:

1) could you please add inspector-protocol tests to third_party/blink/web_tests/http/tests/inspector-protocol/network/ to make sure that network events are instrumented in a way that CDP clients expect (typical network events, ability to retrieve request/response body)? Network events have a somewhat complex lifecycle so perhaps a doc would be good to define how much of Network needs to be supported for the requests to work in DevTools?

2) Do FedCM requests originate from the renderer? can they be attributes to a particular navigable? Can FedCM requests run from worker?

3) Are there any compatibility concerns for non-DevTools clients like WebDriver (especially if instrumentation is not complete). I see that FedCM integrates with the Fetch standard: exposing these CDP events would affect WebDriver BiDi. Are there plans to add FedCM x WebDriver coverage in WPT (https://github.com/web-platform-tests/wpt/tree/master/webdriver/tests/bidi/network).

Sam Goto

2) Do FedCM requests originate from the renderer?

They all originate from the browser process.

suresh potti

Can someone respond to Point 3 ?

Christian Biesinger

Alex (or caseq), can you clarify what your concern is? Obviously this change will expose new requests to devtools (and so, presumably, to webdriver bidi -- I had no idea network requests were part of that).

Regarding network event lifecycle, do you have a document explaining it?

File-level comment, Patchset 18 (Latest):
Christian Biesinger . resolved

n y

File content/browser/webid/idp_network_request_manager.cc
Line 1415, Patchset 16: auto it = url_devtools_request_id_map_.find(final_url);
Andrey Kosyakov . unresolved

So the final url is generally not the same as the URL we originally created the request for. Any chance we could use a stable key?

suresh potti

I logged the url request at both place at request and reponse and it happens to be same.

Christian Biesinger

They happened to be the same in that case, but for the well-known file they are often different. I think you need to pass the original URL to the callback (or the request ID, I guess)

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
  • suresh potti
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Thu, 01 May 2025 20:22:21 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
Comment-In-Reply-To: Andrey Kosyakov <ca...@chromium.org>
Comment-In-Reply-To: suresh potti <sures...@microsoft.com>
Comment-In-Reply-To: Sam Goto <go...@google.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

Andrey Kosyakov (Gerrit)

unread,
May 1, 2025, 4:33:54 PMMay 1
to suresh potti, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Nicolás Peña, Sam Goto, Sam Goto, Yi Gu and suresh potti

Andrey Kosyakov added 4 comments

File content/browser/webid/idp_network_request_manager.cc
Line 1350, Patchset 18 (Latest): if (IsDevToolsAttached(frame_tree_node_id_)) {
Andrey Kosyakov . unresolved

We can safely drop this check now -- assigning request id will only happen if this is true and does not cost much.

Line 1414, Patchset 18 (Latest): if (IsDevToolsAttached(frame_tree_node_id_)) {
Andrey Kosyakov . unresolved

ditto

Line 1415, Patchset 16: auto it = url_devtools_request_id_map_.find(final_url);
Andrey Kosyakov . unresolved

So the final url is generally not the same as the URL we originally created the request for. Any chance we could use a stable key?

suresh potti

I logged the url request at both place at request and reponse and it happens to be same.

Andrey Kosyakov

... in one particular case, not always. What if there are redirects? Let's just use url_loader pointer as a key.

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools.js
Line 34, Patchset 18 (Latest): await new Promise(resolve => setTimeout(resolve, 5000));
Andrey Kosyakov . unresolved

Let's avoid timeouts in tests, this is a source of flakiness. Is there a deterministic point where a request would have been sent? I assume by the time the dialog promise resolves?

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Thu, 01 May 2025 20:33:42 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Andrey Kosyakov (Gerrit)

unread,
May 1, 2025, 4:44:31 PMMay 1
to suresh potti, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Nicolás Peña, Sam Goto, Sam Goto, Yi Gu and suresh potti

Andrey Kosyakov added 1 comment

Patchset-level comments
Alex Rudenko . unresolved

Thanks for a CL, I have got a few high-level questions:

1) could you please add inspector-protocol tests to third_party/blink/web_tests/http/tests/inspector-protocol/network/ to make sure that network events are instrumented in a way that CDP clients expect (typical network events, ability to retrieve request/response body)? Network events have a somewhat complex lifecycle so perhaps a doc would be good to define how much of Network needs to be supported for the requests to work in DevTools?

2) Do FedCM requests originate from the renderer? can they be attributes to a particular navigable? Can FedCM requests run from worker?

3) Are there any compatibility concerns for non-DevTools clients like WebDriver (especially if instrumentation is not complete). I see that FedCM integrates with the Fetch standard: exposing these CDP events would affect WebDriver BiDi. Are there plans to add FedCM x WebDriver coverage in WPT (https://github.com/web-platform-tests/wpt/tree/master/webdriver/tests/bidi/network).

Sam Goto

2) Do FedCM requests originate from the renderer?

They all originate from the browser process.

suresh potti

Can someone respond to Point 3 ?

Christian Biesinger

Alex (or caseq), can you clarify what your concern is? Obviously this change will expose new requests to devtools (and so, presumably, to webdriver bidi -- I had no idea network requests were part of that).

Regarding network event lifecycle, do you have a document explaining it?

Andrey Kosyakov

I for one don't have concerns re (3) -- that is, in my view, if we *are* making a network request, why not expose it? An argument can be made that we generally expose the page-side view of the network, but we also have a precedent of exposing other types of network activity (signed exchange, keep alive etc). A somewhat unfortunate aspect is that we don't consistently apply network interception here, but this isn't new either. @alexr...@chromium.org, can you clarify your concerns?

Gerrit-Comment-Date: Thu, 01 May 2025 20:44:20 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Christian Biesinger <cbies...@chromium.org>
Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Alex Rudenko (Gerrit)

unread,
May 2, 2025, 2:19:32 AMMay 2
to suresh potti, Andrey Kosyakov, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Nicolás Peña, Sam Goto, Sam Goto, Yi Gu and suresh potti

Alex Rudenko added 1 comment

Patchset-level comments
Alex Rudenko . unresolved

Thanks for a CL, I have got a few high-level questions:

1) could you please add inspector-protocol tests to third_party/blink/web_tests/http/tests/inspector-protocol/network/ to make sure that network events are instrumented in a way that CDP clients expect (typical network events, ability to retrieve request/response body)? Network events have a somewhat complex lifecycle so perhaps a doc would be good to define how much of Network needs to be supported for the requests to work in DevTools?

2) Do FedCM requests originate from the renderer? can they be attributes to a particular navigable? Can FedCM requests run from worker?

3) Are there any compatibility concerns for non-DevTools clients like WebDriver (especially if instrumentation is not complete). I see that FedCM integrates with the Fetch standard: exposing these CDP events would affect WebDriver BiDi. Are there plans to add FedCM x WebDriver coverage in WPT (https://github.com/web-platform-tests/wpt/tree/master/webdriver/tests/bidi/network).

Sam Goto

2) Do FedCM requests originate from the renderer?

They all originate from the browser process.

suresh potti

Can someone respond to Point 3 ?

Christian Biesinger

Alex (or caseq), can you clarify what your concern is? Obviously this change will expose new requests to devtools (and so, presumably, to webdriver bidi -- I had no idea network requests were part of that).

Regarding network event lifecycle, do you have a document explaining it?

Andrey Kosyakov

I for one don't have concerns re (3) -- that is, in my view, if we *are* making a network request, why not expose it? An argument can be made that we generally expose the page-side view of the network, but we also have a precedent of exposing other types of network activity (signed exchange, keep alive etc). A somewhat unfortunate aspect is that we don't consistently apply network interception here, but this isn't new either. @alexr...@chromium.org, can you clarify your concerns?

Alex Rudenko

My main concern was the lack of test coverage for the change and the #3 is mostly questions about the plans for FedCM network instrumentation for WebDriver. The WebDriver BiDi specification for network events is here https://w3c.github.io/webdriver-bidi/#module-network It would be great if we could add test coverage for FedCM and WebDriver. If the instrumentation for FedCM in CDP is not consistently applied as caseq@ mentioned, it might break WebDriver for automation clients if they start using FedCM. If the instrumentation is partial (for example, not all events are emitted or interception is not possible, or dummy data is used for some events), perhaps we could use a flag to opt-in clients one by one (for example, adding a flag in Network.enable(emitFedCmEvents: bool)).

Open in Gerrit

Related details

Attention is currently required from:
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Fri, 02 May 2025 06:19:22 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Christian Biesinger <cbies...@chromium.org>
Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
Comment-In-Reply-To: Andrey Kosyakov <ca...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Alex Rudenko (Gerrit)

unread,
May 2, 2025, 2:27:29 AMMay 2
to suresh potti, Andrey Kosyakov, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Nicolás Peña, Sam Goto, Sam Goto, Yi Gu and suresh potti

Alex Rudenko added 1 comment

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools.js
Line 8, Patchset 18 (Latest): dp.Network.onRequestWillBeSent(event => {
Alex Rudenko . unresolved

Let's also log other instrumented events and assert other metadata on the network events (at least frameId, type, extraInfo). Are FedCM requests expected to result in Network.requestWillBeSentExtraInfo and Network.responseReceivedExtraInfo events? (we could check that hasExtraInfo is set correctly and events are emitted/not emitted accordingly)

Gerrit-Comment-Date: Fri, 02 May 2025 06:27:18 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

suresh potti (Gerrit)

unread,
May 2, 2025, 3:58:38 AMMay 2
to Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto and Yi Gu

suresh potti added 5 comments

File content/browser/webid/idp_network_request_manager.cc
Line 1350, Patchset 18: if (IsDevToolsAttached(frame_tree_node_id_)) {
Andrey Kosyakov . resolved

We can safely drop this check now -- assigning request id will only happen if this is true and does not cost much.

suresh potti

Done

Line 1414, Patchset 18: if (IsDevToolsAttached(frame_tree_node_id_)) {
Andrey Kosyakov . resolved

ditto

suresh potti

Done

Line 1415, Patchset 16: auto it = url_devtools_request_id_map_.find(final_url);
Andrey Kosyakov . resolved

So the final url is generally not the same as the URL we originally created the request for. Any chance we could use a stable key?

suresh potti

I logged the url request at both place at request and reponse and it happens to be same.

Andrey Kosyakov

... in one particular case, not always. What if there are redirects? Let's just use url_loader pointer as a key.

suresh potti

Done

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools.js
Line 8, Patchset 18: dp.Network.onRequestWillBeSent(event => {
Alex Rudenko . resolved

Let's also log other instrumented events and assert other metadata on the network events (at least frameId, type, extraInfo). Are FedCM requests expected to result in Network.requestWillBeSentExtraInfo and Network.responseReceivedExtraInfo events? (we could check that hasExtraInfo is set correctly and events are emitted/not emitted accordingly)

suresh potti

Federated Credential Management (FedCM) requests initiated from the browser process do not set any ExtraInfo. These requests utilize the following events:

Network.onRequestWillBeSent
Network.onResponseReceived
Network.onLoadingFinished

Modifications were made in the web test to verify the URL and method from the request parameters, as well as the URL, status, and statusText from the response parameters and encodedDataLength from onLoadingFinished parameters.

Line 34, Patchset 18: await new Promise(resolve => setTimeout(resolve, 5000));
Andrey Kosyakov . resolved

Let's avoid timeouts in tests, this is a source of flakiness. Is there a deterministic point where a request would have been sent? I assume by the time the dialog promise resolves?

suresh potti

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 20
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Fri, 02 May 2025 07:58:26 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Nicolás Peña (Gerrit)

unread,
May 2, 2025, 1:33:11 PMMay 2
to suresh potti, Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto, Yi Gu and suresh potti

Nicolás Peña added 2 comments

File content/browser/webid/idp_network_request_manager.h
Line 261, Patchset 16: content::FrameTreeNodeId frame_tree_node_id = content::FrameTreeNodeId());
Nicolás Peña . unresolved

Please don't add a default value, the frame tree node ID should always be set to something

suresh potti

It gets set in IdpNetworkRequestManager cstr.

Nicolás Peña

I mean not having a default value for the parameter.

File content/browser/webid/idp_network_request_manager_unittest.cc
Line 349, Patchset 24 (Latest): content::BrowserTaskEnvironment::MainThreadType::UI};
Nicolás Peña . unresolved

Why is this needed?

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Sam Goto
  • Sam Goto
  • Yi Gu
  • suresh potti
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 24
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Fri, 02 May 2025 17:33:03 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Nicolás Peña <n...@chromium.org>
Comment-In-Reply-To: suresh potti <sures...@microsoft.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

suresh potti (Gerrit)

unread,
May 2, 2025, 2:18:44 PMMay 2
to Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto and Yi Gu

suresh potti added 3 comments

Patchset-level comments
Alex Rudenko . unresolved

Thanks for a CL, I have got a few high-level questions:

1) could you please add inspector-protocol tests to third_party/blink/web_tests/http/tests/inspector-protocol/network/ to make sure that network events are instrumented in a way that CDP clients expect (typical network events, ability to retrieve request/response body)? Network events have a somewhat complex lifecycle so perhaps a doc would be good to define how much of Network needs to be supported for the requests to work in DevTools?

2) Do FedCM requests originate from the renderer? can they be attributes to a particular navigable? Can FedCM requests run from worker?

3) Are there any compatibility concerns for non-DevTools clients like WebDriver (especially if instrumentation is not complete). I see that FedCM integrates with the Fetch standard: exposing these CDP events would affect WebDriver BiDi. Are there plans to add FedCM x WebDriver coverage in WPT (https://github.com/web-platform-tests/wpt/tree/master/webdriver/tests/bidi/network).

Sam Goto

2) Do FedCM requests originate from the renderer?

They all originate from the browser process.

suresh potti

Can someone respond to Point 3 ?

Christian Biesinger

Alex (or caseq), can you clarify what your concern is? Obviously this change will expose new requests to devtools (and so, presumably, to webdriver bidi -- I had no idea network requests were part of that).

Regarding network event lifecycle, do you have a document explaining it?

Andrey Kosyakov

I for one don't have concerns re (3) -- that is, in my view, if we *are* making a network request, why not expose it? An argument can be made that we generally expose the page-side view of the network, but we also have a precedent of exposing other types of network activity (signed exchange, keep alive etc). A somewhat unfortunate aspect is that we don't consistently apply network interception here, but this isn't new either. @alexr...@chromium.org, can you clarify your concerns?

Alex Rudenko

My main concern was the lack of test coverage for the change and the #3 is mostly questions about the plans for FedCM network instrumentation for WebDriver. The WebDriver BiDi specification for network events is here https://w3c.github.io/webdriver-bidi/#module-network It would be great if we could add test coverage for FedCM and WebDriver. If the instrumentation for FedCM in CDP is not consistently applied as caseq@ mentioned, it might break WebDriver for automation clients if they start using FedCM. If the instrumentation is partial (for example, not all events are emitted or interception is not possible, or dummy data is used for some events), perhaps we could use a flag to opt-in clients one by one (for example, adding a flag in Network.enable(emitFedCmEvents: bool)).

suresh potti

Given the addition of web_tests, is it still necessary to address Point 3?

File content/browser/webid/idp_network_request_manager.h
Line 261, Patchset 16: content::FrameTreeNodeId frame_tree_node_id = content::FrameTreeNodeId());
Nicolás Peña . resolved

Please don't add a default value, the frame tree node ID should always be set to something

suresh potti

It gets set in IdpNetworkRequestManager cstr.

Nicolás Peña

I mean not having a default value for the parameter.

suresh potti

Done

File content/browser/webid/idp_network_request_manager_unittest.cc
Line 349, Patchset 24: content::BrowserTaskEnvironment::MainThreadType::UI};
Nicolás Peña . unresolved

Why is this needed?

suresh potti

This change was needed as to address DCHECK failure caused by FrameTreeNode::GloballyFindByID(....) which expects to run in BrowserThread::UI thread.
This came as a surprise as i always thought TaskEnvironment::MainThreadType::UI is same as BrowserThread::UI but it isn't.

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 25
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Fri, 02 May 2025 18:18:29 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Nicolás Peña <n...@chromium.org>
Comment-In-Reply-To: Christian Biesinger <cbies...@chromium.org>
Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
Comment-In-Reply-To: Andrey Kosyakov <ca...@chromium.org>
Comment-In-Reply-To: suresh potti <sures...@microsoft.com>
Comment-In-Reply-To: Sam Goto <go...@google.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

Alex Rudenko (Gerrit)

unread,
May 5, 2025, 4:26:00 AMMay 5
to suresh potti, Andrey Kosyakov, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto, Yi Gu and suresh potti

Alex Rudenko added 3 comments

Patchset-level comments
Alex Rudenko . unresolved

Thanks for a CL, I have got a few high-level questions:

1) could you please add inspector-protocol tests to third_party/blink/web_tests/http/tests/inspector-protocol/network/ to make sure that network events are instrumented in a way that CDP clients expect (typical network events, ability to retrieve request/response body)? Network events have a somewhat complex lifecycle so perhaps a doc would be good to define how much of Network needs to be supported for the requests to work in DevTools?

2) Do FedCM requests originate from the renderer? can they be attributes to a particular navigable? Can FedCM requests run from worker?

3) Are there any compatibility concerns for non-DevTools clients like WebDriver (especially if instrumentation is not complete). I see that FedCM integrates with the Fetch standard: exposing these CDP events would affect WebDriver BiDi. Are there plans to add FedCM x WebDriver coverage in WPT (https://github.com/web-platform-tests/wpt/tree/master/webdriver/tests/bidi/network).

Sam Goto

2) Do FedCM requests originate from the renderer?

They all originate from the browser process.

suresh potti

Can someone respond to Point 3 ?

Christian Biesinger

Alex (or caseq), can you clarify what your concern is? Obviously this change will expose new requests to devtools (and so, presumably, to webdriver bidi -- I had no idea network requests were part of that).

Regarding network event lifecycle, do you have a document explaining it?

Andrey Kosyakov

I for one don't have concerns re (3) -- that is, in my view, if we *are* making a network request, why not expose it? An argument can be made that we generally expose the page-side view of the network, but we also have a precedent of exposing other types of network activity (signed exchange, keep alive etc). A somewhat unfortunate aspect is that we don't consistently apply network interception here, but this isn't new either. @alexr...@chromium.org, can you clarify your concerns?

Alex Rudenko

My main concern was the lack of test coverage for the change and the #3 is mostly questions about the plans for FedCM network instrumentation for WebDriver. The WebDriver BiDi specification for network events is here https://w3c.github.io/webdriver-bidi/#module-network It would be great if we could add test coverage for FedCM and WebDriver. If the instrumentation for FedCM in CDP is not consistently applied as caseq@ mentioned, it might break WebDriver for automation clients if they start using FedCM. If the instrumentation is partial (for example, not all events are emitted or interception is not possible, or dummy data is used for some events), perhaps we could use a flag to opt-in clients one by one (for example, adding a flag in Network.enable(emitFedCmEvents: bool)).

suresh potti

Given the addition of web_tests, is it still necessary to address Point 3?

Alex Rudenko

Yes, I think it would be great to eventually address #3 unrelated to the CL.

File content/browser/devtools/devtools_instrumentation.cc
Line 2579, Patchset 26 (Latest): /*loader_id=*/request.devtools_request_id.value(), request.headers,
Alex Rudenko . unresolved

loader_id should be the request ID of the request that loaded the document (which in turn triggered the current network request). Would it be possible to send the correct loader_id here?

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools-expected.txt
Line 22, Patchset 26 (Latest): pictureUrl : https://idp.example/profile/567
Alex Rudenko . unresolved

I tested locally and I see that requests to https://idp.example/profile/567 and https://idp.example/profile/123 are also being issued but only the requestWillBeSent events are emitted. This could stall automation clients that wait for the loadingFailed or loadingComplete events (stalls Puppeteer when waiting for the idle network and in the frontend they also show up as forever pending). Could you please add instrumentation for the loading failed events as well (I assume that it fails due to inaccessible URL) and corresponding tests?

Open in Gerrit

Related details

Attention is currently required from:
  • Andrey Kosyakov
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
  • suresh potti
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 26
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Mon, 05 May 2025 08:25:53 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Christian Biesinger (Gerrit)

unread,
May 5, 2025, 7:26:17 PMMay 5
to suresh potti, Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Andrey Kosyakov, Nicolás Peña, Sam Goto, Sam Goto, Yi Gu and suresh potti

Christian Biesinger added 2 comments

File content/browser/webid/idp_network_request_manager.cc
Line 1379, Patchset 26 (Latest): // For the metrics endpoint, we do not care about the result.
Christian Biesinger . unresolved

we should move this entire if block below the devtools call -- we should still notify devtools that we finished the metrics endpoint call.

Line 1403, Patchset 26 (Latest): if (url_loader && response_info) {
Christian Biesinger . unresolved

thinking about our discussion earlier, I suspect this is null if the request fails below the HTTP layer -- we should still notify devtools if that happens

Open in Gerrit

Related details

Attention is currently required from:
  • Andrey Kosyakov
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Mon, 05 May 2025 23:26:10 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

suresh potti (Gerrit)

unread,
May 6, 2025, 4:01:45 AMMay 6
to Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto and Yi Gu

suresh potti added 4 comments

File content/browser/devtools/devtools_instrumentation.cc
Line 2579, Patchset 26: /*loader_id=*/request.devtools_request_id.value(), request.headers,
Alex Rudenko . resolved

loader_id should be the request ID of the request that loaded the document (which in turn triggered the current network request). Would it be possible to send the correct loader_id here?

suresh potti

Done

File content/browser/webid/idp_network_request_manager.cc
Line 1379, Patchset 26: // For the metrics endpoint, we do not care about the result.
Christian Biesinger . unresolved

we should move this entire if block below the devtools call -- we should still notify devtools that we finished the metrics endpoint call.

suresh potti

made changes accordingly

Line 1403, Patchset 26: if (url_loader && response_info) {
Christian Biesinger . unresolved

thinking about our discussion earlier, I suspect this is null if the request fails below the HTTP layer -- we should still notify devtools if that happens

suresh potti

made cahnges accordingly

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools-expected.txt
Alex Rudenko . unresolved

I tested locally and I see that requests to https://idp.example/profile/567 and https://idp.example/profile/123 are also being issued but only the requestWillBeSent events are emitted. This could stall automation clients that wait for the loadingFailed or loadingComplete events (stalls Puppeteer when waiting for the idle network and in the frontend they also show up as forever pending). Could you please add instrumentation for the loading failed events as well (I assume that it fails due to inaccessible URL) and corresponding tests?

suresh potti

Captured in logs on loading success & failed events

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 28
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Tue, 06 May 2025 08:01:36 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Alex Rudenko (Gerrit)

unread,
May 6, 2025, 4:33:37 AMMay 6
to suresh potti, Andrey Kosyakov, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto, Yi Gu and suresh potti

Alex Rudenko added 4 comments

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools-expected.txt
Alex Rudenko . unresolved

I tested locally and I see that requests to https://idp.example/profile/567 and https://idp.example/profile/123 are also being issued but only the requestWillBeSent events are emitted. This could stall automation clients that wait for the loadingFailed or loadingComplete events (stalls Puppeteer when waiting for the idle network and in the frontend they also show up as forever pending). Could you please add instrumentation for the loading failed events as well (I assume that it fails due to inaccessible URL) and corresponding tests?

suresh potti

Captured in logs on loading success & failed events

Alex Rudenko

I do see loading failed events but DevTools does not handle it right (still shows as pending): https://i.imgur.com/6TTDxj3.png I think frameId is missing and loaderId is not correct for some of the events. Potentially there are some other problems with instrumentation for those images.

Line 38, Patchset 28 (Latest):Url: https://devtools.test:8443/inspector-protocol/fedcm/resources/dialog-shown-event.https.html, Status: 200::OK
Alex Rudenko . unresolved

nit: we can probably subscribe to network events after we navigate to the page to avoid logging navigation related events.

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools.js
Line 16, Patchset 28 (Latest): dp.Network.onRequestWillBeSent(event => {
Alex Rudenko . unresolved

Let's verify that all events have the same loader ID. It should be the one from the Page.frameNavigated event when we navigate to https://devtools.test:8443/inspector-protocol/fedcm/resources/dialog-shown-event.https.html I tested locally and it looks like it's correct for requestWillBeSent but incorrect for responseReceived events.

We can also verify frameId in the test (which seems to be correct for all events).

Line 52, Patchset 28 (Latest): await dp.FedCm.enable({disableRejectionDelay: true});
Alex Rudenko . unresolved

nit: should we enable FedCM before we trigger the dialog? to avoid potential flakiness

Open in Gerrit

Related details

Attention is currently required from:
  • Andrey Kosyakov
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
  • suresh potti
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Tue, 06 May 2025 08:33:27 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Alex Rudenko (Gerrit)

unread,
May 6, 2025, 5:28:50 AMMay 6
to suresh potti, Andrey Kosyakov, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto, Yi Gu and suresh potti

Alex Rudenko added 1 comment

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools-expected.txt
Alex Rudenko . unresolved

I tested locally and I see that requests to https://idp.example/profile/567 and https://idp.example/profile/123 are also being issued but only the requestWillBeSent events are emitted. This could stall automation clients that wait for the loadingFailed or loadingComplete events (stalls Puppeteer when waiting for the idle network and in the frontend they also show up as forever pending). Could you please add instrumentation for the loading failed events as well (I assume that it fails due to inaccessible URL) and corresponding tests?

suresh potti

Captured in logs on loading success & failed events

Alex Rudenko

I do see loading failed events but DevTools does not handle it right (still shows as pending): https://i.imgur.com/6TTDxj3.png I think frameId is missing and loaderId is not correct for some of the events. Potentially there are some other problems with instrumentation for those images.

Alex Rudenko

it looks like the image request are not actually going through the instrumentation added in this CL? Could we add a failing test case for instrumentation added in this CL?

Gerrit-Comment-Date: Tue, 06 May 2025 09:28:39 +0000
satisfied_requirement
unsatisfied_requirement
open
diffy

suresh potti (Gerrit)

unread,
May 6, 2025, 10:02:26 AMMay 6
to Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto and Yi Gu

suresh potti added 8 comments

Patchset-level comments
File-level comment, Patchset 16:
Alex Rudenko . resolved

Thanks for a CL, I have got a few high-level questions:

1) could you please add inspector-protocol tests to third_party/blink/web_tests/http/tests/inspector-protocol/network/ to make sure that network events are instrumented in a way that CDP clients expect (typical network events, ability to retrieve request/response body)? Network events have a somewhat complex lifecycle so perhaps a doc would be good to define how much of Network needs to be supported for the requests to work in DevTools?

2) Do FedCM requests originate from the renderer? can they be attributes to a particular navigable? Can FedCM requests run from worker?

3) Are there any compatibility concerns for non-DevTools clients like WebDriver (especially if instrumentation is not complete). I see that FedCM integrates with the Fetch standard: exposing these CDP events would affect WebDriver BiDi. Are there plans to add FedCM x WebDriver coverage in WPT (https://github.com/web-platform-tests/wpt/tree/master/webdriver/tests/bidi/network).

Sam Goto

2) Do FedCM requests originate from the renderer?

They all originate from the browser process.

suresh potti

Can someone respond to Point 3 ?

Christian Biesinger

Alex (or caseq), can you clarify what your concern is? Obviously this change will expose new requests to devtools (and so, presumably, to webdriver bidi -- I had no idea network requests were part of that).

Regarding network event lifecycle, do you have a document explaining it?

Andrey Kosyakov

I for one don't have concerns re (3) -- that is, in my view, if we *are* making a network request, why not expose it? An argument can be made that we generally expose the page-side view of the network, but we also have a precedent of exposing other types of network activity (signed exchange, keep alive etc). A somewhat unfortunate aspect is that we don't consistently apply network interception here, but this isn't new either. @alexr...@chromium.org, can you clarify your concerns?

Alex Rudenko

My main concern was the lack of test coverage for the change and the #3 is mostly questions about the plans for FedCM network instrumentation for WebDriver. The WebDriver BiDi specification for network events is here https://w3c.github.io/webdriver-bidi/#module-network It would be great if we could add test coverage for FedCM and WebDriver. If the instrumentation for FedCM in CDP is not consistently applied as caseq@ mentioned, it might break WebDriver for automation clients if they start using FedCM. If the instrumentation is partial (for example, not all events are emitted or interception is not possible, or dummy data is used for some events), perhaps we could use a flag to opt-in clients one by one (for example, adding a flag in Network.enable(emitFedCmEvents: bool)).

suresh potti

Given the addition of web_tests, is it still necessary to address Point 3?

Alex Rudenko

Yes, I think it would be great to eventually address #3 unrelated to the CL.

suresh potti

Done

File content/browser/webid/idp_network_request_manager.cc
Line 1379, Patchset 26: // For the metrics endpoint, we do not care about the result.
Christian Biesinger . resolved

we should move this entire if block below the devtools call -- we should still notify devtools that we finished the metrics endpoint call.

suresh potti

made changes accordingly

suresh potti

Done

Line 1403, Patchset 26: if (url_loader && response_info) {
Christian Biesinger . resolved

thinking about our discussion earlier, I suspect this is null if the request fails below the HTTP layer -- we should still notify devtools if that happens

suresh potti

made cahnges accordingly

suresh potti

Done

File content/browser/webid/idp_network_request_manager_unittest.cc
Line 349, Patchset 24: content::BrowserTaskEnvironment::MainThreadType::UI};
Nicolás Peña . resolved

Why is this needed?

suresh potti

This change was needed as to address DCHECK failure caused by FrameTreeNode::GloballyFindByID(....) which expects to run in BrowserThread::UI thread.
This came as a surprise as i always thought TaskEnvironment::MainThreadType::UI is same as BrowserThread::UI but it isn't.

suresh potti

Done

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools-expected.txt
Alex Rudenko . unresolved

I tested locally and I see that requests to https://idp.example/profile/567 and https://idp.example/profile/123 are also being issued but only the requestWillBeSent events are emitted. This could stall automation clients that wait for the loadingFailed or loadingComplete events (stalls Puppeteer when waiting for the idle network and in the frontend they also show up as forever pending). Could you please add instrumentation for the loading failed events as well (I assume that it fails due to inaccessible URL) and corresponding tests?

suresh potti

Captured in logs on loading success & failed events

Alex Rudenko

I do see loading failed events but DevTools does not handle it right (still shows as pending): https://i.imgur.com/6TTDxj3.png I think frameId is missing and loaderId is not correct for some of the events. Potentially there are some other problems with instrumentation for those images.

Alex Rudenko

it looks like the image request are not actually going through the instrumentation added in this CL? Could we add a failing test case for instrumentation added in this CL?

suresh potti

Corrected laoderId set on response.

nit: we can probably subscribe to network events after we navigate to the page to avoid logging navigation related events.

suresh potti

Done

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools.js
Line 16, Patchset 28: dp.Network.onRequestWillBeSent(event => {
Alex Rudenko . resolved

Let's verify that all events have the same loader ID. It should be the one from the Page.frameNavigated event when we navigate to https://devtools.test:8443/inspector-protocol/fedcm/resources/dialog-shown-event.https.html I tested locally and it looks like it's correct for requestWillBeSent but incorrect for responseReceived events.

We can also verify frameId in the test (which seems to be correct for all events).

suresh potti

Thanks for pointing it out. Seems i didnt update the logic for DidReceiveFedCmResponse on passing correct loader_id.

Line 52, Patchset 28: await dp.FedCm.enable({disableRejectionDelay: true});
Alex Rudenko . resolved

nit: should we enable FedCM before we trigger the dialog? to avoid potential flakiness

suresh potti

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 30
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Tue, 06 May 2025 14:02:11 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Nicolás Peña <n...@chromium.org>
Comment-In-Reply-To: Christian Biesinger <cbies...@chromium.org>
Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Nicolás Peña (Gerrit)

unread,
May 6, 2025, 10:44:15 AMMay 6
to suresh potti, Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto, Yi Gu and suresh potti

Nicolás Peña added 5 comments

Commit Message
Line 9, Patchset 30 (Latest):Low-Coverage-Reason: OTHER.
Nicolás Peña . unresolved

Is this still needed?

File content/browser/webid/idp_network_request_manager.h
Line 397, Patchset 30 (Latest): urlloader_devtools_request_id_map_;
Nicolás Peña . unresolved

nit: add a comment about what this is storing?

Line 394, Patchset 30 (Latest): base::UnguessableToken frame_token_;
Nicolás Peña . unresolved

nit: devtools_frame_token_?

File content/browser/webid/idp_network_request_manager.cc
Line 1377, Patchset 30 (Latest): if (!callback) {
Nicolás Peña . unresolved

Do we need to notify devtools even if callback is not present? Based on the comment below this only occurs for metrics endpoint so I'm thinking yes? You could move your code to the beginning of the method

Line 1407, Patchset 30 (Latest): status.value_or(network::URLLoaderCompletionStatus(net::ERR_FAILED));
Nicolás Peña . unresolved

Implementations of this usually use url_loader->NetError() instead

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Sam Goto
  • Sam Goto
  • Yi Gu
  • suresh potti
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Tue, 06 May 2025 14:44:01 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

suresh potti (Gerrit)

unread,
May 6, 2025, 2:08:02 PMMay 6
to Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto and Yi Gu

suresh potti added 5 comments

Commit Message
Line 9, Patchset 30:Low-Coverage-Reason: OTHER.
Nicolás Peña . resolved

Is this still needed?

suresh potti

Yes, to supppress the warnings on code coverage for newly added code.

File content/browser/webid/idp_network_request_manager.h
Line 397, Patchset 30: urlloader_devtools_request_id_map_;
Nicolás Peña . resolved

nit: add a comment about what this is storing?

suresh potti

Done

Line 394, Patchset 30: base::UnguessableToken frame_token_;
Nicolás Peña . resolved

nit: devtools_frame_token_?

suresh potti

Done

File content/browser/webid/idp_network_request_manager.cc
Line 1377, Patchset 30: if (!callback) {
Nicolás Peña . resolved

Do we need to notify devtools even if callback is not present? Based on the comment below this only occurs for metrics endpoint so I'm thinking yes? You could move your code to the beginning of the method

suresh potti

Done

Line 1407, Patchset 30: status.value_or(network::URLLoaderCompletionStatus(net::ERR_FAILED));
Nicolás Peña . resolved

Implementations of this usually use url_loader->NetError() instead

suresh potti

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 31
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Tue, 06 May 2025 18:07:51 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Nicolás Peña <n...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Christian Biesinger (Gerrit)

unread,
May 6, 2025, 2:36:44 PMMay 6
to suresh potti, Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Nicolás Peña, Sam Goto, Sam Goto, Yi Gu and suresh potti

Christian Biesinger added 4 comments

File content/browser/devtools/devtools_instrumentation.cc
Line 1468, Patchset 31 (Latest):bool UpdateLoaderIdIfExists(FrameTreeNodeId frame_tree_node_id,
Christian Biesinger . unresolved

`Get` seems like a better name than `Update`

returning a `std::optional<string>` instead of bool + out param is maybe a bit easier to use?

Line 1491, Patchset 31 (Latest): return false;
Christian Biesinger . unresolved

the previous code did the equivalent of `return true` here

Line 2615, Patchset 31 (Latest): // if we cannot get the loader_id from the parent, use an empty string.
Christian Biesinger . unresolved

this does not seem to match the actual behavior. the behavior seems to be not to send notifications if we can't get a loader id...

Line 2622, Patchset 31 (Latest): protocol::Network::ResourceTypeEnum::Other, *response_info,
Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
  • suresh potti
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Tue, 06 May 2025 18:36:32 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

suresh potti (Gerrit)

unread,
May 6, 2025, 3:34:22 PMMay 6
to Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto and Yi Gu

suresh potti added 4 comments

File content/browser/devtools/devtools_instrumentation.cc
Line 1468, Patchset 31:bool UpdateLoaderIdIfExists(FrameTreeNodeId frame_tree_node_id,
Christian Biesinger . resolved

`Get` seems like a better name than `Update`

returning a `std::optional<string>` instead of bool + out param is maybe a bit easier to use?

suresh potti

Done

Line 1491, Patchset 31: return false;
Christian Biesinger . resolved

the previous code did the equivalent of `return true` here

suresh potti

Done

Line 2615, Patchset 31: // if we cannot get the loader_id from the parent, use an empty string.
Christian Biesinger . resolved

this does not seem to match the actual behavior. the behavior seems to be not to send notifications if we can't get a loader id...

suresh potti

Done

Line 2622, Patchset 31: protocol::Network::ResourceTypeEnum::Other, *response_info,
Christian Biesinger . resolved
suresh potti

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 32
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Tue, 06 May 2025 19:34:07 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Christian Biesinger <cbies...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Andrey Kosyakov (Gerrit)

unread,
May 6, 2025, 4:40:45 PMMay 6
to suresh potti, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto, Yi Gu and suresh potti

Andrey Kosyakov added 12 comments

File content/browser/devtools/devtools_instrumentation.h
Line 487, Patchset 31: const base::UnguessableToken& frame_token,
Andrey Kosyakov . unresolved

ditto

Line 481, Patchset 31: const base::UnguessableToken& frame_token);
Andrey Kosyakov . unresolved

You shouldn't need to pass both devtools frame token and `frame_tree_node_id`, the former is available from `RenderFrameHostImpl` on the impl site (i.e. in `devtools_instrumentation.cc` when you resolve `frame_tree_node_id`)

Line 479, Patchset 31:void WillSendFedCmRequest(const FrameTreeNodeId frame_tree_node_id,
Andrey Kosyakov . unresolved

I just realized you're adding an overload for an identifier that already exists (L471). It's quite unfortunate to have overloads that do unrelated things. Let's rename either one (those you're adding could be `...NetworkResponse` for example).

Also, here and below, no need for `const` since you're passing by value.

File content/browser/devtools/devtools_instrumentation.cc
Line 1469, Patchset 31: std::string& loader_id) {
Andrey Kosyakov . unresolved

So this optionally returns value through an output parameter and indicates whether it happened through return value? We generally [prefer](https://abseil.io/tips/176) returning just an `std::optional<std::string>` in such cases. Let's also rename this to something like `MaybeGetLoaderIdForFrame()`

Line 1471, Patchset 31: if (!frame_tree_node_id) {
Andrey Kosyakov . unresolved

We should be able to remove this, `GloballyFindByID()` would just return a nullptr.

Line 1648, Patchset 31: // if we cannot get the loader_id from the parent, use an empty string.
Andrey Kosyakov . unresolved

This is a bit misleading now, given we're not dispatching the instrumentation signal in case `UpdateLoderIdIfExists()` fails to obtain the id.

Line 2590, Patchset 31: // if we cannot get the loader_id from the parent, use an empty string.
Andrey Kosyakov . unresolved

As above.

File content/browser/webid/idp_network_request_manager.h
Line 394, Patchset 31: base::UnguessableToken devtools_frame_token_;
Andrey Kosyakov . unresolved

Just `frame_tree_node_id_` should be sufficient per comments above.

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools.js
Line 28, Patchset 31: const frame_Id = event.params.frameId;
Andrey Kosyakov . unresolved

Let's give these two some distinct names instead of using ones that are both not style-compliant and easy to mix up with those in outer scope.

Line 30, Patchset 31: if(loaderId === "" && framedId === "" ){
Andrey Kosyakov . unresolved

`if (`

Line 35, Patchset 31: if( (loaderId === loader_Id) && (framedId === frame_Id )){
Andrey Kosyakov . unresolved

`if ((`

Line 37, Patchset 31: requestIdParams.set(params.requestId, params.request.url);
Andrey Kosyakov . unresolved

so `requestIdParams` really is rather `urlByRequestId`?

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
  • suresh potti
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 31
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Tue, 06 May 2025 20:40:35 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

suresh potti (Gerrit)

unread,
May 7, 2025, 12:42:34 PMMay 7
to Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Nicolás Peña, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Nicolás Peña, Sam Goto, Sam Goto and Yi Gu

suresh potti added 12 comments

File content/browser/devtools/devtools_instrumentation.h
Line 487, Patchset 31: const base::UnguessableToken& frame_token,
Andrey Kosyakov . resolved

ditto

suresh potti

Done

Line 481, Patchset 31: const base::UnguessableToken& frame_token);
Andrey Kosyakov . resolved

You shouldn't need to pass both devtools frame token and `frame_tree_node_id`, the former is available from `RenderFrameHostImpl` on the impl site (i.e. in `devtools_instrumentation.cc` when you resolve `frame_tree_node_id`)

suresh potti

Done

Line 479, Patchset 31:void WillSendFedCmRequest(const FrameTreeNodeId frame_tree_node_id,
Andrey Kosyakov . resolved

I just realized you're adding an overload for an identifier that already exists (L471). It's quite unfortunate to have overloads that do unrelated things. Let's rename either one (those you're adding could be `...NetworkResponse` for example).

Also, here and below, no need for `const` since you're passing by value.

suresh potti

Done

File content/browser/devtools/devtools_instrumentation.cc
Line 1469, Patchset 31: std::string& loader_id) {
Andrey Kosyakov . resolved

So this optionally returns value through an output parameter and indicates whether it happened through return value? We generally [prefer](https://abseil.io/tips/176) returning just an `std::optional<std::string>` in such cases. Let's also rename this to something like `MaybeGetLoaderIdForFrame()`

suresh potti

Done

Line 1471, Patchset 31: if (!frame_tree_node_id) {
Andrey Kosyakov . resolved

We should be able to remove this, `GloballyFindByID()` would just return a nullptr.

suresh potti

Done

Line 1648, Patchset 31: // if we cannot get the loader_id from the parent, use an empty string.
Andrey Kosyakov . resolved

This is a bit misleading now, given we're not dispatching the instrumentation signal in case `UpdateLoderIdIfExists()` fails to obtain the id.

suresh potti

Done

Line 2590, Patchset 31: // if we cannot get the loader_id from the parent, use an empty string.
Andrey Kosyakov . resolved

As above.

suresh potti

Done

File content/browser/webid/idp_network_request_manager.h
Line 394, Patchset 31: base::UnguessableToken devtools_frame_token_;
Andrey Kosyakov . resolved

Just `frame_tree_node_id_` should be sufficient per comments above.

suresh potti

Done

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools.js
Line 28, Patchset 31: const frame_Id = event.params.frameId;
Andrey Kosyakov . resolved

Let's give these two some distinct names instead of using ones that are both not style-compliant and easy to mix up with those in outer scope.

suresh potti

Done

Line 30, Patchset 31: if(loaderId === "" && framedId === "" ){
Andrey Kosyakov . resolved

`if (`

suresh potti

Done

Line 35, Patchset 31: if( (loaderId === loader_Id) && (framedId === frame_Id )){
Andrey Kosyakov . resolved

`if ((`

suresh potti

Done

Line 37, Patchset 31: requestIdParams.set(params.requestId, params.request.url);
Andrey Kosyakov . resolved

so `requestIdParams` really is rather `urlByRequestId`?

suresh potti

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Nicolás Peña
  • Sam Goto
  • Sam Goto
  • Yi Gu
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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
Gerrit-Change-Number: 6486908
Gerrit-PatchSet: 34
Gerrit-Owner: suresh potti <sures...@microsoft.com>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
Gerrit-Reviewer: Sam Goto <go...@chromium.org>
Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
Gerrit-CC: Kaan Icer <ic...@chromium.org>
Gerrit-CC: Sam Goto <go...@google.com>
Gerrit-Attention: Nicolás Peña <n...@chromium.org>
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Wed, 07 May 2025 16:42:23 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Andrey Kosyakov <ca...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Nicolás Peña (Gerrit)

unread,
May 7, 2025, 1:56:05 PMMay 7
to suresh potti, Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto, Yi Gu and suresh potti

Nicolás Peña voted and added 1 comment

Votes added by Nicolás Peña

Code-Review+1

1 comment

Patchset-level comments
File-level comment, Patchset 34 (Latest):
Nicolás Peña . resolved

content/browser/webid/ LGTM

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Sam Goto
  • Sam Goto
  • Yi Gu
  • suresh potti
Gerrit-Attention: Yi Gu <yi...@chromium.org>
Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Wed, 07 May 2025 17:55:52 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
satisfied_requirement
unsatisfied_requirement
open
diffy

Sam Goto (Gerrit)

unread,
May 7, 2025, 2:00:10 PMMay 7
to suresh potti, Nicolás Peña, Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Sam Goto, Yi Gu and suresh potti

Sam Goto added 1 comment

File content/browser/webid/idp_network_request_manager_unittest.cc
Line 917, Patchset 34 (Latest): auto network_manager = std::make_unique<IdpNetworkRequestManager>(
Sam Goto . unresolved

Isn't there a unit test here that we could write to make sure that this doesn't regress going forward?

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Sam Goto
  • Yi Gu
  • suresh potti
Gerrit-Comment-Date: Wed, 07 May 2025 17:59:58 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

suresh potti (Gerrit)

unread,
May 7, 2025, 2:29:10 PMMay 7
to Nicolás Peña, Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto and Yi Gu

suresh potti added 1 comment

File content/browser/webid/idp_network_request_manager_unittest.cc
Line 917, Patchset 34 (Latest): auto network_manager = std::make_unique<IdpNetworkRequestManager>(
Sam Goto . unresolved

Isn't there a unit test here that we could write to make sure that this doesn't regress going forward?

suresh potti

Can be solved by having default value to FrameTreeNodeId param in IdpNetworkRequestManager cstr, where this unit test doesnt have to be touched.

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Christian Biesinger
  • Sam Goto
  • Sam Goto
  • Yi Gu
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Wed, 07 May 2025 18:28:58 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Sam Goto <go...@google.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

Christian Biesinger (Gerrit)

unread,
May 7, 2025, 2:59:04 PMMay 7
to suresh potti, Nicolás Peña, Andrey Kosyakov, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Andrey Kosyakov, Sam Goto, Sam Goto, Yi Gu and suresh potti

Christian Biesinger added 5 comments

File content/browser/devtools/devtools_instrumentation.cc
Line 2609, Patchset 34 (Latest): protocol::Network::Initiator::TypeEnum::Other,
Christian Biesinger . unresolved

can you not pass your new FedCM value here?

File content/browser/webid/idp_network_request_manager.cc
Line 1382, Patchset 34 (Latest): std::optional<network::URLLoaderCompletionStatus> status =
Christian Biesinger . unresolved

I don't think storing this in a variable is useful, but if you want to keep the variable, please move it inside the if below.

Line 1389, Patchset 34 (Latest): auto response_body_str = response_body ? *response_body : std::string();
Christian Biesinger . unresolved

AIUI, `auto` here will be `std::string`, so this will do a copy.
This extra copy is unfortunate. can you either change auto to `const std::string&` or inline this expression into the call to DidReceiveFedCmNetworkResponse?

Line 1395, Patchset 34 (Latest): response_info ? response_info->headers : nullptr, response_body_str,
Christian Biesinger . unresolved

If you pass the response_info to DidReceiveFedCmNetworkResponse instead of passing the headers, it could call ExtractDevToolsInfo to create the URLResponseHeadDevToolsInfoPtr, which sets additional data than just the headers.

File third_party/blink/public/devtools_protocol/browser_protocol.pdl
Line 5960, Patchset 34 (Latest): FedCM
Christian Biesinger . unresolved

I would put this above Other, though this is up to the devtools owners

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Andrey Kosyakov
  • Sam Goto
  • Sam Goto
  • Yi Gu
  • suresh potti
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Sam Goto <go...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Attention: suresh potti <sures...@microsoft.com>
Gerrit-Attention: Sam Goto <go...@google.com>
Gerrit-Comment-Date: Wed, 07 May 2025 18:58:46 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Andrey Kosyakov (Gerrit)

unread,
May 7, 2025, 4:06:47 PMMay 7
to suresh potti, Nicolás Peña, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
Attention needed from Alex Rudenko, Sam Goto, Sam Goto, Yi Gu and suresh potti

Andrey Kosyakov voted and added 5 comments

Votes added by Andrey Kosyakov

Code-Review+1

5 comments

Patchset-level comments
Andrey Kosyakov . resolved

lgtm, but please also get one from Alex.

File content/browser/devtools/devtools_instrumentation.cc
Line 1488, Patchset 34 (Latest): return std::string();
Andrey Kosyakov . unresolved

did you mean to return nullopt here?

Line 1497, Patchset 34 (Latest): if (ftn == nullptr) {
Andrey Kosyakov . unresolved

In case the ftn lookup failed, we won't be able to deliver the event either. So how about we move the lookup to the call site, then bail out if ftn wasn't found and otherwise expect frame token to be just present.

You would also be able to [pass ftn to `DispatchToAgents()`](https://source.chromium.org/chromium/chromium/src/+/main:content/browser/devtools/devtools_instrumentation.cc;l=93) reducing the number of redundant lookups.

Line 2592, Patchset 34 (Latest): network::mojom::URLRequestDevToolsInfoPtr request_info =
Andrey Kosyakov . unresolved

Let's move this within the conditional just before `DispatchToAgents()` to reduce the ovehead.

File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools.js
Line 30, Patchset 34 (Latest): if ((cachedLoaderId === "") && (cachedFramedId === "" )){
Andrey Kosyakov . unresolved

style: ... `)) {`, please

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Sam Goto
  • Sam Goto
  • Yi Gu
  • suresh potti
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Review
    Gerrit-Attention: suresh potti <sures...@microsoft.com>
    Gerrit-Attention: Sam Goto <go...@google.com>
    Gerrit-Comment-Date: Wed, 07 May 2025 20:06:35 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Alex Rudenko (Gerrit)

    unread,
    May 8, 2025, 1:32:44 AMMay 8
    to suresh potti, Andrey Kosyakov, Nicolás Peña, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
    Attention needed from Sam Goto, Sam Goto, Yi Gu and suresh potti

    Alex Rudenko added 1 comment

    File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools-expected.txt
    Alex Rudenko . unresolved

    I tested locally and I see that requests to https://idp.example/profile/567 and https://idp.example/profile/123 are also being issued but only the requestWillBeSent events are emitted. This could stall automation clients that wait for the loadingFailed or loadingComplete events (stalls Puppeteer when waiting for the idle network and in the frontend they also show up as forever pending). Could you please add instrumentation for the loading failed events as well (I assume that it fails due to inaccessible URL) and corresponding tests?

    suresh potti

    Captured in logs on loading success & failed events

    Alex Rudenko

    I do see loading failed events but DevTools does not handle it right (still shows as pending): https://i.imgur.com/6TTDxj3.png I think frameId is missing and loaderId is not correct for some of the events. Potentially there are some other problems with instrumentation for those images.

    Alex Rudenko

    it looks like the image request are not actually going through the instrumentation added in this CL? Could we add a failing test case for instrumentation added in this CL?

    suresh potti

    Corrected laoderId set on response.

    Alex Rudenko

    To clarify on this thread:

    1) I see that this PR does not add new instrumentation for loading failed events. At the same time, I see that loading failed events are emitted for picture URLs and those events are not handled correctly (always pending) by the DevTools frontend (presumably due to the missing metadata). I would like to understand where those failed events are being instrumented? I think it is important that DevTools shows correctly when requests fail and why (I think seeing requests if everything went well is not so critical). I would consider this part non-blocking as it appears that pictureUrl requests were already partially instrumented previously.

    2) Let's add tests and instrumentation that reports failures with the newly instrumented requests (like .well-known/web-identity/accounts.php etc). And that those requests show up as failed correctly in DevTools.

    Open in Gerrit

    Related details

    Attention is currently required from:
    Gerrit-Attention: Sam Goto <go...@chromium.org>
    Gerrit-Attention: suresh potti <sures...@microsoft.com>
    Gerrit-Attention: Sam Goto <go...@google.com>
    Gerrit-Comment-Date: Thu, 08 May 2025 05:32:31 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
    Comment-In-Reply-To: suresh potti <sures...@microsoft.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Alex Rudenko (Gerrit)

    unread,
    May 13, 2025, 7:46:50 AMMay 13
    to suresh potti, Andrey Kosyakov, Nicolás Peña, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
    Attention needed from Andrey Kosyakov, Sam Goto, Sam Goto, Yi Gu and suresh potti

    Alex Rudenko added 1 comment

    File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools-expected.txt
    Alex Rudenko . resolved

    I tested locally and I see that requests to https://idp.example/profile/567 and https://idp.example/profile/123 are also being issued but only the requestWillBeSent events are emitted. This could stall automation clients that wait for the loadingFailed or loadingComplete events (stalls Puppeteer when waiting for the idle network and in the frontend they also show up as forever pending). Could you please add instrumentation for the loading failed events as well (I assume that it fails due to inaccessible URL) and corresponding tests?

    suresh potti

    Captured in logs on loading success & failed events

    Alex Rudenko

    I do see loading failed events but DevTools does not handle it right (still shows as pending): https://i.imgur.com/6TTDxj3.png I think frameId is missing and loaderId is not correct for some of the events. Potentially there are some other problems with instrumentation for those images.

    Alex Rudenko

    it looks like the image request are not actually going through the instrumentation added in this CL? Could we add a failing test case for instrumentation added in this CL?

    suresh potti

    Corrected laoderId set on response.

    Alex Rudenko

    To clarify on this thread:

    1) I see that this PR does not add new instrumentation for loading failed events. At the same time, I see that loading failed events are emitted for picture URLs and those events are not handled correctly (always pending) by the DevTools frontend (presumably due to the missing metadata). I would like to understand where those failed events are being instrumented? I think it is important that DevTools shows correctly when requests fail and why (I think seeing requests if everything went well is not so critical). I would consider this part non-blocking as it appears that pictureUrl requests were already partially instrumented previously.

    2) Let's add tests and instrumentation that reports failures with the newly instrumented requests (like .well-known/web-identity/accounts.php etc). And that those requests show up as failed correctly in DevTools.

    Alex Rudenko

    Discussed offline, indeed the instrumentation for loading failed already happens (I overlooked it).

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Andrey Kosyakov
    • Sam Goto
    • Sam Goto
    • Yi Gu
    • suresh potti
      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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
      Gerrit-Change-Number: 6486908
      Gerrit-PatchSet: 37
      Gerrit-Owner: suresh potti <sures...@microsoft.com>
      Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
      Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
      Gerrit-Reviewer: Sam Goto <go...@chromium.org>
      Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
      Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
      Gerrit-CC: Kaan Icer <ic...@chromium.org>
      Gerrit-CC: Sam Goto <go...@google.com>
      Gerrit-Attention: Yi Gu <yi...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: suresh potti <sures...@microsoft.com>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 11:46:37 +0000
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Alex Rudenko (Gerrit)

      unread,
      May 13, 2025, 7:51:37 AMMay 13
      to suresh potti, Andrey Kosyakov, Nicolás Peña, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Andrey Kosyakov, Sam Goto, Sam Goto, Yi Gu and suresh potti

      Alex Rudenko added 1 comment

      File third_party/blink/public/devtools_protocol/browser_protocol.pdl
      Christian Biesinger . unresolved

      I would put this above Other, though this is up to the devtools owners

      Alex Rudenko

      I agree let's put it before Other

      Gerrit-Comment-Date: Tue, 13 May 2025 11:51:25 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Christian Biesinger <cbies...@chromium.org>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      suresh potti (Gerrit)

      unread,
      May 13, 2025, 8:24:08 AMMay 13
      to Andrey Kosyakov, Nicolás Peña, Alex Rudenko, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto and Yi Gu

      suresh potti added 9 comments

      File content/browser/devtools/devtools_instrumentation.cc
      Line 1488, Patchset 34: return std::string();
      Andrey Kosyakov . resolved

      did you mean to return nullopt here?

      suresh potti

      removed the function

      Line 1497, Patchset 34: if (ftn == nullptr) {
      Andrey Kosyakov . resolved

      In case the ftn lookup failed, we won't be able to deliver the event either. So how about we move the lookup to the call site, then bail out if ftn wasn't found and otherwise expect frame token to be just present.

      You would also be able to [pass ftn to `DispatchToAgents()`](https://source.chromium.org/chromium/chromium/src/+/main:content/browser/devtools/devtools_instrumentation.cc;l=93) reducing the number of redundant lookups.

      suresh potti

      removed this function.

      Line 2592, Patchset 34: network::mojom::URLRequestDevToolsInfoPtr request_info =
      Andrey Kosyakov . resolved

      Let's move this within the conditional just before `DispatchToAgents()` to reduce the ovehead.

      suresh potti

      Done

      Line 2609, Patchset 34: protocol::Network::Initiator::TypeEnum::Other,
      Christian Biesinger . resolved

      can you not pass your new FedCM value here?

      suresh potti

      Passing FedCM here will fail to show networks activities in devtools front end, as plumbing for FedCM required in devtools front-end.

      File content/browser/webid/idp_network_request_manager.cc
      Line 1382, Patchset 34: std::optional<network::URLLoaderCompletionStatus> status =
      Christian Biesinger . resolved

      I don't think storing this in a variable is useful, but if you want to keep the variable, please move it inside the if below.

      suresh potti

      status is used at line 1411 for cors error which is outside if block.

      Line 1389, Patchset 34: auto response_body_str = response_body ? *response_body : std::string();
      Christian Biesinger . resolved

      AIUI, `auto` here will be `std::string`, so this will do a copy.
      This extra copy is unfortunate. can you either change auto to `const std::string&` or inline this expression into the call to DidReceiveFedCmNetworkResponse?

      suresh potti

      Done

      Line 1395, Patchset 34: response_info ? response_info->headers : nullptr, response_body_str,
      Christian Biesinger . resolved

      If you pass the response_info to DidReceiveFedCmNetworkResponse instead of passing the headers, it could call ExtractDevToolsInfo to create the URLResponseHeadDevToolsInfoPtr, which sets additional data than just the headers.

      suresh potti

      Done

      File third_party/blink/public/devtools_protocol/browser_protocol.pdl
      Christian Biesinger . resolved

      I would put this above Other, though this is up to the devtools owners

      Alex Rudenko

      I agree let's put it before Other

      suresh potti

      Done

      File third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools.js
      Line 30, Patchset 34: if ((cachedLoaderId === "") && (cachedFramedId === "" )){
      Andrey Kosyakov . resolved

      style: ... `)) {`, please

      suresh potti

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Alex Rudenko
      • Andrey Kosyakov
      • Christian Biesinger
      • Sam Goto
      • Sam Goto
      • Yi Gu
      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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
      Gerrit-Change-Number: 6486908
      Gerrit-PatchSet: 39
      Gerrit-Owner: suresh potti <sures...@microsoft.com>
      Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
      Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
      Gerrit-Reviewer: Sam Goto <go...@chromium.org>
      Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
      Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
      Gerrit-CC: Kaan Icer <ic...@chromium.org>
      Gerrit-CC: Sam Goto <go...@google.com>
      Gerrit-Attention: Yi Gu <yi...@chromium.org>
      Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
      Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 12:23:39 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Christian Biesinger <cbies...@chromium.org>
      Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
      Comment-In-Reply-To: Andrey Kosyakov <ca...@chromium.org>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Alex Rudenko (Gerrit)

      unread,
      May 13, 2025, 8:44:58 AMMay 13
      to suresh potti, Andrey Kosyakov, Nicolás Peña, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto, Yi Gu and suresh potti

      Alex Rudenko added 2 comments

      File content/browser/devtools/devtools_instrumentation.cc
      Line 2575, Patchset 39 (Latest): if (loader_id.has_value()) {
      Alex Rudenko . unresolved
      ```suggestion
      if (!loader_id.has_value()) {
      return;
      }
      ```
      Line 2613, Patchset 39 (Latest): if (loader_id.has_value()) {
      Alex Rudenko . unresolved
      ```suggestion
      if (!loader_id.has_value()) {
      return;
      }
      ```
      Open in Gerrit

      Related details

      Attention is currently required from:
      • Andrey Kosyakov
      • Christian Biesinger
      • Sam Goto
      • Sam Goto
      • Yi Gu
      • suresh potti
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: suresh potti <sures...@microsoft.com>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 12:44:08 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Alex Rudenko (Gerrit)

      unread,
      May 13, 2025, 8:45:40 AMMay 13
      to suresh potti, Andrey Kosyakov, Nicolás Peña, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto, Yi Gu and suresh potti

      Alex Rudenko voted and added 1 comment

      Votes added by Alex Rudenko

      Code-Review+1

      1 comment

      Patchset-level comments
      File-level comment, Patchset 39 (Latest):
      Alex Rudenko . resolved

      LGTM with nits

      Gerrit-Comment-Date: Tue, 13 May 2025 12:45:27 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      suresh potti (Gerrit)

      unread,
      May 13, 2025, 12:16:57 PMMay 13
      to Alex Rudenko, Andrey Kosyakov, Nicolás Peña, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto and Yi Gu

      suresh potti added 2 comments

      File content/browser/devtools/devtools_instrumentation.cc
      Line 2575, Patchset 39: if (loader_id.has_value()) {
      Alex Rudenko . resolved
      ```suggestion
      if (!loader_id.has_value()) {
      return;
      }
      ```
      suresh potti

      Done

      Line 2613, Patchset 39: if (loader_id.has_value()) {
      Alex Rudenko . resolved
      ```suggestion
      if (!loader_id.has_value()) {
      return;
      }
      ```
      suresh potti

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Alex Rudenko
      • Andrey Kosyakov
      • Christian Biesinger
      • Sam Goto
      • Sam Goto
      • Yi Gu
      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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
      Gerrit-Change-Number: 6486908
      Gerrit-PatchSet: 40
      Gerrit-Owner: suresh potti <sures...@microsoft.com>
      Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
      Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
      Gerrit-Reviewer: Sam Goto <go...@chromium.org>
      Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
      Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
      Gerrit-CC: Kaan Icer <ic...@chromium.org>
      Gerrit-CC: Sam Goto <go...@google.com>
      Gerrit-Attention: Yi Gu <yi...@chromium.org>
      Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
      Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 16:16:34 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Alex Rudenko (Gerrit)

      unread,
      May 13, 2025, 12:17:57 PMMay 13
      to suresh potti, Andrey Kosyakov, Nicolás Peña, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto, Yi Gu and suresh potti

      Alex Rudenko voted Code-Review+1

      Code-Review+1
      Open in Gerrit

      Related details

      Attention is currently required from:
      • Andrey Kosyakov
      • Christian Biesinger
      • Sam Goto
      • Sam Goto
      • Yi Gu
      • suresh potti
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: suresh potti <sures...@microsoft.com>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 16:17:42 +0000
      Gerrit-HasComments: No
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Alex Rudenko (Gerrit)

      unread,
      May 13, 2025, 1:06:05 PMMay 13
      to suresh potti, Andrey Kosyakov, Nicolás Peña, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto, Yi Gu and suresh potti

      Alex Rudenko voted and added 1 comment

      Votes added by Alex Rudenko

      Code-Review+0

      1 comment

      File content/browser/devtools/devtools_instrumentation.cc
      Line 2635, Patchset 40 (Latest): protocol::Network::Initiator::TypeEnum::Other, status);
      Alex Rudenko . unresolved

      This is actually a wrong enum, should be `protocol::Network::ResourceTypeEnum::Other`

      Gerrit-Comment-Date: Tue, 13 May 2025 17:05:52 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      suresh potti (Gerrit)

      unread,
      May 13, 2025, 1:56:42 PMMay 13
      to Alex Rudenko, Andrey Kosyakov, Nicolás Peña, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto and Yi Gu

      suresh potti added 1 comment

      File content/browser/devtools/devtools_instrumentation.cc
      Line 2635, Patchset 40: protocol::Network::Initiator::TypeEnum::Other, status);
      Alex Rudenko . resolved

      This is actually a wrong enum, should be `protocol::Network::ResourceTypeEnum::Other`

      suresh potti

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Alex Rudenko
      • Andrey Kosyakov
      • Christian Biesinger
      • Sam Goto
      • Sam Goto
      • Yi Gu
      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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
      Gerrit-Change-Number: 6486908
      Gerrit-PatchSet: 41
      Gerrit-Owner: suresh potti <sures...@microsoft.com>
      Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
      Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
      Gerrit-Reviewer: Sam Goto <go...@chromium.org>
      Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
      Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
      Gerrit-CC: Kaan Icer <ic...@chromium.org>
      Gerrit-CC: Sam Goto <go...@google.com>
      Gerrit-Attention: Yi Gu <yi...@chromium.org>
      Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
      Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 17:56:11 +0000
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Christian Biesinger (Gerrit)

      unread,
      May 13, 2025, 2:11:05 PMMay 13
      to suresh potti, Alex Rudenko, Andrey Kosyakov, Nicolás Peña, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Alex Rudenko, Andrey Kosyakov, Sam Goto, Sam Goto, Yi Gu and suresh potti

      Christian Biesinger added 4 comments

      File content/browser/devtools/devtools_instrumentation.cc
      Line 2609, Patchset 34: protocol::Network::Initiator::TypeEnum::Other,
      Christian Biesinger . resolved

      can you not pass your new FedCM value here?

      suresh potti

      Passing FedCM here will fail to show networks activities in devtools front end, as plumbing for FedCM required in devtools front-end.

      Christian Biesinger

      Ah, that is unfortunate... it would be better IMO if the frontend treated unknown types as "other"

      Line 2626, Patchset 41 (Latest): &protocol::NetworkHandler::ResponseReceived,
      Christian Biesinger . unresolved

      just to confirm -- this does not have to be called for failed requests?

      Line 2636, Patchset 41 (Latest): if (!response_body.empty()) {
      Christian Biesinger . unresolved

      hmm... this looks a bit odd to me, if the request was successful but the response was empty it would be good to show that in devtools. is it not necessary to call this function in that situation?

      File content/browser/webid/idp_network_request_manager.cc
      Line 1396, Patchset 41 (Latest): response_info, response_body_str, completion_status);
      Christian Biesinger . unresolved

      we should probably remove the entry from urlloader_devtools_request_id_map_ here, since we will never use it again.

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Alex Rudenko
      • Andrey Kosyakov
      • Sam Goto
      • Sam Goto
      • Yi Gu
      • suresh potti
      Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: suresh potti <sures...@microsoft.com>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 18:10:59 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Christian Biesinger <cbies...@chromium.org>
      Comment-In-Reply-To: suresh potti <sures...@microsoft.com>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      suresh potti (Gerrit)

      unread,
      May 13, 2025, 2:52:50 PMMay 13
      to Alex Rudenko, Andrey Kosyakov, Nicolás Peña, Christian Biesinger, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto and Yi Gu

      suresh potti added 3 comments

      File content/browser/devtools/devtools_instrumentation.cc
      Line 2626, Patchset 41: &protocol::NetworkHandler::ResponseReceived,
      Christian Biesinger . resolved

      just to confirm -- this does not have to be called for failed requests?

      suresh potti

      Yes. Only request & loadingfailed event should suffice.

      Line 2636, Patchset 41: if (!response_body.empty()) {
      Christian Biesinger . unresolved

      hmm... this looks a bit odd to me, if the request was successful but the response was empty it would be good to show that in devtools. is it not necessary to call this function in that situation?

      suresh potti

      Not sure if it adds any value. alexr...@chromium.org can you comment on this ?

      File content/browser/webid/idp_network_request_manager.cc
      Line 1396, Patchset 41: response_info, response_body_str, completion_status);
      Christian Biesinger . resolved

      we should probably remove the entry from urlloader_devtools_request_id_map_ here, since we will never use it again.

      suresh potti

      Yes, It is logical to exclude this from the map.

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Alex Rudenko
      • Andrey Kosyakov
      • Christian Biesinger
      • Sam Goto
      • Sam Goto
      • Yi Gu
      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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
      Gerrit-Change-Number: 6486908
      Gerrit-PatchSet: 42
      Gerrit-Owner: suresh potti <sures...@microsoft.com>
      Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
      Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
      Gerrit-Reviewer: Sam Goto <go...@chromium.org>
      Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
      Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
      Gerrit-CC: Kaan Icer <ic...@chromium.org>
      Gerrit-CC: Sam Goto <go...@google.com>
      Gerrit-Attention: Yi Gu <yi...@chromium.org>
      Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
      Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 18:52:18 +0000
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Christian Biesinger (Gerrit)

      unread,
      May 13, 2025, 2:53:38 PMMay 13
      to suresh potti, Christian Biesinger, Alex Rudenko, Andrey Kosyakov, Nicolás Peña, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Alex Rudenko, Andrey Kosyakov, Sam Goto, Sam Goto, Yi Gu and suresh potti

      Christian Biesinger voted and added 1 comment

      Votes added by Christian Biesinger

      Code-Review+1

      1 comment

      Patchset-level comments
      File-level comment, Patchset 42 (Latest):
      Christian Biesinger . resolved

      lgtm pending a response from alex

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Alex Rudenko
      • Andrey Kosyakov
      • Sam Goto
      • Sam Goto
      • Yi Gu
      • suresh potti
      Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: suresh potti <sures...@microsoft.com>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 18:53:31 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Alex Rudenko (Gerrit)

      unread,
      May 13, 2025, 3:00:14 PMMay 13
      to suresh potti, Christian Biesinger, Andrey Kosyakov, Nicolás Peña, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Andrey Kosyakov, Sam Goto, Sam Goto, Yi Gu and suresh potti

      Alex Rudenko added 1 comment

      File content/browser/devtools/devtools_instrumentation.cc
      Line 2636, Patchset 41: if (!response_body.empty()) {
      Christian Biesinger . unresolved

      hmm... this looks a bit odd to me, if the request was successful but the response was empty it would be good to show that in devtools. is it not necessary to call this function in that situation?

      suresh potti

      Not sure if it adds any value. alexr...@chromium.org can you comment on this ?

      Alex Rudenko

      Indeed, I think it would be better to check for `status.error_code == net::OK` to detect a successful request. Also, now that I paid a closer attention I think the BodyDataReceived handler should be invoked before LoadingComplete handler.

      Open in Gerrit

      Related details

      Attention is currently required from:
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: suresh potti <sures...@microsoft.com>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 19:00:00 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Christian Biesinger <cbies...@chromium.org>
      Comment-In-Reply-To: suresh potti <sures...@microsoft.com>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      suresh potti (Gerrit)

      unread,
      May 13, 2025, 3:33:14 PMMay 13
      to Christian Biesinger, Alex Rudenko, Andrey Kosyakov, Nicolás Peña, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Alex Rudenko, Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto and Yi Gu

      suresh potti added 1 comment

      File content/browser/devtools/devtools_instrumentation.cc
      Line 2636, Patchset 41: if (!response_body.empty()) {
      Christian Biesinger . resolved

      hmm... this looks a bit odd to me, if the request was successful but the response was empty it would be good to show that in devtools. is it not necessary to call this function in that situation?

      suresh potti

      Not sure if it adds any value. alexr...@chromium.org can you comment on this ?

      Alex Rudenko

      Indeed, I think it would be better to check for `status.error_code == net::OK` to detect a successful request. Also, now that I paid a closer attention I think the BodyDataReceived handler should be invoked before LoadingComplete handler.

      suresh potti

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Alex Rudenko
      • Andrey Kosyakov
      • Christian Biesinger
      • Sam Goto
      • Sam Goto
      • Yi Gu
      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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
      Gerrit-Change-Number: 6486908
      Gerrit-PatchSet: 43
      Gerrit-Owner: suresh potti <sures...@microsoft.com>
      Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
      Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
      Gerrit-Reviewer: Sam Goto <go...@chromium.org>
      Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
      Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
      Gerrit-CC: Kaan Icer <ic...@chromium.org>
      Gerrit-CC: Sam Goto <go...@google.com>
      Gerrit-Attention: Yi Gu <yi...@chromium.org>
      Gerrit-Attention: Christian Biesinger <cbies...@chromium.org>
      Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 19:32:42 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Christian Biesinger <cbies...@chromium.org>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Alex Rudenko (Gerrit)

      unread,
      May 13, 2025, 3:33:40 PMMay 13
      to suresh potti, Christian Biesinger, Andrey Kosyakov, Nicolás Peña, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Andrey Kosyakov, Christian Biesinger, Sam Goto, Sam Goto, Yi Gu and suresh potti

      Alex Rudenko voted Code-Review+1

      Code-Review+1
      Open in Gerrit

      Related details

      Attention is currently required from:
      • Andrey Kosyakov
      • Christian Biesinger
      • Sam Goto
      • Sam Goto
      • Yi Gu
      • suresh potti
      Gerrit-Attention: Sam Goto <go...@chromium.org>
      Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
      Gerrit-Attention: suresh potti <sures...@microsoft.com>
      Gerrit-Attention: Sam Goto <go...@google.com>
      Gerrit-Comment-Date: Tue, 13 May 2025 19:33:26 +0000
      Gerrit-HasComments: No
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Christian Biesinger (Gerrit)

      unread,
      May 13, 2025, 3:58:11 PMMay 13
      to suresh potti, Christian Biesinger, Alex Rudenko, Andrey Kosyakov, Nicolás Peña, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
      Attention needed from Andrey Kosyakov, Sam Goto, Sam Goto, Yi Gu and suresh potti

      Christian Biesinger voted Code-Review+1

      Code-Review+1
      Open in Gerrit

      Related details

      Attention is currently required from:
      • Andrey Kosyakov
      • Sam Goto
      • Sam Goto
      • Yi Gu
      • suresh potti
        Submit Requirements:
        • requirement satisfiedCode-Coverage
        • requirement 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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
        Gerrit-Change-Number: 6486908
        Gerrit-PatchSet: 43
        Gerrit-Owner: suresh potti <sures...@microsoft.com>
        Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
        Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
        Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
        Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
        Gerrit-Reviewer: Sam Goto <go...@chromium.org>
        Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
        Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
        Gerrit-CC: Kaan Icer <ic...@chromium.org>
        Gerrit-CC: Sam Goto <go...@google.com>
        Gerrit-Attention: Yi Gu <yi...@chromium.org>
        Gerrit-Attention: Sam Goto <go...@chromium.org>
        Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
        Gerrit-Attention: suresh potti <sures...@microsoft.com>
        Gerrit-Attention: Sam Goto <go...@google.com>
        Gerrit-Comment-Date: Tue, 13 May 2025 19:57:54 +0000
        Gerrit-HasComments: No
        Gerrit-Has-Labels: Yes
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Andrey Kosyakov (Gerrit)

        unread,
        May 13, 2025, 9:28:03 PMMay 13
        to suresh potti, Christian Biesinger, Alex Rudenko, Nicolás Peña, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
        Attention needed from Sam Goto, Sam Goto, Yi Gu and suresh potti

        Andrey Kosyakov voted and added 1 comment

        Votes added by Andrey Kosyakov

        Code-Review+1

        1 comment

        Patchset-level comments
        File-level comment, Patchset 43 (Latest):
        Andrey Kosyakov . resolved

        Thanks, re-stamping.

        Open in Gerrit

        Related details

        Attention is currently required from:
        Gerrit-Attention: suresh potti <sures...@microsoft.com>
        Gerrit-Attention: Sam Goto <go...@google.com>
        Gerrit-Comment-Date: Wed, 14 May 2025 01:27:54 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: Yes
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        suresh potti (Gerrit)

        unread,
        May 13, 2025, 9:56:12 PMMay 13
        to Andrey Kosyakov, Christian Biesinger, Alex Rudenko, Nicolás Peña, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
        Attention needed from Sam Goto, Sam Goto and Yi Gu

        suresh potti added 1 comment

        File content/browser/webid/idp_network_request_manager_unittest.cc
        Line 917, Patchset 34: auto network_manager = std::make_unique<IdpNetworkRequestManager>(
        Sam Goto . resolved

        Isn't there a unit test here that we could write to make sure that this doesn't regress going forward?

        suresh potti

        Can be solved by having default value to FrameTreeNodeId param in IdpNetworkRequestManager cstr, where this unit test doesnt have to be touched.

        suresh potti

        Acknowledged

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Sam Goto
        • Sam Goto
        • Yi Gu
        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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
        Gerrit-Change-Number: 6486908
        Gerrit-PatchSet: 43
        Gerrit-Owner: suresh potti <sures...@microsoft.com>
        Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
        Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
        Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
        Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
        Gerrit-Reviewer: Sam Goto <go...@chromium.org>
        Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
        Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
        Gerrit-CC: Kaan Icer <ic...@chromium.org>
        Gerrit-CC: Sam Goto <go...@google.com>
        Gerrit-Attention: Yi Gu <yi...@chromium.org>
        Gerrit-Attention: Sam Goto <go...@chromium.org>
        Gerrit-Attention: Sam Goto <go...@google.com>
        Gerrit-Comment-Date: Wed, 14 May 2025 01:55:51 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        Comment-In-Reply-To: suresh potti <sures...@microsoft.com>
        Comment-In-Reply-To: Sam Goto <go...@google.com>
        satisfied_requirement
        open
        diffy

        suresh potti (Gerrit)

        unread,
        May 13, 2025, 9:56:25 PMMay 13
        to Andrey Kosyakov, Christian Biesinger, Alex Rudenko, Nicolás Peña, Sam Goto, Yi Gu, Sam Goto, Chromium LUCI CQ, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
        Attention needed from Sam Goto, Sam Goto and Yi Gu

        suresh potti voted Commit-Queue+2

        Commit-Queue+2
        Gerrit-Comment-Date: Wed, 14 May 2025 01:56:03 +0000
        Gerrit-HasComments: No
        Gerrit-Has-Labels: Yes
        satisfied_requirement
        open
        diffy

        Chromium LUCI CQ (Gerrit)

        unread,
        May 13, 2025, 10:11:56 PMMay 13
        to suresh potti, Andrey Kosyakov, Christian Biesinger, Alex Rudenko, Nicolás Peña, Sam Goto, Yi Gu, Sam Goto, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org

        Chromium LUCI CQ submitted the change

        Change information

        Commit message:
        [FedCM] Hook up FedCM network traffic to show in dev tools (devtools)
        Low-Coverage-Reason: OTHER.
        Bug: 40160046
        Change-Id: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
        Commit-Queue: suresh potti <sures...@microsoft.com>
        Reviewed-by: Andrey Kosyakov <ca...@chromium.org>
        Reviewed-by: Christian Biesinger <cbies...@chromium.org>
        Reviewed-by: Alex Rudenko <alexr...@chromium.org>
        Cr-Commit-Position: refs/heads/main@{#1459846}
        Files:
        • M content/browser/devtools/devtools_instrumentation.cc
        • M content/browser/devtools/devtools_instrumentation.h
        • M content/browser/webid/idp_network_request_manager.cc
        • M content/browser/webid/idp_network_request_manager.h
        • M content/browser/webid/idp_network_request_manager_unittest.cc
        • M content/browser/webid/test/mock_idp_network_request_manager.cc
        • M third_party/blink/public/devtools_protocol/browser_protocol.pdl
        • A third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools-expected.txt
        • A third_party/blink/web_tests/http/tests/inspector-protocol/fedcm/fedcm-request-captured-in-devtools.js
        Change size: L
        Delta: 9 files changed, 314 insertions(+), 16 deletions(-)
        Branch: refs/heads/main
        Submit Requirements:
        • requirement satisfiedCode-Review: +1 by Andrey Kosyakov, +1 by Alex Rudenko, +1 by Christian Biesinger
        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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
        Gerrit-Change-Number: 6486908
        Gerrit-PatchSet: 44
        Gerrit-Owner: suresh potti <sures...@microsoft.com>
        Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
        Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
        Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
        Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
        Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
        Gerrit-Reviewer: Sam Goto <go...@chromium.org>
        Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
        Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
        open
        diffy
        satisfied_requirement

        Nicolás Peña (Gerrit)

        unread,
        11:52 AM (9 hours ago) 11:52 AM
        to suresh potti, Chromium LUCI CQ, Andrey Kosyakov, Christian Biesinger, Alex Rudenko, Sam Goto, Yi Gu, Sam Goto, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org
        Attention needed from suresh potti

        Nicolás Peña added 1 comment

        File content/browser/webid/idp_network_request_manager.cc
        Line 1397, Patchset 44 (Parent): url_loader.reset();
        Nicolás Peña . unresolved

        Why is this removed?

        Open in Gerrit

        Related details

        Attention is currently required from:
        • suresh potti
        Submit Requirements:
        • requirement satisfiedCode-Coverage
        • requirement 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: Iea15697a7177f6c2f165579619d94f1cc6a2cfdb
        Gerrit-Change-Number: 6486908
        Gerrit-PatchSet: 44
        Gerrit-Owner: suresh potti <sures...@microsoft.com>
        Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
        Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
        Gerrit-Reviewer: Christian Biesinger <cbies...@chromium.org>
        Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
        Gerrit-Reviewer: Nicolás Peña <n...@chromium.org>
        Gerrit-Reviewer: Sam Goto <go...@chromium.org>
        Gerrit-Reviewer: Yi Gu <yi...@chromium.org>
        Gerrit-Reviewer: suresh potti <sures...@microsoft.com>
        Gerrit-CC: Kaan Icer <ic...@chromium.org>
        Gerrit-CC: Sam Goto <go...@google.com>
        Gerrit-Attention: suresh potti <sures...@microsoft.com>
        Gerrit-Comment-Date: Wed, 15 Oct 2025 15:52:09 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        satisfied_requirement
        open
        diffy

        suresh potti (Gerrit)

        unread,
        12:16 PM (9 hours ago) 12:16 PM
        to Chromium LUCI CQ, Andrey Kosyakov, Christian Biesinger, Alex Rudenko, Nicolás Peña, Sam Goto, Yi Gu, Sam Goto, AyeAye, chromium...@chromium.org, Kaan Icer, blink-re...@chromium.org, devtools-re...@chromium.org, blink-...@chromium.org, devtools...@chromium.org, npm+...@chromium.org, yigu+...@chromium.org

        suresh potti added 1 comment

        File content/browser/webid/idp_network_request_manager.cc
        Nicolás Peña . unresolved

        Why is this removed?

        suresh potti

        URLLoader ownership transfers from local variable to callback closure via std::move(). Callback keeps URLLoader alive during network operation. When callback executes, URLLoader becomes function parameter, automatically destroyed when function ends. No manual cleanup needed - RAII handles resource management automatically.

        Open in Gerrit

        Related details

        Attention set is empty
        Gerrit-Comment-Date: Wed, 15 Oct 2025 16:14:46 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        Comment-In-Reply-To: Nicolás Peña <n...@chromium.org>
        satisfied_requirement
        open
        diffy
        Reply all
        Reply to author
        Forward
        0 new messages