Prefetch: Cancel unrelated prefetch [chromium/src : main]

2 views
Skip to first unread message

Ken Okada (Gerrit)

unread,
Apr 15, 2026, 5:24:51 PMApr 15
to Hiroki Nakagawa, Hiroshige Hayashizaki, chromiu...@luci-project-accounts.iam.gserviceaccount.com, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
Attention needed from Hiroki Nakagawa and Hiroshige Hayashizaki

Ken Okada added 1 comment

Patchset-level comments
File-level comment, Patchset 4 (Latest):
Ken Okada . resolved

Could you have a look?

Open in Gerrit

Related details

Attention is currently required from:
  • Hiroki Nakagawa
  • Hiroshige Hayashizaki
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
Gerrit-Change-Number: 7761929
Gerrit-PatchSet: 4
Gerrit-Owner: Ken Okada <ken...@chromium.org>
Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
Gerrit-Attention: Hiroshige Hayashizaki <hiro...@chromium.org>
Gerrit-Attention: Hiroki Nakagawa <nhi...@chromium.org>
Gerrit-Comment-Date: Wed, 15 Apr 2026 21:24:19 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Hiroki Nakagawa (Gerrit)

unread,
Apr 15, 2026, 9:37:44 PMApr 15
to Ken Okada, Hiroshige Hayashizaki, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
Attention needed from Hiroshige Hayashizaki and Ken Okada

Hiroki Nakagawa added 9 comments

Patchset-level comments
Hiroki Nakagawa . resolved

Thanks!

Commit Message
Line 23, Patchset 4 (Latest):control it.
Hiroki Nakagawa . unresolved

Can you add VirtualTestSuites for this feature flag for more test coverage?

File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.h
Line 35, Patchset 4 (Latest): FrameTreeNodeId frame_tree_node_id_;
Hiroki Nakagawa . unresolved

const

Line 21, Patchset 4 (Latest): : public blink::URLLoaderThrottle {
Hiroki Nakagawa . unresolved

Why is this `URLLoaderThrottle`, not `NavigationThrottle`?

File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.cc
Line 38, Patchset 4 (Latest):
Hiroki Nakagawa . unresolved

Should we create this throttle only if this request is for main frame navigation in a primary page? Otherwise, iframe navigation and subresource requests might cancel prefetches?

Line 58, Patchset 4 (Latest): ->GetPrefetchKeys();
Hiroki Nakagawa . unresolved

We don't need to create `NavigationClaimingPrefetches` when it doesn't exist?

```
if (auto* data = NavigationClaimingPrefetches::GetForNavigationHandle(
*frame_tree_node->navigation_request())) {
prefetch_service->CancelUnrelatedPrefetchForNavigation(
data->GetPrefetchKeys());
}
```
File content/browser/preloading/prefetch/nav_prefetch_browsertest.cc
Line 56, Patchset 4 (Latest): // return &that->web_contents();
Hiroki Nakagawa . unresolved

Was this comment used for debugging? Can we remove this?

Line 808, Patchset 4 (Latest):// Due to the limitation of `StartPrefetch()`, we can't write a test of the
Hiroki Nakagawa . unresolved

Can we briefly explain the limitation so that code readers don't need to open the crbug below to know it?

// Due to the limitation of `StartPrefetch()` that allows only one prefetch to be triggered, we can't write ...

File content/browser/preloading/prefetch/prefetch_service.cc
Line 2002, Patchset 4 (Latest):}
Hiroki Nakagawa . unresolved

`const_cast` is not necessary:

```
const PrefetchContainer* PrefetchService::GetPrefetchContainerForTesting(
const PrefetchKey& key) const {
auto it = owned_prefetches_.find(key);
if (it != owned_prefetches_.end()) {
return it->second.get();
}
return nullptr;
}
```
Open in Gerrit

Related details

Attention is currently required from:
  • Hiroshige Hayashizaki
  • Ken Okada
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
    Gerrit-Change-Number: 7761929
    Gerrit-PatchSet: 4
    Gerrit-Owner: Ken Okada <ken...@chromium.org>
    Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
    Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
    Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
    Gerrit-Attention: Hiroshige Hayashizaki <hiro...@chromium.org>
    Gerrit-Attention: Ken Okada <ken...@chromium.org>
    Gerrit-Comment-Date: Thu, 16 Apr 2026 01:37:19 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Hiroshige Hayashizaki (Gerrit)

    unread,
    Apr 20, 2026, 5:55:41 AMApr 20
    to Ken Okada, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
    Attention needed from Ken Okada

    Hiroshige Hayashizaki added 5 comments

    File content/browser/preloading/prefetch/prefetch_service.cc
    Line 1974, Patchset 11 (Latest): const base::flat_set<PrefetchKey>& keys) {
    Hiroshige Hayashizaki . unresolved

    I suspect `key` is actually not needed, because the `PrefetchContainer` used for serving always has `PrefetchMatchResolverAction::ActionKind::kMaybeServe` in sucessful cases, and thus such PrefetchContainer is already excluded from target.

    (Theoretically(?) there might be cases where it was `kMaybeServe` when checking for serving but later failed and no longer `kMaybeServe` here, but anyway probably we can cancel such cases as they anyway are failing)

    Line 1982, Patchset 11 (Latest): prefetch_container->GetMatchResolverAction().kind() ==
    Hiroshige Hayashizaki . unresolved

    Could you add a comment to explain the intent for this condition?

    Perhaps we don't want to cancel prefetches if they already receives successful responses, but not sure/not clear.

    Line 1983, Patchset 11 (Latest): PrefetchMatchResolverAction::ActionKind::kMaybeServe ||
    Hiroshige Hayashizaki . unresolved

    IIUC this is equivalent to `LoadState::kDeterminedHead` or `LoadState::kCompleted` and I think `LoadState`-based check is much simpler.

    Line 1984, Patchset 11 (Latest): keys.contains(prefetch_container->key());
    Hiroshige Hayashizaki . unresolved

    Also I think it's better to limit to prefetches with the same initiators to avoid cancelling prefetches from other Documents / other sites.

    Line 1985, Patchset 11 (Latest): if (!is_not_target) {
    Hiroshige Hayashizaki . unresolved
    ```
    if (prefetch_container->GetMatchResolverAction().kind() !=
    PrefetchMatchResolverAction::ActionKind::kMaybeServe &&
    !keys.contains(prefetch_container->key()) {
    ```

    is much easier to read.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ken Okada
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
    Gerrit-Change-Number: 7761929
    Gerrit-PatchSet: 11
    Gerrit-Owner: Ken Okada <ken...@chromium.org>
    Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
    Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
    Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
    Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
    Gerrit-Attention: Ken Okada <ken...@chromium.org>
    Gerrit-Comment-Date: Mon, 20 Apr 2026 09:55:08 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Ken Okada (Gerrit)

    unread,
    Apr 20, 2026, 8:46:39 PMApr 20
    to Hiroki Nakagawa, Hiroshige Hayashizaki, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
    Attention needed from Hiroki Nakagawa and Hiroshige Hayashizaki

    Ken Okada voted and added 13 comments

    Votes added by Ken Okada

    Commit-Queue+1

    13 comments

    Commit Message
    Line 23, Patchset 4:control it.
    Hiroki Nakagawa . resolved

    Can you add VirtualTestSuites for this feature flag for more test coverage?

    Ken Okada

    Done

    File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.h
    Line 35, Patchset 4: FrameTreeNodeId frame_tree_node_id_;
    Hiroki Nakagawa . resolved

    const

    Ken Okada

    Done

    Line 21, Patchset 4: : public blink::URLLoaderThrottle {
    Hiroki Nakagawa . unresolved

    Why is this `URLLoaderThrottle`, not `NavigationThrottle`?

    Ken Okada
    • `NavigationRequest::WillStartRequest()` is too early. `NavigationURLLoaderImpl::Start()` and prefetch matching follows it.
    • Other hooks are too late.
    • Another option was doing something like prefetch matching at, e.g., the head of `NavigationRequest`, rather than utilizing existing prefetch matching. But we (chat with hiroshige@) rejected it to keep PrefetchURLLoaderInterceptor/PrefetchMatchResolver "SSoT" of prefetch matching.

    Added as comments.

    File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.cc
    Line 38, Patchset 4:
    Hiroki Nakagawa . resolved

    Should we create this throttle only if this request is for main frame navigation in a primary page? Otherwise, iframe navigation and subresource requests might cancel prefetches?

    Ken Okada

    Thanks! Right.

    Done.

    Line 58, Patchset 4: ->GetPrefetchKeys();
    Hiroki Nakagawa . resolved

    We don't need to create `NavigationClaimingPrefetches` when it doesn't exist?

    ```
    if (auto* data = NavigationClaimingPrefetches::GetForNavigationHandle(
    *frame_tree_node->navigation_request())) {
    prefetch_service->CancelUnrelatedPrefetchForNavigation(
    data->GetPrefetchKeys());
    }
    ```
    Ken Okada

    Done with adding else clause.

    File content/browser/preloading/prefetch/nav_prefetch_browsertest.cc
    Line 56, Patchset 4: // return &that->web_contents();
    Hiroki Nakagawa . resolved

    Was this comment used for debugging? Can we remove this?

    Ken Okada

    Done

    Line 808, Patchset 4:// Due to the limitation of `StartPrefetch()`, we can't write a test of the
    Hiroki Nakagawa . resolved

    Can we briefly explain the limitation so that code readers don't need to open the crbug below to know it?

    // Due to the limitation of `StartPrefetch()` that allows only one prefetch to be triggered, we can't write ...

    Ken Okada

    `StartPrefetch()` allows triggering only one prefetch.

    Added a comment.

    File content/browser/preloading/prefetch/prefetch_service.cc
    Line 1974, Patchset 11: const base::flat_set<PrefetchKey>& keys) {
    Hiroshige Hayashizaki . resolved

    I suspect `key` is actually not needed, because the `PrefetchContainer` used for serving always has `PrefetchMatchResolverAction::ActionKind::kMaybeServe` in sucessful cases, and thus such PrefetchContainer is already excluded from target.

    (Theoretically(?) there might be cases where it was `kMaybeServe` when checking for serving but later failed and no longer `kMaybeServe` here, but anyway probably we can cancel such cases as they anyway are failing)

    Ken Okada

    That's right! Thanks!

    Updated.

    Line 1982, Patchset 11: prefetch_container->GetMatchResolverAction().kind() ==
    Hiroshige Hayashizaki . resolved

    Could you add a comment to explain the intent for this condition?

    Perhaps we don't want to cancel prefetches if they already receives successful responses, but not sure/not clear.

    Ken Okada

    Done

    Line 1983, Patchset 11: PrefetchMatchResolverAction::ActionKind::kMaybeServe ||
    Hiroshige Hayashizaki . resolved

    IIUC this is equivalent to `LoadState::kDeterminedHead` or `LoadState::kCompleted` and I think `LoadState`-based check is much simpler.

    Ken Okada

    Done

    Line 1984, Patchset 11: keys.contains(prefetch_container->key());
    Hiroshige Hayashizaki . unresolved

    Also I think it's better to limit to prefetches with the same initiators to avoid cancelling prefetches from other Documents / other sites.

    Ken Okada

    The purpose of this feature/experiment (at least this phase) is investigating effect of network and other resource congestion on performance metrics. (ParallelPrefetch: increase possibility, CancelUnrelatedPrefetch: decrease.)
    So, it's nice to maximize the targets and the effect.

    Line 1985, Patchset 11: if (!is_not_target) {
    Hiroshige Hayashizaki . resolved
    ```
    if (prefetch_container->GetMatchResolverAction().kind() !=
    PrefetchMatchResolverAction::ActionKind::kMaybeServe &&
    !keys.contains(prefetch_container->key()) {
    ```

    is much easier to read.

    Ken Okada

    Done

    Line 2002, Patchset 4:}
    Hiroki Nakagawa . resolved

    `const_cast` is not necessary:

    ```
    const PrefetchContainer* PrefetchService::GetPrefetchContainerForTesting(
    const PrefetchKey& key) const {
    auto it = owned_prefetches_.find(key);
    if (it != owned_prefetches_.end()) {
    return it->second.get();
    }
    return nullptr;
    }
    ```
    Ken Okada

    Done

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Hiroki Nakagawa
    • Hiroshige Hayashizaki
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
    Gerrit-Change-Number: 7761929
    Gerrit-PatchSet: 14
    Gerrit-Owner: Ken Okada <ken...@chromium.org>
    Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
    Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
    Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
    Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
    Gerrit-Attention: Hiroshige Hayashizaki <hiro...@chromium.org>
    Gerrit-Attention: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-Comment-Date: Tue, 21 Apr 2026 00:46:01 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    Comment-In-Reply-To: Hiroshige Hayashizaki <hiro...@chromium.org>
    Comment-In-Reply-To: Hiroki Nakagawa <nhi...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Hiroshige Hayashizaki (Gerrit)

    unread,
    Apr 20, 2026, 9:54:29 PMApr 20
    to Ken Okada, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
    Attention needed from Hiroki Nakagawa and Ken Okada

    Hiroshige Hayashizaki added 2 comments

    File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.h
    Line 21, Patchset 4: : public blink::URLLoaderThrottle {
    Hiroki Nakagawa . unresolved

    Why is this `URLLoaderThrottle`, not `NavigationThrottle`?

    Ken Okada
    • `NavigationRequest::WillStartRequest()` is too early. `NavigationURLLoaderImpl::Start()` and prefetch matching follows it.
    • Other hooks are too late.
    • Another option was doing something like prefetch matching at, e.g., the head of `NavigationRequest`, rather than utilizing existing prefetch matching. But we (chat with hiroshige@) rejected it to keep PrefetchURLLoaderInterceptor/PrefetchMatchResolver "SSoT" of prefetch matching.

    Added as comments.

    Hiroshige Hayashizaki

    Memo: I'm wondering we should migrate this and `PrerenderURLLoaderThrottle` out of `URLLoaderThrottle` (perhaps by introducing more direct code in `NavigationURLLoaderImpl`), but this can/should be done separately/later not to block the experiment.

    File third_party/blink/web_tests/VirtualTestSuites
    Line 2708, Patchset 14 (Latest): "bases": [],
    Hiroshige Hayashizaki . unresolved

    Shouldn't we list some bases here?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Hiroki Nakagawa
    • Ken Okada
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
    Gerrit-Change-Number: 7761929
    Gerrit-PatchSet: 14
    Gerrit-Owner: Ken Okada <ken...@chromium.org>
    Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
    Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
    Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
    Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
    Gerrit-Attention: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-Attention: Ken Okada <ken...@chromium.org>
    Gerrit-Comment-Date: Tue, 21 Apr 2026 01:53:55 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Hiroki Nakagawa <nhi...@chromium.org>
    Comment-In-Reply-To: Ken Okada <ken...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Ken Okada (Gerrit)

    unread,
    Apr 20, 2026, 10:00:56 PMApr 20
    to Hiroki Nakagawa, Hiroshige Hayashizaki, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
    Attention needed from Hiroki Nakagawa and Hiroshige Hayashizaki

    Ken Okada added 1 comment

    File third_party/blink/web_tests/VirtualTestSuites
    Hiroshige Hayashizaki . unresolved

    Shouldn't we list some bases here?

    Ken Okada

    I'm not so sure as (I think) it's not documented well... Lot's of suite uses `[]` and I guess that it's something like `"ALL"`.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Hiroki Nakagawa
    • Hiroshige Hayashizaki
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
    Gerrit-Change-Number: 7761929
    Gerrit-PatchSet: 14
    Gerrit-Owner: Ken Okada <ken...@chromium.org>
    Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
    Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
    Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
    Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
    Gerrit-Attention: Hiroshige Hayashizaki <hiro...@chromium.org>
    Gerrit-Attention: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-Comment-Date: Tue, 21 Apr 2026 02:00:26 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Hiroshige Hayashizaki <hiro...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Ken Okada (Gerrit)

    unread,
    Apr 20, 2026, 10:56:48 PMApr 20
    to Hiroki Nakagawa, Hiroshige Hayashizaki, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
    Attention needed from Hiroki Nakagawa and Hiroshige Hayashizaki

    Ken Okada added 1 comment

    File content/browser/preloading/prefetch/prefetch_service.cc
    Line 1984, Patchset 11: keys.contains(prefetch_container->key());
    Hiroshige Hayashizaki . resolved

    Also I think it's better to limit to prefetches with the same initiators to avoid cancelling prefetches from other Documents / other sites.

    Ken Okada

    The purpose of this feature/experiment (at least this phase) is investigating effect of network and other resource congestion on performance metrics. (ParallelPrefetch: increase possibility, CancelUnrelatedPrefetch: decrease.)
    So, it's nice to maximize the targets and the effect.

    Ken Okada

    Chatted.

    Gerrit-Comment-Date: Tue, 21 Apr 2026 02:56:12 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Hiroshige Hayashizaki <hiro...@chromium.org>
    Comment-In-Reply-To: Ken Okada <ken...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Hiroshige Hayashizaki (Gerrit)

    unread,
    Apr 20, 2026, 11:43:46 PMApr 20
    to Ken Okada, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
    Attention needed from Hiroki Nakagawa and Ken Okada

    Hiroshige Hayashizaki voted and added 5 comments

    Votes added by Hiroshige Hayashizaki

    Code-Review+1

    5 comments

    File content/browser/preloading/prefetch/nav_prefetch_browsertest.cc
    Line 852, Patchset 14 (Latest): GURL url_navigated =
    Hiroshige Hayashizaki . unresolved

    nit optional: it's clearer to show the correspondance bewteen the URLs in the code and comment, e.g.

    Adding a comment like:
    ```
    // URL V
    ```

    or renaming to `url_V` etc.

    ditto below.

    Line 929, Patchset 14 (Latest):// - Start navigation X for URL V.
    Hiroshige Hayashizaki . unresolved

    URL U?

    Line 1033, Patchset 14 (Latest):// - It doesn't cancel A as it is related.
    Hiroshige Hayashizaki . unresolved

    Just to check: How this test is passing? I thought `CancelUnrelatedPrefetchForNavigation()` is called on the initial navigation (i.e. just before the network request to URL V) and thus prefetch A is cancelled there, but surely I'm missing something.

    File content/browser/preloading/prefetch/prefetch_service.h
    Line 262, Patchset 14 (Latest): // Cancel unrelated prefetches.
    Hiroshige Hayashizaki . unresolved

    nit: `Cancels`.

    File third_party/blink/web_tests/VirtualTestSuites
    Hiroshige Hayashizaki . unresolved

    Shouldn't we list some bases here?

    Ken Okada

    I'm not so sure as (I think) it's not documented well... Lot's of suite uses `[]` and I guess that it's something like `"ALL"`.

    Hiroshige Hayashizaki

    I feel running all is too broad -- but anyway I'll defer to virtual test owner.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Hiroki Nakagawa
    • Ken Okada
    Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement satisfiedCode-Review
      • requirement is not satisfiedNo-Unresolved-Comments
      • requirement satisfiedReview-Enforcement
      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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
      Gerrit-Change-Number: 7761929
      Gerrit-PatchSet: 14
      Gerrit-Owner: Ken Okada <ken...@chromium.org>
      Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
      Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
      Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
      Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
      Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
      Gerrit-Attention: Hiroki Nakagawa <nhi...@chromium.org>
      Gerrit-Attention: Ken Okada <ken...@chromium.org>
      Gerrit-Comment-Date: Tue, 21 Apr 2026 03:43:10 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Hiroki Nakagawa (Gerrit)

      unread,
      Apr 21, 2026, 12:25:30 AMApr 21
      to Ken Okada, Hiroshige Hayashizaki, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
      Attention needed from Ken Okada

      Hiroki Nakagawa voted and added 3 comments

      Votes added by Hiroki Nakagawa

      Code-Review+1

      3 comments

      Patchset-level comments
      File-level comment, Patchset 14 (Latest):
      Hiroki Nakagawa . resolved

      LGTM, thanks!

      File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.h
      Line 21, Patchset 4: : public blink::URLLoaderThrottle {
      Hiroki Nakagawa . unresolved

      Why is this `URLLoaderThrottle`, not `NavigationThrottle`?

      Ken Okada
      • `NavigationRequest::WillStartRequest()` is too early. `NavigationURLLoaderImpl::Start()` and prefetch matching follows it.
      • Other hooks are too late.
      • Another option was doing something like prefetch matching at, e.g., the head of `NavigationRequest`, rather than utilizing existing prefetch matching. But we (chat with hiroshige@) rejected it to keep PrefetchURLLoaderInterceptor/PrefetchMatchResolver "SSoT" of prefetch matching.

      Added as comments.

      Hiroshige Hayashizaki

      Memo: I'm wondering we should migrate this and `PrerenderURLLoaderThrottle` out of `URLLoaderThrottle` (perhaps by introducing more direct code in `NavigationURLLoaderImpl`), but this can/should be done separately/later not to block the experiment.

      Hiroki Nakagawa

      That makes sense, thanks!

      File third_party/blink/web_tests/VirtualTestSuites
      Hiroshige Hayashizaki . unresolved

      Shouldn't we list some bases here?

      Ken Okada

      I'm not so sure as (I think) it's not documented well... Lot's of suite uses `[]` and I guess that it's something like `"ALL"`.

      Hiroshige Hayashizaki

      I feel running all is too broad -- but anyway I'll defer to virtual test owner.

      Hiroki Nakagawa

      Should we run this only for speculation rules (external/wpt/speculation-rules/), as other WPTs don't trigger speculation rules prefetch in the first place?

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Ken Okada
      Gerrit-Attention: Ken Okada <ken...@chromium.org>
      Gerrit-Comment-Date: Tue, 21 Apr 2026 04:25:01 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      Comment-In-Reply-To: Hiroshige Hayashizaki <hiro...@chromium.org>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Hiroshige Hayashizaki (Gerrit)

      unread,
      Apr 23, 2026, 9:59:40 PMApr 23
      to Ken Okada, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
      Attention needed from Hiroki Nakagawa and Ken Okada

      Hiroshige Hayashizaki voted and added 2 comments

      Votes added by Hiroshige Hayashizaki

      Code-Review+1

      2 comments

      File content/browser/preloading/prefetch/nav_prefetch_browsertest.cc
      Line 929, Patchset 14:// - Start navigation X for URL V.
      Hiroshige Hayashizaki . resolved

      URL U?

      Hiroshige Hayashizaki

      Done

      File content/browser/preloading/prefetch/prefetch_service.h
      Line 262, Patchset 14: // Cancel unrelated prefetches.
      Hiroshige Hayashizaki . resolved

      nit: `Cancels`.

      Hiroshige Hayashizaki

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Hiroki Nakagawa
      • Ken Okada
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement satisfiedCode-Review
      • requirement is not satisfiedNo-Unresolved-Comments
      • requirement satisfiedReview-Enforcement
      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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
      Gerrit-Change-Number: 7761929
      Gerrit-PatchSet: 15
      Gerrit-Owner: Ken Okada <ken...@chromium.org>
      Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
      Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
      Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
      Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
      Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
      Gerrit-Attention: Hiroki Nakagawa <nhi...@chromium.org>
      Gerrit-Attention: Ken Okada <ken...@chromium.org>
      Gerrit-Comment-Date: Fri, 24 Apr 2026 01:59:00 +0000
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Hiroshige Hayashizaki (Gerrit)

      unread,
      Apr 23, 2026, 10:00:29 PMApr 23
      to Ken Okada, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
      Attention needed from Hiroki Nakagawa and Ken Okada

      Hiroshige Hayashizaki added 1 comment

      File third_party/blink/web_tests/VirtualTestSuites
      Hiroshige Hayashizaki . unresolved

      Shouldn't we list some bases here?

      Ken Okada

      I'm not so sure as (I think) it's not documented well... Lot's of suite uses `[]` and I guess that it's something like `"ALL"`.

      Hiroshige Hayashizaki

      I feel running all is too broad -- but anyway I'll defer to virtual test owner.

      Hiroki Nakagawa

      Should we run this only for speculation rules (external/wpt/speculation-rules/), as other WPTs don't trigger speculation rules prefetch in the first place?

      Hiroshige Hayashizaki

      +1 for just `external/wpt/speculation-rules` unless we have specific reasons.

      Gerrit-Comment-Date: Fri, 24 Apr 2026 01:59:53 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Ken Okada (Gerrit)

      unread,
      Apr 27, 2026, 11:51:53 PMApr 27
      to Hiroshige Hayashizaki, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
      Attention needed from Hiroki Nakagawa and Hiroshige Hayashizaki

      Ken Okada added 5 comments

      File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.h
      Line 21, Patchset 4: : public blink::URLLoaderThrottle {
      Hiroki Nakagawa . resolved

      Why is this `URLLoaderThrottle`, not `NavigationThrottle`?

      Ken Okada
      • `NavigationRequest::WillStartRequest()` is too early. `NavigationURLLoaderImpl::Start()` and prefetch matching follows it.
      • Other hooks are too late.
      • Another option was doing something like prefetch matching at, e.g., the head of `NavigationRequest`, rather than utilizing existing prefetch matching. But we (chat with hiroshige@) rejected it to keep PrefetchURLLoaderInterceptor/PrefetchMatchResolver "SSoT" of prefetch matching.

      Added as comments.

      Hiroshige Hayashizaki

      Memo: I'm wondering we should migrate this and `PrerenderURLLoaderThrottle` out of `URLLoaderThrottle` (perhaps by introducing more direct code in `NavigationURLLoaderImpl`), but this can/should be done separately/later not to block the experiment.

      Hiroki Nakagawa

      That makes sense, thanks!

      Ken Okada

      Done

      File content/browser/preloading/prefetch/nav_prefetch_browsertest.cc
      Line 852, Patchset 14: GURL url_navigated =
      Hiroshige Hayashizaki . resolved

      nit optional: it's clearer to show the correspondance bewteen the URLs in the code and comment, e.g.

      Adding a comment like:
      ```
      // URL V
      ```

      or renaming to `url_V` etc.

      ditto below.

      Ken Okada

      Updated as "URL `unl_navigated`" etc.

      Line 929, Patchset 14:// - Start navigation X for URL V.
      Hiroshige Hayashizaki . resolved

      URL U?

      Ken Okada

      Done

      Line 1033, Patchset 14:// - It doesn't cancel A as it is related.
      Hiroshige Hayashizaki . resolved

      Just to check: How this test is passing? I thought `CancelUnrelatedPrefetchForNavigation()` is called on the initial navigation (i.e. just before the network request to URL V) and thus prefetch A is cancelled there, but surely I'm missing something.

      Ken Okada

      Ah, good catch. Sorry. This was passed because the prefetch is servable as the test waits the prefetch. Using ControllableHttpResponse, it fails.

      Updated expectation. Unfortunately, this case is unavoidable.

      Chatted and mark resolved.

      File content/browser/preloading/prefetch/prefetch_service.h
      Line 262, Patchset 14: // Cancel unrelated prefetches.
      Hiroshige Hayashizaki . resolved

      nit: `Cancels`.

      Ken Okada

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Hiroki Nakagawa
      • Hiroshige Hayashizaki
      Submit Requirements:
        • requirement satisfiedCode-Coverage
        • requirement is not satisfiedCode-Owners
        • requirement is not satisfiedCode-Review
        • requirement is not satisfiedNo-Unresolved-Comments
        • requirement is not satisfiedReview-Enforcement
        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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
        Gerrit-Change-Number: 7761929
        Gerrit-PatchSet: 18
        Gerrit-Owner: Ken Okada <ken...@chromium.org>
        Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
        Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
        Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
        Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
        Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
        Gerrit-Attention: Hiroshige Hayashizaki <hiro...@chromium.org>
        Gerrit-Attention: Hiroki Nakagawa <nhi...@chromium.org>
        Gerrit-Comment-Date: Tue, 28 Apr 2026 03:51:20 +0000
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Ken Okada (Gerrit)

        unread,
        Apr 27, 2026, 11:53:35 PMApr 27
        to Hiroshige Hayashizaki, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
        Attention needed from Hiroki Nakagawa and Hiroshige Hayashizaki

        Ken Okada added 1 comment

        File third_party/blink/web_tests/VirtualTestSuites
        Hiroshige Hayashizaki . resolved

        Shouldn't we list some bases here?

        Ken Okada

        I'm not so sure as (I think) it's not documented well... Lot's of suite uses `[]` and I guess that it's something like `"ALL"`.

        Hiroshige Hayashizaki

        I feel running all is too broad -- but anyway I'll defer to virtual test owner.

        Hiroki Nakagawa

        Should we run this only for speculation rules (external/wpt/speculation-rules/), as other WPTs don't trigger speculation rules prefetch in the first place?

        Hiroshige Hayashizaki

        +1 for just `external/wpt/speculation-rules` unless we have specific reasons.

        Ken Okada

        https://chromium-review.git.corp.google.com/c/chromium/src/+/7792117

        My understanding was wrong. Added external/wpt/speculation-rules and http.

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Hiroki Nakagawa
        • Hiroshige Hayashizaki
        Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement is not satisfiedCode-Owners
          • requirement is not satisfiedCode-Review
          • requirement is not satisfiedReview-Enforcement
          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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
          Gerrit-Change-Number: 7761929
          Gerrit-PatchSet: 18
          Gerrit-Owner: Ken Okada <ken...@chromium.org>
          Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
          Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
          Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
          Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
          Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
          Gerrit-Attention: Hiroshige Hayashizaki <hiro...@chromium.org>
          Gerrit-Attention: Hiroki Nakagawa <nhi...@chromium.org>
          Gerrit-Comment-Date: Tue, 28 Apr 2026 03:53:08 +0000
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Hiroki Nakagawa (Gerrit)

          unread,
          Apr 28, 2026, 4:44:09 AMApr 28
          to Ken Okada, Hiroshige Hayashizaki, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
          Attention needed from Hiroshige Hayashizaki and Ken Okada

          Hiroki Nakagawa voted and added 1 comment

          Votes added by Hiroki Nakagawa

          Code-Review+1

          1 comment

          File third_party/blink/web_tests/VirtualTestSuites
          Line 2708, Patchset 17: "bases": ["external/wpt/speculation-rules", "http"],
          Hiroki Nakagawa . unresolved

          Which tests do we want to run under "http"? Is it possible to narrow down the scope like "external/wpt/speculation-rules"?

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Hiroshige Hayashizaki
          • Ken Okada
          Submit Requirements:
            • requirement satisfiedCode-Coverage
            • requirement is not satisfiedCode-Owners
            • requirement satisfiedCode-Review
            • requirement is not satisfiedNo-Unresolved-Comments
            • requirement satisfiedReview-Enforcement
            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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
            Gerrit-Change-Number: 7761929
            Gerrit-PatchSet: 18
            Gerrit-Owner: Ken Okada <ken...@chromium.org>
            Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
            Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
            Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
            Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
            Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
            Gerrit-Attention: Hiroshige Hayashizaki <hiro...@chromium.org>
            Gerrit-Attention: Ken Okada <ken...@chromium.org>
            Gerrit-Comment-Date: Tue, 28 Apr 2026 08:43:37 +0000
            Gerrit-HasComments: Yes
            Gerrit-Has-Labels: Yes
            satisfied_requirement
            unsatisfied_requirement
            open
            diffy

            Ken Okada (Gerrit)

            unread,
            Apr 28, 2026, 5:00:20 AMApr 28
            to Hiroki Nakagawa, Hiroshige Hayashizaki, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
            Attention needed from Hiroshige Hayashizaki

            Ken Okada added 1 comment

            File third_party/blink/web_tests/VirtualTestSuites
            Line 2708, Patchset 17: "bases": ["external/wpt/speculation-rules", "http"],
            Hiroki Nakagawa . resolved

            Which tests do we want to run under "http"? Is it possible to narrow down the scope like "external/wpt/speculation-rules"?

            Ken Okada

            E.g. http/tests/inspector-protocol/prefetch. Narrowed down to http/tests/inspector-protocol.

            Open in Gerrit

            Related details

            Attention is currently required from:
            • Hiroshige Hayashizaki
            Submit Requirements:
              • requirement satisfiedCode-Coverage
              • requirement is not satisfiedCode-Owners
              • requirement satisfiedCode-Review
              • requirement satisfiedReview-Enforcement
              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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
              Gerrit-Change-Number: 7761929
              Gerrit-PatchSet: 18
              Gerrit-Owner: Ken Okada <ken...@chromium.org>
              Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
              Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
              Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
              Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
              Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
              Gerrit-Attention: Hiroshige Hayashizaki <hiro...@chromium.org>
              Gerrit-Comment-Date: Tue, 28 Apr 2026 08:59:56 +0000
              Gerrit-HasComments: Yes
              Gerrit-Has-Labels: No
              Comment-In-Reply-To: Hiroki Nakagawa <nhi...@chromium.org>
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Hiroshige Hayashizaki (Gerrit)

              unread,
              May 1, 2026, 1:48:29 PMMay 1
              to Ken Okada, Code Review Nudger, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
              Attention needed from Ken Okada

              Hiroshige Hayashizaki voted Code-Review+1

              Code-Review+1
              Open in Gerrit

              Related details

              Attention is currently required from:
              • Ken Okada
              Submit Requirements:
              • requirement satisfiedCode-Coverage
              • requirement is not satisfiedCode-Owners
              • requirement satisfiedCode-Review
              • requirement satisfiedReview-Enforcement
              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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
              Gerrit-Change-Number: 7761929
              Gerrit-PatchSet: 20
              Gerrit-Owner: Ken Okada <ken...@chromium.org>
              Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
              Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
              Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
              Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
              Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
              Gerrit-Attention: Ken Okada <ken...@chromium.org>
              Gerrit-Comment-Date: Fri, 01 May 2026 17:48:08 +0000
              Gerrit-HasComments: No
              Gerrit-Has-Labels: Yes
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Ken Okada (Gerrit)

              unread,
              May 13, 2026, 7:55:18 PMMay 13
              to Danil Somsikov, Takashi Toyoshima, Jonathan Lee, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
              Attention needed from Danil Somsikov, Jonathan Lee and Takashi Toyoshima

              Ken Okada added 1 comment

              Patchset-level comments
              File-level comment, Patchset 21 (Latest):
              Ken Okada . resolved

              Owner review. Could you have a look?

              dsv@

              • content/browser/devtools/protocol/preload_handler.cc

              toyoshim@

              • content/browser/loader/url_loader_throttles.cc

              jonathanjlee@

              • third_party/blink/web_tests/TestLists/content_shell.filter
              • third_party/blink/web_tests/VirtualTestSuites
              Open in Gerrit

              Related details

              Attention is currently required from:
              • Danil Somsikov
              • Jonathan Lee
              • Takashi Toyoshima
              Submit Requirements:
              • requirement satisfiedCode-Coverage
              • requirement is not satisfiedCode-Owners
              • requirement satisfiedCode-Review
              • requirement satisfiedReview-Enforcement
              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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
              Gerrit-Change-Number: 7761929
              Gerrit-PatchSet: 21
              Gerrit-Owner: Ken Okada <ken...@chromium.org>
              Gerrit-Reviewer: Danil Somsikov <d...@chromium.org>
              Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
              Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
              Gerrit-Reviewer: Jonathan Lee <jonath...@google.com>
              Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
              Gerrit-Reviewer: Takashi Toyoshima <toyo...@chromium.org>
              Gerrit-Attention: Jonathan Lee <jonath...@google.com>
              Gerrit-Attention: Takashi Toyoshima <toyo...@chromium.org>
              Gerrit-Attention: Danil Somsikov <d...@chromium.org>
              Gerrit-Comment-Date: Wed, 13 May 2026 23:55:00 +0000
              Gerrit-HasComments: Yes
              Gerrit-Has-Labels: No
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Jonathan Lee (Gerrit)

              unread,
              May 13, 2026, 8:33:57 PMMay 13
              to Ken Okada, Danil Somsikov, Takashi Toyoshima, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
              Attention needed from Danil Somsikov, Ken Okada and Takashi Toyoshima

              Jonathan Lee added 1 comment

              File third_party/blink/web_tests/VirtualTestSuites
              Line 2682, Patchset 21: "platforms": [
              "Android",
              "Fuchsia",
              "Linux",
              "Mac",
              "Webview",
              "Win"
              ],
              "bases": ["external/wpt/speculation-rules", "http/tests/inspector-protocol"],
              Jonathan Lee . unresolved

              Is it possible to pick more specific tests to run, or only run them on Linux? See [these guidelines].

              Looking at https://ci.chromium.org/ui/p/chromium/builders/try/linux-rel/2663655/overview, [`virtual/prefetch-cancel-unrelated-prefetch/external/wpt/speculation-rules/`][1] runs ~500 tests and makes up 1.8% of `headless_shell_wpt_tests` (see "timing stats" in top right).

              (I didn't see any try builds for only `virtual/prefetch-cancel-unrelated-prefetch/http/tests/inspector-protocol/` - please dry-run and check the timing for `blink_web_tests`.)

              If this is a wide-reaching architectural change where many tests could regress, another alternative would be to create new [flag-specific suites] and only run them on CI builders. This avoids overloading the CQ test fleet (at the cost of catching regressions later).

              [0]: https://chromium-layout-test-archives.storage.googleapis.com/results.html?json=chromium/try/linux-rel/2663655/blink_web_tests%20%28with%20patch%29/full_results_jsonp.js
              [1]: https://chromium-layout-test-archives.storage.googleapis.com/results.html?json=chromium/try/linux-rel/2663655/headless_shell_wpt_tests%20%28with%20patch%29/full_results_jsonp.js
              [these guidelines]: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/VIRTUAL_OWNERS;l=12-20;drc=3c723a4b2022e4e47e6c95f7f6ad6a6931c85eae;bpv=0;bpt=0
              [flag-specific suites]: https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_tests.md#choosing-between-flag_specific-and-virtual-test-suite

              Open in Gerrit

              Related details

              Attention is currently required from:
              • Danil Somsikov
              • Ken Okada
              • Takashi Toyoshima
              Submit Requirements:
                • requirement satisfiedCode-Coverage
                • requirement is not satisfiedCode-Owners
                • requirement satisfiedCode-Review
                • requirement is not satisfiedNo-Unresolved-Comments
                • requirement satisfiedReview-Enforcement
                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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
                Gerrit-Change-Number: 7761929
                Gerrit-PatchSet: 22
                Gerrit-Owner: Ken Okada <ken...@chromium.org>
                Gerrit-Reviewer: Danil Somsikov <d...@chromium.org>
                Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
                Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
                Gerrit-Reviewer: Jonathan Lee <jonath...@google.com>
                Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
                Gerrit-Reviewer: Takashi Toyoshima <toyo...@chromium.org>
                Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
                Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
                Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
                Gerrit-Attention: Takashi Toyoshima <toyo...@chromium.org>
                Gerrit-Attention: Ken Okada <ken...@chromium.org>
                Gerrit-Attention: Danil Somsikov <d...@chromium.org>
                Gerrit-Comment-Date: Thu, 14 May 2026 00:33:44 +0000
                Gerrit-HasComments: Yes
                Gerrit-Has-Labels: No
                satisfied_requirement
                unsatisfied_requirement
                open
                diffy

                Ken Okada (Gerrit)

                unread,
                May 13, 2026, 9:20:43 PMMay 13
                to Danil Somsikov, Takashi Toyoshima, Jonathan Lee, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
                Attention needed from Danil Somsikov, Jonathan Lee and Takashi Toyoshima

                Ken Okada added 1 comment

                File third_party/blink/web_tests/VirtualTestSuites
                Line 2682, Patchset 21: "platforms": [
                "Android",
                "Fuchsia",
                "Linux",
                "Mac",
                "Webview",
                "Win"
                ],
                "bases": ["external/wpt/speculation-rules", "http/tests/inspector-protocol"],
                Jonathan Lee . resolved

                Is it possible to pick more specific tests to run, or only run them on Linux? See [these guidelines].

                Looking at https://ci.chromium.org/ui/p/chromium/builders/try/linux-rel/2663655/overview, [`virtual/prefetch-cancel-unrelated-prefetch/external/wpt/speculation-rules/`][1] runs ~500 tests and makes up 1.8% of `headless_shell_wpt_tests` (see "timing stats" in top right).

                (I didn't see any try builds for only `virtual/prefetch-cancel-unrelated-prefetch/http/tests/inspector-protocol/` - please dry-run and check the timing for `blink_web_tests`.)

                If this is a wide-reaching architectural change where many tests could regress, another alternative would be to create new [flag-specific suites] and only run them on CI builders. This avoids overloading the CQ test fleet (at the cost of catching regressions later).

                [0]: https://chromium-layout-test-archives.storage.googleapis.com/results.html?json=chromium/try/linux-rel/2663655/blink_web_tests%20%28with%20patch%29/full_results_jsonp.js
                [1]: https://chromium-layout-test-archives.storage.googleapis.com/results.html?json=chromium/try/linux-rel/2663655/headless_shell_wpt_tests%20%28with%20patch%29/full_results_jsonp.js
                [these guidelines]: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/VIRTUAL_OWNERS;l=12-20;drc=3c723a4b2022e4e47e6c95f7f6ad6a6931c85eae;bpv=0;bpt=0
                [flag-specific suites]: https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_tests.md#choosing-between-flag_specific-and-virtual-test-suite

                Ken Okada

                Thanks! Only run them on Linux.

                Open in Gerrit

                Related details

                Attention is currently required from:
                • Danil Somsikov
                • Jonathan Lee
                • Takashi Toyoshima
                Submit Requirements:
                  • requirement satisfiedCode-Coverage
                  • requirement is not satisfiedCode-Owners
                  • requirement satisfiedCode-Review
                  • requirement satisfiedReview-Enforcement
                  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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
                  Gerrit-Change-Number: 7761929
                  Gerrit-PatchSet: 23
                  Gerrit-Owner: Ken Okada <ken...@chromium.org>
                  Gerrit-Reviewer: Danil Somsikov <d...@chromium.org>
                  Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
                  Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
                  Gerrit-Reviewer: Jonathan Lee <jonath...@google.com>
                  Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
                  Gerrit-Reviewer: Takashi Toyoshima <toyo...@chromium.org>
                  Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
                  Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
                  Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
                  Gerrit-Attention: Jonathan Lee <jonath...@google.com>
                  Gerrit-Attention: Takashi Toyoshima <toyo...@chromium.org>
                  Gerrit-Attention: Danil Somsikov <d...@chromium.org>
                  Gerrit-Comment-Date: Thu, 14 May 2026 01:20:32 +0000
                  Gerrit-HasComments: Yes
                  Gerrit-Has-Labels: No
                  Comment-In-Reply-To: Jonathan Lee <jonath...@google.com>
                  satisfied_requirement
                  unsatisfied_requirement
                  open
                  diffy

                  Takashi Toyoshima (Gerrit)

                  unread,
                  May 14, 2026, 1:54:37 AMMay 14
                  to Ken Okada, Danil Somsikov, Jonathan Lee, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
                  Attention needed from Danil Somsikov, Jonathan Lee and Ken Okada

                  Takashi Toyoshima added 1 comment

                  File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.cc
                  Line 1, Patchset 23 (Latest):// Copyright 2026 The Chromium Authors
                  Takashi Toyoshima . unresolved

                  just in case, why this is implemented as a URLLoaderThrottle rather than NavigationThrottle? Are you interested in subresource load hooks too?

                  Open in Gerrit

                  Related details

                  Attention is currently required from:
                  • Danil Somsikov
                  • Jonathan Lee
                  • Ken Okada
                  Submit Requirements:
                    • requirement satisfiedCode-Coverage
                    • requirement is not satisfiedCode-Owners
                    • requirement satisfiedCode-Review
                    • requirement is not satisfiedNo-Unresolved-Comments
                    • requirement satisfiedReview-Enforcement
                    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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
                    Gerrit-Change-Number: 7761929
                    Gerrit-PatchSet: 23
                    Gerrit-Owner: Ken Okada <ken...@chromium.org>
                    Gerrit-Reviewer: Danil Somsikov <d...@chromium.org>
                    Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
                    Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
                    Gerrit-Reviewer: Jonathan Lee <jonath...@google.com>
                    Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
                    Gerrit-Reviewer: Takashi Toyoshima <toyo...@chromium.org>
                    Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
                    Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
                    Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
                    Gerrit-Attention: Jonathan Lee <jonath...@google.com>
                    Gerrit-Attention: Ken Okada <ken...@chromium.org>
                    Gerrit-Attention: Danil Somsikov <d...@chromium.org>
                    Gerrit-Comment-Date: Thu, 14 May 2026 05:54:27 +0000
                    Gerrit-HasComments: Yes
                    Gerrit-Has-Labels: No
                    satisfied_requirement
                    unsatisfied_requirement
                    open
                    diffy

                    Jonathan Lee (Gerrit)

                    unread,
                    May 14, 2026, 4:22:19 PMMay 14
                    to Ken Okada, Danil Somsikov, Takashi Toyoshima, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
                    Attention needed from Danil Somsikov and Ken Okada

                    Jonathan Lee voted and added 1 comment

                    Votes added by Jonathan Lee

                    Code-Review+1

                    1 comment

                    File third_party/blink/web_tests/VirtualTestSuites
                    Line 2682, Patchset 21: "platforms": [
                    "Android",
                    "Fuchsia",
                    "Linux",
                    "Mac",
                    "Webview",
                    "Win"
                    ],
                    "bases": ["external/wpt/speculation-rules", "http/tests/inspector-protocol"],
                    Jonathan Lee . resolved

                    Is it possible to pick more specific tests to run, or only run them on Linux? See [these guidelines].

                    Looking at https://ci.chromium.org/ui/p/chromium/builders/try/linux-rel/2663655/overview, [`virtual/prefetch-cancel-unrelated-prefetch/external/wpt/speculation-rules/`][1] runs ~500 tests and makes up 1.8% of `headless_shell_wpt_tests` (see "timing stats" in top right).

                    (I didn't see any try builds for only `virtual/prefetch-cancel-unrelated-prefetch/http/tests/inspector-protocol/` - please dry-run and check the timing for `blink_web_tests`.)

                    If this is a wide-reaching architectural change where many tests could regress, another alternative would be to create new [flag-specific suites] and only run them on CI builders. This avoids overloading the CQ test fleet (at the cost of catching regressions later).

                    [0]: https://chromium-layout-test-archives.storage.googleapis.com/results.html?json=chromium/try/linux-rel/2663655/blink_web_tests%20%28with%20patch%29/full_results_jsonp.js
                    [1]: https://chromium-layout-test-archives.storage.googleapis.com/results.html?json=chromium/try/linux-rel/2663655/headless_shell_wpt_tests%20%28with%20patch%29/full_results_jsonp.js
                    [these guidelines]: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/VIRTUAL_OWNERS;l=12-20;drc=3c723a4b2022e4e47e6c95f7f6ad6a6931c85eae;bpv=0;bpt=0
                    [flag-specific suites]: https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_tests.md#choosing-between-flag_specific-and-virtual-test-suite

                    Ken Okada

                    Thanks! Only run them on Linux.

                    Jonathan Lee

                    `web_tests/` LGTM

                    Open in Gerrit

                    Related details

                    Attention is currently required from:
                    • Danil Somsikov
                    • Ken Okada
                    Gerrit-Attention: Ken Okada <ken...@chromium.org>
                    Gerrit-Attention: Danil Somsikov <d...@chromium.org>
                    Gerrit-Comment-Date: Thu, 14 May 2026 20:22:08 +0000
                    Gerrit-HasComments: Yes
                    Gerrit-Has-Labels: Yes
                    Comment-In-Reply-To: Jonathan Lee <jonath...@google.com>
                    Comment-In-Reply-To: Ken Okada <ken...@chromium.org>
                    satisfied_requirement
                    unsatisfied_requirement
                    open
                    diffy

                    Ken Okada (Gerrit)

                    unread,
                    May 15, 2026, 9:26:41 AMMay 15
                    to Jonathan Lee, Danil Somsikov, Takashi Toyoshima, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
                    Attention needed from Danil Somsikov and Takashi Toyoshima

                    Ken Okada added 1 comment

                    File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.cc
                    Line 1, Patchset 23:// Copyright 2026 The Chromium Authors
                    Takashi Toyoshima . unresolved

                    just in case, why this is implemented as a URLLoaderThrottle rather than NavigationThrottle? Are you interested in subresource load hooks too?

                    Ken Okada

                    Good question. It's because the hooks of NavigationThrottle is very coarse.

                    https://chromium-review.git.corp.google.com/c/chromium/src/+/7761929/comment/d11ccb11_b63dae2b/

                    Open in Gerrit

                    Related details

                    Attention is currently required from:
                    • Danil Somsikov
                    • Takashi Toyoshima
                    Submit Requirements:
                    • requirement satisfiedCode-Coverage
                    • requirement is not satisfiedCode-Owners
                    • requirement satisfiedCode-Review
                    • requirement is not satisfiedNo-Unresolved-Comments
                    • requirement satisfiedReview-Enforcement
                    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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
                    Gerrit-Change-Number: 7761929
                    Gerrit-PatchSet: 24
                    Gerrit-Owner: Ken Okada <ken...@chromium.org>
                    Gerrit-Reviewer: Danil Somsikov <d...@chromium.org>
                    Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
                    Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
                    Gerrit-Reviewer: Jonathan Lee <jonath...@google.com>
                    Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
                    Gerrit-Reviewer: Takashi Toyoshima <toyo...@chromium.org>
                    Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
                    Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
                    Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
                    Gerrit-Attention: Takashi Toyoshima <toyo...@chromium.org>
                    Gerrit-Attention: Danil Somsikov <d...@chromium.org>
                    Gerrit-Comment-Date: Fri, 15 May 2026 13:26:17 +0000
                    Gerrit-HasComments: Yes
                    Gerrit-Has-Labels: No
                    Comment-In-Reply-To: Takashi Toyoshima <toyo...@chromium.org>
                    satisfied_requirement
                    unsatisfied_requirement
                    open
                    diffy

                    Danil Somsikov (Gerrit)

                    unread,
                    May 15, 2026, 9:39:54 AMMay 15
                    to Ken Okada, Jonathan Lee, Takashi Toyoshima, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
                    Attention needed from Ken Okada and Takashi Toyoshima

                    Danil Somsikov voted and added 1 comment

                    Votes added by Danil Somsikov

                    Code-Review+1

                    1 comment

                    Patchset-level comments
                    File-level comment, Patchset 24 (Latest):
                    Danil Somsikov . resolved

                    DevTools LGTM

                    Open in Gerrit

                    Related details

                    Attention is currently required from:
                    • Ken Okada
                    • Takashi Toyoshima
                    Gerrit-Attention: Ken Okada <ken...@chromium.org>
                    Gerrit-Comment-Date: Fri, 15 May 2026 13:39:38 +0000
                    Gerrit-HasComments: Yes
                    Gerrit-Has-Labels: Yes
                    satisfied_requirement
                    unsatisfied_requirement
                    open
                    diffy

                    Takashi Toyoshima (Gerrit)

                    unread,
                    May 18, 2026, 3:47:01 AM (12 days ago) May 18
                    to Ken Okada, Danil Somsikov, Jonathan Lee, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
                    Attention needed from Ken Okada

                    Takashi Toyoshima voted and added 2 comments

                    Votes added by Takashi Toyoshima

                    Code-Review+1

                    2 comments

                    File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.cc
                    Line 1, Patchset 23:// Copyright 2026 The Chromium Authors
                    Takashi Toyoshima . unresolved

                    just in case, why this is implemented as a URLLoaderThrottle rather than NavigationThrottle? Are you interested in subresource load hooks too?

                    Ken Okada

                    Good question. It's because the hooks of NavigationThrottle is very coarse.

                    https://chromium-review.git.corp.google.com/c/chromium/src/+/7761929/comment/d11ccb11_b63dae2b/

                    Takashi Toyoshima

                    Ah, interesting. WillStartNavigation is too early, and there is no good timing hook for this. OK, SGTM.

                    Line 31, Patchset 24 (Latest): // Only non prerender navigations are targets.
                    Takashi Toyoshima . unresolved

                    optional: maybe non-prerender?

                    Open in Gerrit

                    Related details

                    Attention is currently required from:
                    • Ken Okada
                    Submit Requirements:
                    • requirement satisfiedCode-Coverage
                    • requirement satisfiedCode-Owners
                    Gerrit-Attention: Ken Okada <ken...@chromium.org>
                    Gerrit-Comment-Date: Mon, 18 May 2026 07:46:29 +0000
                    Gerrit-HasComments: Yes
                    Gerrit-Has-Labels: Yes
                    Comment-In-Reply-To: Takashi Toyoshima <toyo...@chromium.org>
                    Comment-In-Reply-To: Ken Okada <ken...@chromium.org>
                    satisfied_requirement
                    unsatisfied_requirement
                    open
                    diffy

                    Ken Okada (Gerrit)

                    unread,
                    May 18, 2026, 5:53:11 AM (12 days ago) May 18
                    to Takashi Toyoshima, Danil Somsikov, Jonathan Lee, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org

                    Ken Okada voted and added 1 comment

                    Votes added by Ken Okada

                    Commit-Queue+2

                    1 comment

                    File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.cc
                    Line 1, Patchset 23:// Copyright 2026 The Chromium Authors
                    Takashi Toyoshima . resolved

                    just in case, why this is implemented as a URLLoaderThrottle rather than NavigationThrottle? Are you interested in subresource load hooks too?

                    Ken Okada

                    Good question. It's because the hooks of NavigationThrottle is very coarse.

                    https://chromium-review.git.corp.google.com/c/chromium/src/+/7761929/comment/d11ccb11_b63dae2b/

                    Takashi Toyoshima

                    Ah, interesting. WillStartNavigation is too early, and there is no good timing hook for this. OK, SGTM.

                    Ken Okada

                    Done

                    Open in Gerrit

                    Related details

                    Attention set is empty
                    Gerrit-Comment-Date: Mon, 18 May 2026 09:52:36 +0000
                    satisfied_requirement
                    unsatisfied_requirement
                    open
                    diffy

                    Ken Okada (Gerrit)

                    unread,
                    May 18, 2026, 6:01:34 AM (12 days ago) May 18
                    to Takashi Toyoshima, Danil Somsikov, Jonathan Lee, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org

                    Ken Okada voted and added 1 comment

                    Votes added by Ken Okada

                    Commit-Queue+2

                    1 comment

                    File content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.cc
                    Line 31, Patchset 24: // Only non prerender navigations are targets.
                    Takashi Toyoshima . resolved

                    optional: maybe non-prerender?

                    Ken Okada

                    Done

                    Open in Gerrit

                    Related details

                    Attention set is empty
                    Submit Requirements:
                      • requirement satisfiedCode-Coverage
                      • requirement satisfiedCode-Owners
                      • requirement satisfiedCode-Review
                      • requirement satisfiedReview-Enforcement
                      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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
                      Gerrit-Change-Number: 7761929
                      Gerrit-PatchSet: 25
                      Gerrit-Owner: Ken Okada <ken...@chromium.org>
                      Gerrit-Reviewer: Danil Somsikov <d...@chromium.org>
                      Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
                      Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
                      Gerrit-Reviewer: Jonathan Lee <jonath...@google.com>
                      Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
                      Gerrit-Reviewer: Takashi Toyoshima <toyo...@chromium.org>
                      Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
                      Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
                      Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
                      Gerrit-Comment-Date: Mon, 18 May 2026 10:00:57 +0000
                      satisfied_requirement
                      open
                      diffy

                      Chromium LUCI CQ (Gerrit)

                      unread,
                      May 18, 2026, 6:53:14 AM (12 days ago) May 18
                      to Ken Okada, Takashi Toyoshima, Danil Somsikov, Jonathan Lee, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org

                      Chromium LUCI CQ submitted the change with unreviewed changes

                      Unreviewed changes

                      24 is the latest approved patch-set.
                      The change was submitted with unreviewed changes in the following files:

                      ```
                      The name of the file: content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.cc
                      Insertions: 1, Deletions: 1.

                      @@ -28,7 +28,7 @@
                      return nullptr;
                      }

                      - // Only non prerender navigations are targets.
                      + // Only non-prerender navigations are targets.

                      if (!frame_tree_node->IsOutermostMainFrame()) {
                      return nullptr;
                      ```

                      Change information

                      Commit message:
                      Prefetch: Cancel unrelated prefetch

                      Triggering prefetch is costly. The most impactful scenario is when
                      prefetch is triggered, and navigation starts immediately afterward, but
                      the prefetch is not used for navigation and then becomes a network
                      conflict.

                      This CL tries to mitigate it by introducing a cancel mechanism:

                      - Records prefetches that a navigation is claiming:
                      `NavigationClaimingPrefetches`.
                      - Cancels unrelated, not completed prefetches just before starting
                      network request of the navigation:
                      `CancelUnrelatedPrefetchURLLoaderThrottle`.

                      This CL also adds a feature flag `PrefetchCancelUnrelatedPrefetch` to
                      control it.
                      Bug: 499176365
                      Change-Id: Ice28c63db8eb9c315a172a1d6043f54288c1c319
                      Reviewed-by: Danil Somsikov <d...@chromium.org>
                      Commit-Queue: Ken Okada <ken...@chromium.org>
                      Reviewed-by: Hiroki Nakagawa <nhi...@chromium.org>
                      Reviewed-by: Hiroshige Hayashizaki <hiro...@chromium.org>
                      Reviewed-by: Takashi Toyoshima <toyo...@chromium.org>
                      Reviewed-by: Jonathan Lee <jonath...@google.com>
                      Cr-Commit-Position: refs/heads/main@{#1632064}
                      Files:
                      • M content/browser/BUILD.gn
                      • M content/browser/devtools/protocol/preload_handler.cc
                      • M content/browser/loader/url_loader_throttles.cc
                      • A content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.cc
                      • A content/browser/preloading/prefetch/cancel_unrelated_prefetch_url_loader_throttle.h
                      • M content/browser/preloading/prefetch/nav_prefetch_browsertest.cc
                      • M content/browser/preloading/prefetch/prefetch_container.cc
                      • M content/browser/preloading/prefetch/prefetch_features.cc
                      • M content/browser/preloading/prefetch/prefetch_features.h
                      • M content/browser/preloading/prefetch/prefetch_service.cc
                      • M content/browser/preloading/prefetch/prefetch_service.h
                      • M content/browser/preloading/prefetch/prefetch_status.h
                      • M third_party/blink/public/devtools_protocol/domains/Preload.pdl
                      • M third_party/blink/web_tests/TestLists/chrome.filter
                      • M third_party/blink/web_tests/TestLists/content_shell.filter
                      • M third_party/blink/web_tests/VirtualTestSuites
                      • A third_party/blink/web_tests/virtual/prefetch-cancel-unrelated-prefetch/README.md
                      • M tools/metrics/histograms/enums.xml
                      Change size: L
                      Delta: 18 files changed, 588 insertions(+), 3 deletions(-)
                      Branch: refs/heads/main
                      Submit Requirements:
                      • requirement satisfiedCode-Review: +1 by Jonathan Lee, +1 by Takashi Toyoshima, +1 by Hiroshige Hayashizaki, +1 by Hiroki Nakagawa, +1 by Danil Somsikov
                      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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
                      Gerrit-Change-Number: 7761929
                      Gerrit-PatchSet: 26
                      Gerrit-Owner: Ken Okada <ken...@chromium.org>
                      Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
                      Gerrit-Reviewer: Danil Somsikov <d...@chromium.org>
                      Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
                      Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
                      Gerrit-Reviewer: Jonathan Lee <jonath...@google.com>
                      Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
                      Gerrit-Reviewer: Takashi Toyoshima <toyo...@chromium.org>
                      open
                      diffy
                      satisfied_requirement

                      Anthi Orfanou (Gerrit)

                      unread,
                      May 18, 2026, 12:04:15 PM (12 days ago) May 18
                      to Chromium LUCI CQ, Ken Okada, Takashi Toyoshima, Danil Somsikov, Jonathan Lee, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org

                      Anthi Orfanou added 1 comment

                      Patchset-level comments
                      File-level comment, Patchset 26 (Latest):
                      Anthi Orfanou . unresolved

                      Clank gardener here: Two tests from this CL fail cosnsitently on builder https://ci.chromium.org/ui/p/chromium/builders/ci/android-bfcache-rel/40479/overview

                      Open in Gerrit

                      Related details

                      Attention set is empty
                      Submit Requirements:
                      • requirement satisfiedCode-Coverage
                      • requirement satisfiedCode-Owners
                      • requirement satisfiedCode-Review
                      • requirement satisfiedReview-Enforcement
                      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: Ice28c63db8eb9c315a172a1d6043f54288c1c319
                      Gerrit-Change-Number: 7761929
                      Gerrit-PatchSet: 26
                      Gerrit-Owner: Ken Okada <ken...@chromium.org>
                      Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
                      Gerrit-Reviewer: Danil Somsikov <d...@chromium.org>
                      Gerrit-Reviewer: Hiroki Nakagawa <nhi...@chromium.org>
                      Gerrit-Reviewer: Hiroshige Hayashizaki <hiro...@chromium.org>
                      Gerrit-Reviewer: Jonathan Lee <jonath...@google.com>
                      Gerrit-Reviewer: Ken Okada <ken...@chromium.org>
                      Gerrit-Reviewer: Takashi Toyoshima <toyo...@chromium.org>
                      Gerrit-CC: Anthi Orfanou <ant...@google.com>
                      Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
                      Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
                      Gerrit-CC: prerendering-reviews <prerenderi...@chromium.org>
                      Gerrit-Comment-Date: Mon, 18 May 2026 16:04:01 +0000
                      Gerrit-HasComments: Yes
                      Gerrit-Has-Labels: No
                      satisfied_requirement
                      open
                      diffy

                      Anthi Orfanou (Gerrit)

                      unread,
                      May 18, 2026, 12:06:29 PM (12 days ago) May 18
                      to Chromium LUCI CQ, Ken Okada, Takashi Toyoshima, Danil Somsikov, Jonathan Lee, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
                      Attention needed from Ken Okada

                      Anthi Orfanou added 1 comment

                      Patchset-level comments
                      Anthi Orfanou . unresolved

                      Clank gardener here: Two tests from this CL fail cosnsitently on builder https://ci.chromium.org/ui/p/chromium/builders/ci/android-bfcache-rel/40479/overview

                      Anthi Orfanou

                      @ken...@chromium.org this is a rather big CL so I am a bit hesitant to revert it, on the other hand since the test is new and broken on a builder it might be the cleanest way.

                      Open in Gerrit

                      Related details

                      Attention is currently required from:
                      • Ken Okada
                      Gerrit-Attention: Ken Okada <ken...@chromium.org>
                      Gerrit-Comment-Date: Mon, 18 May 2026 16:06:16 +0000
                      Gerrit-HasComments: Yes
                      Gerrit-Has-Labels: No
                      Comment-In-Reply-To: Anthi Orfanou <ant...@google.com>
                      satisfied_requirement
                      open
                      diffy

                      Anthi Orfanou (Gerrit)

                      unread,
                      May 18, 2026, 12:46:05 PM (12 days ago) May 18
                      to Chromium LUCI CQ, Ken Okada, Takashi Toyoshima, Danil Somsikov, Jonathan Lee, Hiroshige Hayashizaki, Code Review Nudger, Hiroki Nakagawa, android-bu...@system.gserviceaccount.com, Chromium Metrics Reviews, chromium...@chromium.org, devtools...@chromium.org, prerendering-reviews, asvitkine...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, gavin...@chromium.org, loading...@chromium.org, tburkar...@chromium.org
                      Attention needed from Ken Okada

                      Anthi Orfanou has created a revert of this change

                      Related details

                      Attention is currently required from:
                      • Ken Okada
                      Submit Requirements:
                      • requirement satisfiedCode-Coverage
                      • requirement satisfiedCode-Owners
                      • requirement satisfiedCode-Review
                      • requirement satisfiedReview-Enforcement
                      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                      Gerrit-MessageType: revert
                      satisfied_requirement
                      open
                      diffy
                      Reply all
                      Reply to author
                      Forward
                      0 new messages