ServiceWorker: add typed version of routerRules CDP field for DevTools [chromium/src : main]

1 view
Skip to first unread message

Takashi Nakayama (Gerrit)

unread,
Aug 3, 2026, 4:29:58 AMAug 3
to Shunya Shishido, Yoshisato Yanagisawa, Alex Rudenko, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
Attention needed from Alex Rudenko, Shunya Shishido and Yoshisato Yanagisawa

Takashi Nakayama voted Commit-Queue+1

Commit-Queue+1
Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Shunya Shishido
  • Yoshisato Yanagisawa
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: I7348430f7cb336bec12c3f8859d12380e1787b9c
Gerrit-Change-Number: 8182989
Gerrit-PatchSet: 3
Gerrit-Owner: Takashi Nakayama <tn...@chromium.org>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
Gerrit-Attention: Shunya Shishido <sisid...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
Gerrit-Comment-Date: Mon, 03 Aug 2026 08:29:25 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
satisfied_requirement
unsatisfied_requirement
open
diffy

Shunya Shishido (Gerrit)

unread,
Aug 3, 2026, 4:48:59 AMAug 3
to Takashi Nakayama, Keita Suzuki, Yoshisato Yanagisawa, Alex Rudenko, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
Attention needed from Alex Rudenko, Takashi Nakayama and Yoshisato Yanagisawa

Shunya Shishido voted Commit-Queue+0

Commit-Queue+0
Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Takashi Nakayama
  • Yoshisato Yanagisawa
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: I7348430f7cb336bec12c3f8859d12380e1787b9c
Gerrit-Change-Number: 8182989
Gerrit-PatchSet: 3
Gerrit-Owner: Takashi Nakayama <tn...@chromium.org>
Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
Gerrit-CC: Keita Suzuki <suzuk...@chromium.org>
Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
Gerrit-Comment-Date: Mon, 03 Aug 2026 08:48:48 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
satisfied_requirement
unsatisfied_requirement
open
diffy

Shunya Shishido (Gerrit)

unread,
Aug 3, 2026, 4:59:57 AMAug 3
to Takashi Nakayama, Keita Suzuki, Yoshisato Yanagisawa, Alex Rudenko, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
Attention needed from Alex Rudenko, Takashi Nakayama and Yoshisato Yanagisawa

Shunya Shishido added 4 comments

File content/browser/service_worker/service_worker_context_core.cc
Line 1340, Patchset 3 (Latest): std::optional<std::string> legacy_router_rules;
Shunya Shishido . unresolved

This block is duplicated between `ServiceWorkerVersion::GetInfo()` and `ServiceWorkerContextCore::OnVersionStateChanged()`.

Can we consider adding a helper method on `ServiceWorkerVersion` (e.g., `GetRouterRulesForDevTools()`), or `ServiceWorkerRouterEvaluator()`?

Line 1342, Patchset 3 (Latest): // Router rules that have nested conditinos are currently unsupported. Use
Shunya Shishido . unresolved

Typo: "conditinos" -> "conditions".

File content/browser/service_worker/service_worker_version.cc
Line 477, Patchset 3 (Latest): // Router rules that have nested conditinos are currently unsupported. Use
Shunya Shishido . unresolved

Typo: "conditinos" -> "conditions".

File content/common/service_worker/service_worker_router_evaluator.h
Line 85, Patchset 3 (Latest): std::vector<ServiceWorkerRouterRule> PrepareRouterRules() const;
Shunya Shishido . unresolved

The name "PrepareRouterRules" is a bit generic and not clear what the function will do. Consider a name that matches the destination or the transformation, such as `GetTypedRouterRules()` (matching the CDP field) or `GetRouterRulesForDevTools()`.

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Rudenko
  • Takashi Nakayama
  • Yoshisato Yanagisawa
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: I7348430f7cb336bec12c3f8859d12380e1787b9c
    Gerrit-Change-Number: 8182989
    Gerrit-PatchSet: 3
    Gerrit-Owner: Takashi Nakayama <tn...@chromium.org>
    Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
    Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
    Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
    Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
    Gerrit-CC: Keita Suzuki <suzuk...@chromium.org>
    Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
    Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
    Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
    Gerrit-Comment-Date: Mon, 03 Aug 2026 08:59:44 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Yoshisato Yanagisawa (Gerrit)

    unread,
    Aug 3, 2026, 5:33:33 AMAug 3
    to Takashi Nakayama, Shunya Shishido, Keita Suzuki, Alex Rudenko, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
    Attention needed from Alex Rudenko and Takashi Nakayama

    Yoshisato Yanagisawa voted and added 4 comments

    Votes added by Yoshisato Yanagisawa

    Code-Review+1

    4 comments

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

    lgtm w/ nit

    File content/common/service_worker/service_worker_router_evaluator.h
    Line 85, Patchset 3 (Latest): std::vector<ServiceWorkerRouterRule> PrepareRouterRules() const;
    Shunya Shishido . unresolved

    The name "PrepareRouterRules" is a bit generic and not clear what the function will do. Consider a name that matches the destination or the transformation, such as `GetTypedRouterRules()` (matching the CDP field) or `GetRouterRulesForDevTools()`.

    Yoshisato Yanagisawa

    +1
    I failed to catch what would be returned from `PreapreRouterRules()`,

    Line 44, Patchset 3 (Latest): std::string source;
    Yoshisato Yanagisawa . unresolved

    Ah, is source so simple?
    I thought the source would be represented with union.

    File third_party/blink/public/devtools_protocol/domains/ServiceWorker.pdl
    Line 51, Patchset 3 (Latest): # Plain text or JSON serialization of `RouterSourceDict` in the spec
    Yoshisato Yanagisawa . unresolved

    RouterSourceEnum will be a plain text?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Alex Rudenko
    • Takashi Nakayama
    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: I7348430f7cb336bec12c3f8859d12380e1787b9c
      Gerrit-Change-Number: 8182989
      Gerrit-PatchSet: 3
      Gerrit-Owner: Takashi Nakayama <tn...@chromium.org>
      Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
      Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
      Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
      Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
      Gerrit-CC: Keita Suzuki <suzuk...@chromium.org>
      Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
      Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
      Gerrit-Comment-Date: Mon, 03 Aug 2026 09:33:00 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      Comment-In-Reply-To: Shunya Shishido <sisid...@chromium.org>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Alex Rudenko (Gerrit)

      unread,
      Aug 3, 2026, 11:17:00 AMAug 3
      to Takashi Nakayama, Yoshisato Yanagisawa, Shunya Shishido, Keita Suzuki, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
      Attention needed from Takashi Nakayama

      Alex Rudenko added 5 comments

      Patchset-level comments
      Alex Rudenko . unresolved

      Please add inspector-protocol tests covering the new type output (ideally for various possible outputs).

      File content/browser/service_worker/service_worker_context_core.cc
      Line 1342, Patchset 3 (Latest): // Router rules that have nested conditinos are currently unsupported. Use
      Alex Rudenko . unresolved

      nit: conditinos -> conditions

      File content/browser/service_worker/service_worker_context_core_observer.h
      Line 61, Patchset 3 (Latest): std::optional<std::string> router_rules,
      Alex Rudenko . unresolved

      Consider passing these by `const &` (e.g., `const std::optional<std::string>&` and `const std::vector<ServiceWorkerRouterRule>&`) to avoid unnecessary copies when notifying multiple observers. The previous `router_rules` parameter was passed by `const &`.

      If you update this, remember to also update the overrides in `ServiceWorkerContextWatcher` and `ServiceWorkerInternalsUI`.

      File third_party/blink/public/devtools_protocol/domains/ServiceWorker.pdl
      Line 55, Patchset 3 (Latest): number id
      Alex Rudenko . unresolved

      nit: Since rule IDs are typically whole numbers, consider using `integer id` instead of `number` in the DevTools protocol.

      Line 73, Patchset 3 (Latest): # `routerRules` or `typedRouterRules`.
      Alex Rudenko . unresolved

      do we plan to rename typedRouterRules back to routerRules?

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Takashi Nakayama
      Gerrit-Comment-Date: Mon, 03 Aug 2026 15:16:41 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Takashi Nakayama (Gerrit)

      unread,
      Aug 4, 2026, 6:25:01 AMAug 4
      to Yoshisato Yanagisawa, Shunya Shishido, Keita Suzuki, Alex Rudenko, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
      Attention needed from Alex Rudenko, Shunya Shishido and Yoshisato Yanagisawa

      Takashi Nakayama added 11 comments

      Patchset-level comments
      Alex Rudenko . unresolved

      Please add inspector-protocol tests covering the new type output (ideally for various possible outputs).

      Takashi Nakayama

      Could we add them together with the implementation of `ServiceWorkerRouterEvaluator::CalculateRouterRulesForDevTools()` in `content/common/service_worker/service_worker_router_evaluator.cc`?

      File content/browser/service_worker/service_worker_context_core.cc
      Line 1340, Patchset 3: std::optional<std::string> legacy_router_rules;
      Shunya Shishido . unresolved

      This block is duplicated between `ServiceWorkerVersion::GetInfo()` and `ServiceWorkerContextCore::OnVersionStateChanged()`.

      Can we consider adding a helper method on `ServiceWorkerVersion` (e.g., `GetRouterRulesForDevTools()`), or `ServiceWorkerRouterEvaluator()`?

      Takashi Nakayama

      Added `ServiceWorkerVersion::CalculateRouterRulesForDevTools()`. PTAL

      Line 1342, Patchset 3: // Router rules that have nested conditinos are currently unsupported. Use
      Shunya Shishido . resolved

      Typo: "conditinos" -> "conditions".

      Takashi Nakayama

      Done

      Line 1342, Patchset 3: // Router rules that have nested conditinos are currently unsupported. Use
      Alex Rudenko . resolved

      nit: conditinos -> conditions

      Takashi Nakayama

      Done

      File content/browser/service_worker/service_worker_context_core_observer.h
      Line 61, Patchset 3: std::optional<std::string> router_rules,
      Alex Rudenko . unresolved

      Consider passing these by `const &` (e.g., `const std::optional<std::string>&` and `const std::vector<ServiceWorkerRouterRule>&`) to avoid unnecessary copies when notifying multiple observers. The previous `router_rules` parameter was passed by `const &`.

      If you update this, remember to also update the overrides in `ServiceWorkerContextWatcher` and `ServiceWorkerInternalsUI`.

      Takashi Nakayama

      Changed to use a new `ServiceWorkerVersion::RouterRulesForDevTools` struct and pass its const reference. PTAL

      File content/browser/service_worker/service_worker_version.cc
      Line 477, Patchset 3: // Router rules that have nested conditinos are currently unsupported. Use
      Shunya Shishido . resolved

      Typo: "conditinos" -> "conditions".

      Takashi Nakayama

      Done

      File content/common/service_worker/service_worker_router_evaluator.h
      Line 85, Patchset 3: std::vector<ServiceWorkerRouterRule> PrepareRouterRules() const;
      Shunya Shishido . resolved

      The name "PrepareRouterRules" is a bit generic and not clear what the function will do. Consider a name that matches the destination or the transformation, such as `GetTypedRouterRules()` (matching the CDP field) or `GetRouterRulesForDevTools()`.

      Yoshisato Yanagisawa

      +1
      I failed to catch what would be returned from `PreapreRouterRules()`,

      Takashi Nakayama

      Thanks for the suggestion. Renamed to `CalculateRouterRulesForDevTools()`.

      Line 44, Patchset 3: std::string source;
      Yoshisato Yanagisawa . resolved

      Ah, is source so simple?
      I thought the source would be represented with union.

      Takashi Nakayama

      Changed to use `blink::ServiceWorkerRouterSource` according to the PDL change.

      File third_party/blink/public/devtools_protocol/domains/ServiceWorker.pdl
      Line 51, Patchset 3: # Plain text or JSON serialization of `RouterSourceDict` in the spec
      Yoshisato Yanagisawa . unresolved

      RouterSourceEnum will be a plain text?

      Takashi Nakayama

      Added new types to RouterSource in the spec and changed to use it. PTAL

      Line 55, Patchset 3: number id
      Alex Rudenko . resolved

      nit: Since rule IDs are typically whole numbers, consider using `integer id` instead of `number` in the DevTools protocol.

      Takashi Nakayama

      Done

      Line 73, Patchset 3: # `routerRules` or `typedRouterRules`.
      Alex Rudenko . unresolved

      do we plan to rename typedRouterRules back to routerRules?

      Takashi Nakayama

      No. I'm not sure about the backward compatibility policy of DevTools, but dsv@ suggested keeping the payload of `routerRule` for the backward compatibility. DevTools will keep the support of the legacy `routerRules` field while the browser is planned to send only `typedRouterRules` afterwards (IIUC).

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Alex Rudenko
      • Shunya Shishido
      • Yoshisato Yanagisawa
      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: I7348430f7cb336bec12c3f8859d12380e1787b9c
        Gerrit-Change-Number: 8182989
        Gerrit-PatchSet: 4
        Gerrit-Owner: Takashi Nakayama <tn...@chromium.org>
        Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
        Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
        Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
        Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
        Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
        Gerrit-CC: Keita Suzuki <suzuk...@chromium.org>
        Gerrit-Attention: Shunya Shishido <sisid...@chromium.org>
        Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
        Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
        Gerrit-Comment-Date: Tue, 04 Aug 2026 10:24:34 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        Comment-In-Reply-To: Shunya Shishido <sisid...@chromium.org>
        Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
        Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Alex Rudenko (Gerrit)

        unread,
        Aug 4, 2026, 8:34:44 AMAug 4
        to Takashi Nakayama, Yoshisato Yanagisawa, Shunya Shishido, Keita Suzuki, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
        Attention needed from Shunya Shishido, Takashi Nakayama and Yoshisato Yanagisawa

        Alex Rudenko added 1 comment

        File third_party/blink/public/devtools_protocol/domains/ServiceWorker.pdl
        Line 73, Patchset 3: # `routerRules` or `typedRouterRules`.
        Alex Rudenko . unresolved

        do we plan to rename typedRouterRules back to routerRules?

        Takashi Nakayama

        No. I'm not sure about the backward compatibility policy of DevTools, but dsv@ suggested keeping the payload of `routerRule` for the backward compatibility. DevTools will keep the support of the legacy `routerRules` field while the browser is planned to send only `typedRouterRules` afterwards (IIUC).

        Alex Rudenko

        This is an experimental domain. Perhaps we could just replace routerRules with the new content and address the issues during the roll? wdyt @d...@chromium.org?

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Shunya Shishido
        • Takashi Nakayama
        • Yoshisato Yanagisawa
        Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
        Gerrit-Attention: Shunya Shishido <sisid...@chromium.org>
        Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
        Gerrit-Comment-Date: Tue, 04 Aug 2026 12:34:28 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        Comment-In-Reply-To: Takashi Nakayama <tn...@chromium.org>
        Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Alex Rudenko (Gerrit)

        unread,
        Aug 4, 2026, 8:36:34 AMAug 4
        to Takashi Nakayama, Yoshisato Yanagisawa, Shunya Shishido, Keita Suzuki, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
        Attention needed from Shunya Shishido, Takashi Nakayama and Yoshisato Yanagisawa

        Alex Rudenko added 1 comment

        Patchset-level comments
        Alex Rudenko . unresolved

        Please add inspector-protocol tests covering the new type output (ideally for various possible outputs).

        Takashi Nakayama

        Could we add them together with the implementation of `ServiceWorkerRouterEvaluator::CalculateRouterRulesForDevTools()` in `content/common/service_worker/service_worker_router_evaluator.cc`?

        Alex Rudenko

        Which CL is that? is it already chained to this CL? I would prefer adding tests in the same CL to make sure everything works as expected.

        Gerrit-Comment-Date: Tue, 04 Aug 2026 12:36:16 +0000
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Shunya Shishido (Gerrit)

        unread,
        Aug 4, 2026, 8:34:00 PMAug 4
        to Takashi Nakayama, Yoshisato Yanagisawa, Keita Suzuki, Alex Rudenko, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
        Attention needed from Takashi Nakayama and Yoshisato Yanagisawa

        Shunya Shishido voted and added 1 comment

        Votes added by Shunya Shishido

        Code-Review+1

        1 comment

        File content/browser/service_worker/service_worker_context_core.cc
        Line 1340, Patchset 3: std::optional<std::string> legacy_router_rules;
        Shunya Shishido . resolved

        This block is duplicated between `ServiceWorkerVersion::GetInfo()` and `ServiceWorkerContextCore::OnVersionStateChanged()`.

        Can we consider adding a helper method on `ServiceWorkerVersion` (e.g., `GetRouterRulesForDevTools()`), or `ServiceWorkerRouterEvaluator()`?

        Takashi Nakayama

        Added `ServiceWorkerVersion::CalculateRouterRulesForDevTools()`. PTAL

        Shunya Shishido

        Acknowledged

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Takashi Nakayama
        • Yoshisato Yanagisawa
        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: I7348430f7cb336bec12c3f8859d12380e1787b9c
          Gerrit-Change-Number: 8182989
          Gerrit-PatchSet: 4
          Gerrit-Owner: Takashi Nakayama <tn...@chromium.org>
          Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
          Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
          Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
          Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
          Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
          Gerrit-CC: Keita Suzuki <suzuk...@chromium.org>
          Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
          Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
          Gerrit-Comment-Date: Wed, 05 Aug 2026 00:33:20 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: Yes
          Comment-In-Reply-To: Takashi Nakayama <tn...@chromium.org>
          Comment-In-Reply-To: Shunya Shishido <sisid...@chromium.org>
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Takashi Nakayama (Gerrit)

          unread,
          Aug 5, 2026, 2:08:23 AMAug 5
          to Shunya Shishido, Yoshisato Yanagisawa, Keita Suzuki, Alex Rudenko, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
          Attention needed from Alex Rudenko and Yoshisato Yanagisawa

          Takashi Nakayama added 2 comments

          Patchset-level comments
          Alex Rudenko . unresolved

          Please add inspector-protocol tests covering the new type output (ideally for various possible outputs).

          Takashi Nakayama

          Could we add them together with the implementation of `ServiceWorkerRouterEvaluator::CalculateRouterRulesForDevTools()` in `content/common/service_worker/service_worker_router_evaluator.cc`?

          Alex Rudenko

          Which CL is that? is it already chained to this CL? I would prefer adding tests in the same CL to make sure everything works as expected.

          Takashi Nakayama

          The CL hasn't been present yet. Since I would like to delegate the task to another person, let me split the CL into the two: one for the browser's internal changes and the other for the parts that need CDP changes.

          File content/browser/service_worker/service_worker_context_core_observer.h
          Line 61, Patchset 3: std::optional<std::string> router_rules,
          Alex Rudenko . resolved

          Consider passing these by `const &` (e.g., `const std::optional<std::string>&` and `const std::vector<ServiceWorkerRouterRule>&`) to avoid unnecessary copies when notifying multiple observers. The previous `router_rules` parameter was passed by `const &`.

          If you update this, remember to also update the overrides in `ServiceWorkerContextWatcher` and `ServiceWorkerInternalsUI`.

          Takashi Nakayama

          Changed to use a new `ServiceWorkerVersion::RouterRulesForDevTools` struct and pass its const reference. PTAL

          Takashi Nakayama

          Done

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Alex Rudenko
          • Yoshisato Yanagisawa
          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: I7348430f7cb336bec12c3f8859d12380e1787b9c
          Gerrit-Change-Number: 8182989
          Gerrit-PatchSet: 6
          Gerrit-Owner: Takashi Nakayama <tn...@chromium.org>
          Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
          Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
          Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
          Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
          Gerrit-CC: Hiroki Nakagawa <nhi...@chromium.org>
          Gerrit-CC: Keita Suzuki <suzuk...@chromium.org>
          Gerrit-Attention: Alex Rudenko <alexr...@chromium.org>
          Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
          Gerrit-Comment-Date: Wed, 05 Aug 2026 06:07:49 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: No
          Comment-In-Reply-To: Takashi Nakayama <tn...@chromium.org>
          Comment-In-Reply-To: Alex Rudenko <alexr...@chromium.org>
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Takashi Nakayama (Gerrit)

          unread,
          Aug 5, 2026, 2:12:00 AMAug 5
          to Shunya Shishido, Yoshisato Yanagisawa, Keita Suzuki, Alex Rudenko, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
          Attention needed from Alex Rudenko and Yoshisato Yanagisawa

          Takashi Nakayama added 1 comment

          Patchset-level comments
          Alex Rudenko . unresolved

          Please add inspector-protocol tests covering the new type output (ideally for various possible outputs).

          Takashi Nakayama

          Could we add them together with the implementation of `ServiceWorkerRouterEvaluator::CalculateRouterRulesForDevTools()` in `content/common/service_worker/service_worker_router_evaluator.cc`?

          Alex Rudenko

          Which CL is that? is it already chained to this CL? I would prefer adding tests in the same CL to make sure everything works as expected.

          Takashi Nakayama

          The CL hasn't been present yet. Since I would like to delegate the task to another person, let me split the CL into the two: one for the browser's internal changes and the other for the parts that need CDP changes.

          Takashi Nakayama

          I mean, the upcoming CL for the type converter implementation and new inspector-protocol tests will be chained to this CL, and we will submit the upcoming CL and this CL (CDP changes) together.

          Gerrit-Comment-Date: Wed, 05 Aug 2026 06:11:24 +0000
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Alex Rudenko (Gerrit)

          unread,
          Aug 5, 2026, 4:42:50 AMAug 5
          to Takashi Nakayama, Shunya Shishido, Yoshisato Yanagisawa, Keita Suzuki, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
          Attention needed from Takashi Nakayama and Yoshisato Yanagisawa

          Alex Rudenko added 1 comment

          Patchset-level comments
          Alex Rudenko . unresolved

          Please add inspector-protocol tests covering the new type output (ideally for various possible outputs).

          Takashi Nakayama

          Could we add them together with the implementation of `ServiceWorkerRouterEvaluator::CalculateRouterRulesForDevTools()` in `content/common/service_worker/service_worker_router_evaluator.cc`?

          Alex Rudenko

          Which CL is that? is it already chained to this CL? I would prefer adding tests in the same CL to make sure everything works as expected.

          Takashi Nakayama

          The CL hasn't been present yet. Since I would like to delegate the task to another person, let me split the CL into the two: one for the browser's internal changes and the other for the parts that need CDP changes.

          Takashi Nakayama

          I mean, the upcoming CL for the type converter implementation and new inspector-protocol tests will be chained to this CL, and we will submit the upcoming CL and this CL (CDP changes) together.

          Alex Rudenko

          I'd prefer to add required tests in this CL so that the protocol change and the tests can be reviewed together. Please ask me to review once you have a CL with tests ready.

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Takashi Nakayama
          • Yoshisato Yanagisawa
          Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
          Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
          Gerrit-Comment-Date: Wed, 05 Aug 2026 08:42:28 +0000
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Yoshisato Yanagisawa (Gerrit)

          unread,
          Aug 9, 2026, 9:34:30 PM (10 days ago) Aug 9
          to Takashi Nakayama, Shunya Shishido, Keita Suzuki, Alex Rudenko, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org
          Attention needed from Takashi Nakayama

          Yoshisato Yanagisawa voted and added 2 comments

          Votes added by Yoshisato Yanagisawa

          Code-Review+1

          2 comments

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

          lgtm. thank you.

          File third_party/blink/public/devtools_protocol/domains/ServiceWorker.pdl
          Line 51, Patchset 3: # Plain text or JSON serialization of `RouterSourceDict` in the spec
          Yoshisato Yanagisawa . resolved

          RouterSourceEnum will be a plain text?

          Takashi Nakayama

          Added new types to RouterSource in the spec and changed to use it. PTAL

          Yoshisato Yanagisawa

          Acknowledged

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Takashi Nakayama
          Gerrit-Comment-Date: Mon, 10 Aug 2026 01:33:50 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: Yes
          Comment-In-Reply-To: Takashi Nakayama <tn...@chromium.org>
          Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Sora Kobayashi (Gerrit)

          unread,
          Aug 17, 2026, 12:39:48 AM (2 days ago) Aug 17
          to Keita Suzuki, Takashi Nakayama, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
          Attention needed from Keita Suzuki and Takashi Nakayama

          Sora Kobayashi voted Commit-Queue+1

          Commit-Queue+1
          Open in Gerrit

          Related details

          Attention is currently required from:
          • Keita Suzuki
          • Takashi Nakayama
          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: I9288d13def8f28f01a015a61a38d68e44dd47cec
            Gerrit-Change-Number: 8257194
            Gerrit-PatchSet: 2
            Gerrit-Owner: Sora Kobayashi <otu...@google.com>
            Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
            Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
            Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
            Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
            Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
            Gerrit-Comment-Date: Mon, 17 Aug 2026 04:39:09 +0000
            Gerrit-HasComments: No
            Gerrit-Has-Labels: Yes
            satisfied_requirement
            unsatisfied_requirement
            open
            diffy

            Takashi Nakayama (Gerrit)

            unread,
            Aug 17, 2026, 12:49:00 AM (2 days ago) Aug 17
            to Sora Kobayashi, Keita Suzuki, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
            Attention needed from Keita Suzuki and Sora Kobayashi

            Takashi Nakayama voted and added 5 comments

            Votes added by Takashi Nakayama

            Code-Review+1

            5 comments

            Commit Message
            Line 20, Patchset 2 (Latest):This test-only CL adds inspector-protocol tests for the new fields.
            Takashi Nakayama . unresolved

            This CL is not test-only. How about this?
            ```suggestion
            This CL also adds inspector-protocol tests for the new fields.
            ```

            Line 21, Patchset 2 (Latest):Note: This is separated from the main implementation CL
            (crrev.com/c/8182989) due to permission issues when uploading the test
            patchset.
            Takashi Nakayama . unresolved

            Let me draft the message to avoid any misunderstandings.

            ```suggestion
            Note: The non-test parts of this CL are directly taken from crrev.com/c/8182989 instead of creating chained CLs. This is due to internal permission errors and approved by the original author (tn...@chromium.org).
            ```

            File third_party/blink/web_tests/VirtualTestSuites
            Line 5109, Patchset 2 (Latest): "prefix": "static-routing-api",
            Takashi Nakayama . unresolved

            How about `static-routing-api-devtools-improvement`?

            File third_party/blink/web_tests/http/tests/inspector-protocol/service-worker/tentative/static-router/receive-typed-router-rules-on-update.js
            Line 5, Patchset 2 (Latest): async function waitForServiceWorkerInstalled() {
            Takashi Nakayama . unresolved

            nit: I'd prefer `InstalledEvent` or `Installation`.

            Line 16, Patchset 2 (Latest): const versionsPromise = waitForServiceWorkerInstalled();
            Takashi Nakayama . unresolved

            ditto

            Open in Gerrit

            Related details

            Attention is currently required from:
            • Keita Suzuki
            • Sora Kobayashi
            Submit Requirements:
              • requirement satisfiedCode-Coverage
              • requirement is not satisfiedCode-Owners
              • requirement is not 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: I9288d13def8f28f01a015a61a38d68e44dd47cec
              Gerrit-Change-Number: 8257194
              Gerrit-PatchSet: 2
              Gerrit-Owner: Sora Kobayashi <otu...@google.com>
              Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
              Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
              Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
              Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
              Gerrit-Attention: Sora Kobayashi <otu...@google.com>
              Gerrit-Comment-Date: Mon, 17 Aug 2026 04:48:35 +0000
              Gerrit-HasComments: Yes
              Gerrit-Has-Labels: Yes
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Keita Suzuki (Gerrit)

              unread,
              Aug 17, 2026, 12:49:20 AM (2 days ago) Aug 17
              to Sora Kobayashi, Takashi Nakayama, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
              Attention needed from Sora Kobayashi

              Keita Suzuki added 1 comment

              File third_party/blink/web_tests/http/tests/inspector-protocol/service-worker/tentative/static-router/receive-typed-router-rules-on-update.js
              Line 21, Patchset 2 (Latest): testRunner.log(versions[0].typedRouterRules);
              Keita Suzuki . unresolved

              Could we add comments on what we are actually logging here?
              Same applies for the IDs.

              Open in Gerrit

              Related details

              Attention is currently required from:
              • Sora Kobayashi
              Submit Requirements:
              • requirement satisfiedCode-Coverage
              • requirement is not satisfiedCode-Owners
              • requirement is not 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: I9288d13def8f28f01a015a61a38d68e44dd47cec
              Gerrit-Change-Number: 8257194
              Gerrit-PatchSet: 2
              Gerrit-Owner: Sora Kobayashi <otu...@google.com>
              Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
              Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
              Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
              Gerrit-Attention: Sora Kobayashi <otu...@google.com>
              Gerrit-Comment-Date: Mon, 17 Aug 2026 04:48:55 +0000
              Gerrit-HasComments: Yes
              Gerrit-Has-Labels: No
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Keita Suzuki (Gerrit)

              unread,
              Aug 17, 2026, 12:53:06 AM (2 days ago) Aug 17
              to Sora Kobayashi, Takashi Nakayama, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
              Attention needed from Sora Kobayashi

              Keita Suzuki added 1 comment

              Commit Message
              Line 21, Patchset 3 (Latest):Note: The non-test parts of this CL are directly taken from crrev.com/c/8182989 instead of creating chained CLs. This is due to internal permission errors and approved by the original author (tn...@chromium.org).
              Keita Suzuki . unresolved

              please add an empty line after this (and also please format).

              Open in Gerrit

              Related details

              Attention is currently required from:
              • Sora Kobayashi
              Submit Requirements:
              • requirement satisfiedCode-Coverage
              • requirement is not satisfiedCode-Owners
              • requirement is not 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: I9288d13def8f28f01a015a61a38d68e44dd47cec
              Gerrit-Change-Number: 8257194
              Gerrit-PatchSet: 3
              Gerrit-Owner: Sora Kobayashi <otu...@google.com>
              Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
              Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
              Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
              Gerrit-Attention: Sora Kobayashi <otu...@google.com>
              Gerrit-Comment-Date: Mon, 17 Aug 2026 04:52:39 +0000
              Gerrit-HasComments: Yes
              Gerrit-Has-Labels: No
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Takashi Nakayama (Gerrit)

              unread,
              Aug 17, 2026, 1:30:34 AM (2 days ago) Aug 17
              to Yoshisato Yanagisawa, Shunya Shishido, Keita Suzuki, Alex Rudenko, chromium...@chromium.org, devtools...@chromium.org, Hiroki Nakagawa, Chromium LUCI CQ, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, horo+...@chromium.org, kinuko+ser...@chromium.org, kinuko...@chromium.org, servicewor...@chromium.org, shimazu+se...@chromium.org

              Takashi Nakayama abandoned this change.

              View Change

              Abandoned

              Takashi Nakayama abandoned this change

              Related details

              Attention set is empty
              Submit Requirements:
              • requirement satisfiedCode-Coverage
              • 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: abandon
              Gerrit-Project: chromium/src
              Gerrit-Branch: main
              Gerrit-Change-Id: I7348430f7cb336bec12c3f8859d12380e1787b9c
              Gerrit-Change-Number: 8182989
              Gerrit-PatchSet: 9
              Gerrit-Owner: Takashi Nakayama <tn...@chromium.org>
              Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
              Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
              Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
              Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Sora Kobayashi (Gerrit)

              unread,
              Aug 17, 2026, 3:56:01 AM (2 days ago) Aug 17
              to Takashi Nakayama, Keita Suzuki, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
              Attention needed from Keita Suzuki and Takashi Nakayama

              Sora Kobayashi added 7 comments

              Commit Message
              Line 20, Patchset 2:This test-only CL adds inspector-protocol tests for the new fields.
              Takashi Nakayama . resolved

              This CL is not test-only. How about this?
              ```suggestion
              This CL also adds inspector-protocol tests for the new fields.
              ```

              Sora Kobayashi

              Done

              Line 21, Patchset 3:Note: The non-test parts of this CL are directly taken from crrev.com/c/8182989 instead of creating chained CLs. This is due to internal permission errors and approved by the original author (tn...@chromium.org).
              Keita Suzuki . resolved

              please add an empty line after this (and also please format).

              Sora Kobayashi

              Done

              Line 21, Patchset 2:Note: This is separated from the main implementation CL

              (crrev.com/c/8182989) due to permission issues when uploading the test
              patchset.
              Takashi Nakayama . resolved

              Let me draft the message to avoid any misunderstandings.

              ```suggestion


              Note: The non-test parts of this CL are directly taken from crrev.com/c/8182989 instead of creating chained CLs. This is due to internal permission errors and approved by the original author (tn...@chromium.org).

              ```

              Sora Kobayashi

              Done

              File third_party/blink/web_tests/VirtualTestSuites
              Line 5109, Patchset 2: "prefix": "static-routing-api",
              Takashi Nakayama . resolved

              How about `static-routing-api-devtools-improvement`?

              Sora Kobayashi

              Done

              File third_party/blink/web_tests/http/tests/inspector-protocol/service-worker/tentative/static-router/receive-typed-router-rules-on-update.js
              Line 5, Patchset 2: async function waitForServiceWorkerInstalled() {
              Takashi Nakayama . resolved

              nit: I'd prefer `InstalledEvent` or `Installation`.

              Sora Kobayashi

              Done

              Line 16, Patchset 2: const versionsPromise = waitForServiceWorkerInstalled();
              Takashi Nakayama . resolved

              ditto

              Sora Kobayashi

              Done

              Line 21, Patchset 2: testRunner.log(versions[0].typedRouterRules);
              Keita Suzuki . unresolved

              Could we add comments on what we are actually logging here?
              Same applies for the IDs.

              Sora Kobayashi

              Done. Added comments explaining the log output.

              Open in Gerrit

              Related details

              Attention is currently required from:
              • Keita Suzuki
              • Takashi Nakayama
              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: I9288d13def8f28f01a015a61a38d68e44dd47cec
              Gerrit-Change-Number: 8257194
              Gerrit-PatchSet: 5
              Gerrit-Owner: Sora Kobayashi <otu...@google.com>
              Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
              Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
              Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
              Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
              Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
              Gerrit-Comment-Date: Mon, 17 Aug 2026 07:55:32 +0000
              Gerrit-HasComments: Yes
              Gerrit-Has-Labels: No
              Comment-In-Reply-To: Takashi Nakayama <tn...@chromium.org>
              Comment-In-Reply-To: Keita Suzuki <suzuk...@chromium.org>
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Takashi Nakayama (Gerrit)

              unread,
              Aug 17, 2026, 5:03:09 AM (2 days ago) Aug 17
              to Sora Kobayashi, Keita Suzuki, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
              Attention needed from Keita Suzuki and Sora Kobayashi

              Takashi Nakayama voted and added 3 comments

              Votes added by Takashi Nakayama

              Code-Review+1

              3 comments

              Patchset-level comments
              File-level comment, Patchset 5 (Latest):
              Takashi Nakayama . resolved

              %testcode LGTM w/ nit.
              Since the non-test code was written by myself, please make sure to ask other commiters for reviews.

              File third_party/blink/web_tests/http/tests/inspector-protocol/service-worker/tentative/static-router/receive-typed-router-rules-on-update.js
              Line 5, Patchset 2: async function waitForServiceWorkerInstalled() {
              Takashi Nakayama . unresolved

              nit: I'd prefer `InstalledEvent` or `Installation`.

              Sora Kobayashi

              Done

              Takashi Nakayama

              nit: let me reopen this comment because it's not done yet.

              Line 16, Patchset 2: const versionsPromise = waitForServiceWorkerInstalled();
              Takashi Nakayama . unresolved

              ditto

              Sora Kobayashi

              Done

              Takashi Nakayama

              ditto

              Open in Gerrit

              Related details

              Attention is currently required from:
              • Keita Suzuki
              • Sora Kobayashi
              Submit Requirements:
                • requirement satisfiedCode-Coverage
                • requirement is not satisfiedCode-Owners
                • requirement is not 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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                Gerrit-Change-Number: 8257194
                Gerrit-PatchSet: 5
                Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
                Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                Gerrit-Comment-Date: Mon, 17 Aug 2026 09:02:47 +0000
                Gerrit-HasComments: Yes
                Gerrit-Has-Labels: Yes
                Comment-In-Reply-To: Takashi Nakayama <tn...@chromium.org>
                Comment-In-Reply-To: Sora Kobayashi <otu...@google.com>
                satisfied_requirement
                unsatisfied_requirement
                open
                diffy

                Keita Suzuki (Gerrit)

                unread,
                Aug 17, 2026, 8:30:42 PM (2 days ago) Aug 17
                to Sora Kobayashi, Takashi Nakayama, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                Attention needed from Sora Kobayashi

                Keita Suzuki voted and added 2 comments

                Votes added by Keita Suzuki

                Code-Review+1

                2 comments

                Patchset-level comments
                Keita Suzuki . resolved

                LGTM from myside

                File third_party/blink/web_tests/http/tests/inspector-protocol/service-worker/tentative/static-router/receive-typed-router-rules-on-update.js
                Line 21, Patchset 2: testRunner.log(versions[0].typedRouterRules);
                Keita Suzuki . resolved

                Could we add comments on what we are actually logging here?
                Same applies for the IDs.

                Sora Kobayashi

                Done. Added comments explaining the log output.

                Keita Suzuki

                Thanks!

                Open in Gerrit

                Related details

                Attention is currently required from:
                • Sora Kobayashi
                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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                  Gerrit-Change-Number: 8257194
                  Gerrit-PatchSet: 5
                  Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                  Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                  Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                  Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                  Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                  Gerrit-Comment-Date: Tue, 18 Aug 2026 00:30:09 +0000
                  Gerrit-HasComments: Yes
                  Gerrit-Has-Labels: Yes
                  Comment-In-Reply-To: Keita Suzuki <suzuk...@chromium.org>
                  Comment-In-Reply-To: Sora Kobayashi <otu...@google.com>
                  satisfied_requirement
                  unsatisfied_requirement
                  open
                  diffy

                  Sora Kobayashi (Gerrit)

                  unread,
                  Aug 17, 2026, 8:39:28 PM (2 days ago) Aug 17
                  to Shunya Shishido, Yoshisato Yanagisawa, Keita Suzuki, Takashi Nakayama, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                  Attention needed from Keita Suzuki, Shunya Shishido, Takashi Nakayama and Yoshisato Yanagisawa

                  Sora Kobayashi added 2 comments

                  File third_party/blink/web_tests/http/tests/inspector-protocol/service-worker/tentative/static-router/receive-typed-router-rules-on-update.js
                  Line 5, Patchset 2: async function waitForServiceWorkerInstalled() {
                  Takashi Nakayama . resolved

                  nit: I'd prefer `InstalledEvent` or `Installation`.

                  Sora Kobayashi

                  Done

                  Takashi Nakayama

                  nit: let me reopen this comment because it's not done yet.

                  Sora Kobayashi

                  Done

                  Line 16, Patchset 2: const versionsPromise = waitForServiceWorkerInstalled();
                  Takashi Nakayama . resolved

                  ditto

                  Sora Kobayashi

                  Done

                  Takashi Nakayama

                  ditto

                  Sora Kobayashi

                  Done

                  Open in Gerrit

                  Related details

                  Attention is currently required from:
                  • Keita Suzuki
                  • Shunya Shishido
                  • Takashi Nakayama
                  • Yoshisato Yanagisawa
                    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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                      Gerrit-Change-Number: 8257194
                      Gerrit-PatchSet: 6
                      Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                      Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                      Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                      Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                      Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                      Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                      Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
                      Gerrit-Attention: Shunya Shishido <sisid...@chromium.org>
                      Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
                      Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
                      Gerrit-Comment-Date: Tue, 18 Aug 2026 00:39:03 +0000
                      Gerrit-HasComments: Yes
                      Gerrit-Has-Labels: No
                      satisfied_requirement
                      unsatisfied_requirement
                      open
                      diffy

                      Keita Suzuki (Gerrit)

                      unread,
                      Aug 17, 2026, 8:49:41 PM (2 days ago) Aug 17
                      to Sora Kobayashi, Shunya Shishido, Yoshisato Yanagisawa, Takashi Nakayama, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                      Attention needed from Shunya Shishido, Sora Kobayashi, Takashi Nakayama and Yoshisato Yanagisawa

                      Keita Suzuki voted and added 1 comment

                      Votes added by Keita Suzuki

                      Code-Review+1

                      1 comment

                      Patchset-level comments
                      File-level comment, Patchset 6 (Latest):
                      Keita Suzuki . resolved

                      Still LGTM. Thanks!

                      Open in Gerrit

                      Related details

                      Attention is currently required from:
                      • Shunya Shishido
                      • Sora Kobayashi
                      • Takashi Nakayama
                      • Yoshisato Yanagisawa
                      Submit Requirements:
                        • requirement satisfiedCode-Coverage
                        • requirement is not satisfiedCode-Owners
                        • requirement is not 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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                        Gerrit-Change-Number: 8257194
                        Gerrit-PatchSet: 6
                        Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                        Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                        Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                        Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                        Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                        Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                        Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
                        Gerrit-Attention: Shunya Shishido <sisid...@chromium.org>
                        Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                        Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
                        Gerrit-Comment-Date: Tue, 18 Aug 2026 00:49:11 +0000
                        Gerrit-HasComments: Yes
                        Gerrit-Has-Labels: Yes
                        satisfied_requirement
                        unsatisfied_requirement
                        open
                        diffy

                        Takashi Nakayama (Gerrit)

                        unread,
                        Aug 17, 2026, 9:03:16 PM (2 days ago) Aug 17
                        to Sora Kobayashi, Keita Suzuki, Shunya Shishido, Yoshisato Yanagisawa, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                        Attention needed from Shunya Shishido, Sora Kobayashi and Yoshisato Yanagisawa

                        Takashi Nakayama voted Code-Review+1

                        Code-Review+1
                        Open in Gerrit

                        Related details

                        Attention is currently required from:
                        • Shunya Shishido
                        • Sora Kobayashi
                        • Yoshisato Yanagisawa
                        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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                          Gerrit-Change-Number: 8257194
                          Gerrit-PatchSet: 6
                          Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                          Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                          Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                          Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                          Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                          Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                          Gerrit-Attention: Shunya Shishido <sisid...@chromium.org>
                          Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                          Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
                          Gerrit-Comment-Date: Tue, 18 Aug 2026 01:02:51 +0000
                          Gerrit-HasComments: No
                          Gerrit-Has-Labels: Yes
                          satisfied_requirement
                          unsatisfied_requirement
                          open
                          diffy

                          Shunya Shishido (Gerrit)

                          unread,
                          Aug 18, 2026, 1:02:07 AM (yesterday) Aug 18
                          to Sora Kobayashi, Takashi Nakayama, Keita Suzuki, Yoshisato Yanagisawa, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                          Attention needed from Sora Kobayashi and Yoshisato Yanagisawa

                          Shunya Shishido added 3 comments

                          File content/browser/devtools/protocol/service_worker_handler.cc
                          Line 85, Patchset 6 (Latest):ConvertRouterSource(const blink::ServiceWorkerRouterSource& source) {
                          Shunya Shishido . unresolved

                          Non-blocking but can we have more tests? Especially for:

                          • RaceNetworkAndFetchEvent source
                          • Cache source with the cache name
                          • Cache source only
                          Line 125, Patchset 6 (Latest): NOTREACHED();
                          Shunya Shishido . unresolved

                          Can we just have `NOTREACHED()` to kRaceNetworkAndCache case instead of relying on fall through? Running through `NOTIMPLEMENTED()` then `NOTREACHED()` seems a bit strange.

                          File third_party/blink/public/devtools_protocol/domains/ServiceWorker.pdl
                          Line 63, Patchset 6 (Latest): type ServiceWorkerRouterSource extends object
                          Shunya Shishido . unresolved

                          RouterSource is `RouterSouceDict` OR `RouterSourceEnum`.
                          https://www.w3.org/TR/service-workers/#typedefdef-routersource

                          OTOH this CL makes `ServiceWorkerRouterSourceType` which supports "sourceDict" and optional `ServiceWorkerRouterSourceDict`.

                          Is this intended due to the restriction by PDL or something? If so please leave comment why we choose this interface which is not same as the spec?

                          Open in Gerrit

                          Related details

                          Attention is currently required from:
                          • Sora Kobayashi
                          • Yoshisato Yanagisawa
                          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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                            Gerrit-Change-Number: 8257194
                            Gerrit-PatchSet: 6
                            Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                            Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                            Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                            Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                            Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                            Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                            Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                            Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
                            Gerrit-Comment-Date: Tue, 18 Aug 2026 05:01:38 +0000
                            Gerrit-HasComments: Yes
                            Gerrit-Has-Labels: No
                            satisfied_requirement
                            unsatisfied_requirement
                            open
                            diffy

                            Takashi Nakayama (Gerrit)

                            unread,
                            Aug 18, 2026, 1:14:11 AM (yesterday) Aug 18
                            to Sora Kobayashi, Keita Suzuki, Shunya Shishido, Yoshisato Yanagisawa, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                            Attention needed from Sora Kobayashi and Yoshisato Yanagisawa

                            Takashi Nakayama added 2 comments

                            File content/browser/devtools/protocol/service_worker_handler.cc
                            Shunya Shishido . unresolved

                            Can we just have `NOTREACHED()` to kRaceNetworkAndCache case instead of relying on fall through? Running through `NOTIMPLEMENTED()` then `NOTREACHED()` seems a bit strange.

                            Takashi Nakayama

                            It is possible that invalid inputs slip through all cases of switch. Though [the style guide](https://google.github.io/styleguide/cppguide.html#Switch_Statements) recommends preparing `default:` statement, this `NOTREACHED()` behaves identically.

                            File third_party/blink/public/devtools_protocol/domains/ServiceWorker.pdl
                            Line 63, Patchset 6 (Latest): type ServiceWorkerRouterSource extends object
                            Shunya Shishido . unresolved

                            RouterSource is `RouterSouceDict` OR `RouterSourceEnum`.
                            https://www.w3.org/TR/service-workers/#typedefdef-routersource

                            OTOH this CL makes `ServiceWorkerRouterSourceType` which supports "sourceDict" and optional `ServiceWorkerRouterSourceDict`.

                            Is this intended due to the restriction by PDL or something? If so please leave comment why we choose this interface which is not same as the spec?

                            Takashi Nakayama
                            This is due to the restriction by PDL. @otu...@google.com Could you add comment like this?
                            ```suggestion
                            # Corresponds to `RouterSource` in the spec while the representation is different as follows.
                            # (https://www.w3.org/TR/service-workers/#typedefdef-routersource)
                            # - `RouterSourceEnum`: `type` equals `cache`, `sourceDict` is null.
                            # - `RouterSourceDict`: `type` equals `sourceDict`, `sourceDict` has valid value.
                            type ServiceWorkerRouterSource extends object
                            ```
                            Gerrit-Comment-Date: Tue, 18 Aug 2026 05:13:38 +0000
                            Gerrit-HasComments: Yes
                            Gerrit-Has-Labels: No
                            Comment-In-Reply-To: Shunya Shishido <sisid...@chromium.org>
                            satisfied_requirement
                            unsatisfied_requirement
                            open
                            diffy

                            Yoshisato Yanagisawa (Gerrit)

                            unread,
                            Aug 18, 2026, 1:51:46 AM (yesterday) Aug 18
                            to Sora Kobayashi, Takashi Nakayama, Keita Suzuki, Shunya Shishido, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                            Attention needed from Sora Kobayashi

                            Yoshisato Yanagisawa voted and added 4 comments

                            Votes added by Yoshisato Yanagisawa

                            Code-Review+1

                            4 comments

                            Patchset-level comments
                            Yoshisato Yanagisawa . resolved

                            lgtm w/ comments.

                            File content/browser/devtools/protocol/service_worker_handler.cc
                            Shunya Shishido . unresolved

                            Can we just have `NOTREACHED()` to kRaceNetworkAndCache case instead of relying on fall through? Running through `NOTIMPLEMENTED()` then `NOTREACHED()` seems a bit strange.

                            Takashi Nakayama

                            It is possible that invalid inputs slip through all cases of switch. Though [the style guide](https://google.github.io/styleguide/cppguide.html#Switch_Statements) recommends preparing `default:` statement, this `NOTREACHED()` behaves identically.

                            Yoshisato Yanagisawa

                            I think it is good to be left as-is.The RaceNetworkAndCache case is just not implemented case, and it is not strange the code would eventually be executed. However, this NOTREACHED() must not happen, or the compiler is broken.

                            Line 134, Patchset 6 (Latest): CHECK(!or_condition.has_value() && !not_condition.has_value())
                            << "nested conditions are not yet supported.";
                            Yoshisato Yanagisawa . unresolved

                            It might be good to leave TODO?
                            Both should be used in practice, and I believe having them are unavoidable to productinize this feature.

                            Line 519, Patchset 6 (Latest): CHECK(!version.router_rules);
                            Yoshisato Yanagisawa . unresolved

                            I failed to catch the meaning of this `CHECK`. It looks trivial upon L516, and I assume having `router_rules` can be used as a switch to go with the legacy implementation or the new implementation, but will the code after this may break if `version.router_rules` exist?

                            Open in Gerrit

                            Related details

                            Attention is currently required from:
                            • Sora Kobayashi
                            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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                            Gerrit-Change-Number: 8257194
                            Gerrit-PatchSet: 6
                            Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                            Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                            Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                            Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                            Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                            Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                            Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                            Gerrit-Comment-Date: Tue, 18 Aug 2026 05:51:15 +0000
                            Gerrit-HasComments: Yes
                            Gerrit-Has-Labels: Yes
                            Comment-In-Reply-To: Takashi Nakayama <tn...@chromium.org>
                            Comment-In-Reply-To: Shunya Shishido <sisid...@chromium.org>
                            satisfied_requirement
                            unsatisfied_requirement
                            open
                            diffy

                            Shunya Shishido (Gerrit)

                            unread,
                            Aug 18, 2026, 1:55:48 AM (yesterday) Aug 18
                            to Sora Kobayashi, Yoshisato Yanagisawa, Takashi Nakayama, Keita Suzuki, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                            Attention needed from Keita Suzuki, Sora Kobayashi, Takashi Nakayama and Yoshisato Yanagisawa

                            Shunya Shishido added 3 comments

                            File content/browser/devtools/protocol/service_worker_handler.cc
                            Line 125, Patchset 6: NOTREACHED();
                            Shunya Shishido . unresolved

                            Can we just have `NOTREACHED()` to kRaceNetworkAndCache case instead of relying on fall through? Running through `NOTIMPLEMENTED()` then `NOTREACHED()` seems a bit strange.

                            Takashi Nakayama

                            It is possible that invalid inputs slip through all cases of switch. Though [the style guide](https://google.github.io/styleguide/cppguide.html#Switch_Statements) recommends preparing `default:` statement, this `NOTREACHED()` behaves identically.

                            Shunya Shishido

                            Sounds good but then we don't need `NOTIMPLEMENTED()` I think.

                            Line 134, Patchset 6: CHECK(!or_condition.has_value() && !not_condition.has_value())
                            Shunya Shishido . unresolved

                            Are we really sure that the router condition has neither `or_condition` nor `not_condition` here? If so who guarantees it? Since this causes the browser crash, we should carefully ensure that and clarify why it's safe.

                            Line 155, Patchset 6: condition->SetRunningStatus("running");
                            Shunya Shishido . unresolved

                            Please fix this WARNING reported by autoreview issue finding: For consistency with the rest of this file (see line 50), consider using the protocol constants: `protocol::ServiceWorker::ServiceWorkerVersionRunningStatusEnum::Running` and `protocol::ServiceWorker::ServiceWorkerVersionRunningStatusEnum::Stopped`.

                            Open in Gerrit

                            Related details

                            Attention is currently required from:
                            • Keita Suzuki
                            • Sora Kobayashi
                            • Takashi Nakayama
                            • Yoshisato Yanagisawa
                              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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                                Gerrit-Change-Number: 8257194
                                Gerrit-PatchSet: 6
                                Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                                Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                                Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                                Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                                Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                                Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                                Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
                                Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
                                Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
                                Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                                Gerrit-Comment-Date: Tue, 18 Aug 2026 05:55:18 +0000
                                Gerrit-HasComments: Yes
                                Gerrit-Has-Labels: No
                                satisfied_requirement
                                unsatisfied_requirement
                                open
                                diffy

                                Sora Kobayashi (Gerrit)

                                unread,
                                Aug 18, 2026, 1:58:35 AM (yesterday) Aug 18
                                to Yoshisato Yanagisawa, Takashi Nakayama, Keita Suzuki, Shunya Shishido, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                Attention needed from Keita Suzuki, Shunya Shishido, Takashi Nakayama and Yoshisato Yanagisawa

                                Sora Kobayashi added 1 comment

                                File content/browser/devtools/protocol/service_worker_handler.cc
                                Line 85, Patchset 6:ConvertRouterSource(const blink::ServiceWorkerRouterSource& source) {
                                Shunya Shishido . unresolved

                                Non-blocking but can we have more tests? Especially for:

                                • RaceNetworkAndFetchEvent source
                                • Cache source with the cache name
                                • Cache source only
                                Sora Kobayashi

                                Thanks for the suggestion! I'll add these in a follow-up CL. I've filed crbug.com/548227769 to track this and added a TODO in the test file.

                                Open in Gerrit

                                Related details

                                Attention is currently required from:
                                • Keita Suzuki
                                • Shunya Shishido
                                • Takashi Nakayama
                                • Yoshisato Yanagisawa
                                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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                                Gerrit-Change-Number: 8257194
                                Gerrit-PatchSet: 7
                                Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                                Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                                Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                                Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                                Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                                Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                                Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
                                Gerrit-Attention: Shunya Shishido <sisid...@chromium.org>
                                Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
                                Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
                                Gerrit-Comment-Date: Tue, 18 Aug 2026 05:58:13 +0000
                                Gerrit-HasComments: Yes
                                Gerrit-Has-Labels: No
                                Comment-In-Reply-To: Shunya Shishido <sisid...@chromium.org>
                                satisfied_requirement
                                unsatisfied_requirement
                                open
                                diffy

                                Sora Kobayashi (Gerrit)

                                unread,
                                Aug 18, 2026, 2:00:34 AM (yesterday) Aug 18
                                to Yoshisato Yanagisawa, Takashi Nakayama, Keita Suzuki, Shunya Shishido, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                Attention needed from Keita Suzuki, Shunya Shishido, Takashi Nakayama and Yoshisato Yanagisawa

                                Sora Kobayashi added 1 comment

                                File content/browser/devtools/protocol/service_worker_handler.cc
                                Line 85, Patchset 6:ConvertRouterSource(const blink::ServiceWorkerRouterSource& source) {
                                Shunya Shishido . resolved

                                Non-blocking but can we have more tests? Especially for:

                                • RaceNetworkAndFetchEvent source
                                • Cache source with the cache name
                                • Cache source only
                                Sora Kobayashi

                                Thanks for the suggestion! I'll add these in a follow-up CL. I've filed crbug.com/548227769 to track this and added a TODO in the test file.

                                Sora Kobayashi

                                Acknowledged

                                Gerrit-Comment-Date: Tue, 18 Aug 2026 06:00:08 +0000
                                Gerrit-HasComments: Yes
                                Gerrit-Has-Labels: No
                                Comment-In-Reply-To: Shunya Shishido <sisid...@chromium.org>
                                Comment-In-Reply-To: Sora Kobayashi <otu...@google.com>
                                satisfied_requirement
                                unsatisfied_requirement
                                open
                                diffy

                                Sora Kobayashi (Gerrit)

                                unread,
                                Aug 18, 2026, 2:05:39 AM (yesterday) Aug 18
                                to Yoshisato Yanagisawa, Takashi Nakayama, Keita Suzuki, Shunya Shishido, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                Attention needed from Keita Suzuki, Shunya Shishido, Takashi Nakayama and Yoshisato Yanagisawa

                                Sora Kobayashi added 1 comment

                                File third_party/blink/public/devtools_protocol/domains/ServiceWorker.pdl
                                Line 63, Patchset 6: type ServiceWorkerRouterSource extends object
                                Shunya Shishido . resolved

                                RouterSource is `RouterSouceDict` OR `RouterSourceEnum`.
                                https://www.w3.org/TR/service-workers/#typedefdef-routersource

                                OTOH this CL makes `ServiceWorkerRouterSourceType` which supports "sourceDict" and optional `ServiceWorkerRouterSourceDict`.

                                Is this intended due to the restriction by PDL or something? If so please leave comment why we choose this interface which is not same as the spec?

                                Takashi Nakayama
                                This is due to the restriction by PDL. @otu...@google.com Could you add comment like this?
                                ```suggestion
                                # Corresponds to `RouterSource` in the spec while the representation is different as follows.
                                # (https://www.w3.org/TR/service-workers/#typedefdef-routersource)
                                # - `RouterSourceEnum`: `type` equals `cache`, `sourceDict` is null.
                                # - `RouterSourceDict`: `type` equals `sourceDict`, `sourceDict` has valid value.
                                type ServiceWorkerRouterSource extends object
                                ```
                                Sora Kobayashi

                                Done

                                Gerrit-Comment-Date: Tue, 18 Aug 2026 06:05:19 +0000
                                Gerrit-HasComments: Yes
                                Gerrit-Has-Labels: No
                                satisfied_requirement
                                unsatisfied_requirement
                                open
                                diffy

                                Takashi Nakayama (Gerrit)

                                unread,
                                Aug 18, 2026, 2:07:40 AM (yesterday) Aug 18
                                to Sora Kobayashi, Yoshisato Yanagisawa, Keita Suzuki, Shunya Shishido, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                Attention needed from Keita Suzuki, Shunya Shishido, Sora Kobayashi and Yoshisato Yanagisawa

                                Takashi Nakayama voted and added 3 comments

                                Votes added by Takashi Nakayama

                                Code-Review+1

                                3 comments

                                File content/browser/devtools/protocol/service_worker_handler.cc
                                Line 125, Patchset 6: NOTREACHED();
                                Shunya Shishido . unresolved

                                Can we just have `NOTREACHED()` to kRaceNetworkAndCache case instead of relying on fall through? Running through `NOTIMPLEMENTED()` then `NOTREACHED()` seems a bit strange.

                                Takashi Nakayama

                                It is possible that invalid inputs slip through all cases of switch. Though [the style guide](https://google.github.io/styleguide/cppguide.html#Switch_Statements) recommends preparing `default:` statement, this `NOTREACHED()` behaves identically.

                                Shunya Shishido

                                Sounds good but then we don't need `NOTIMPLEMENTED()` I think.

                                Takashi Nakayama

                                yy-san's comment sounds like we should keep `NOTIMPLEMENTED()` to me.

                                Line 134, Patchset 6: CHECK(!or_condition.has_value() && !not_condition.has_value())
                                Shunya Shishido . unresolved

                                Are we really sure that the router condition has neither `or_condition` nor `not_condition` here? If so who guarantees it? Since this causes the browser crash, we should carefully ensure that and clarify why it's safe.


                                << "nested conditions are not yet supported.";
                                Yoshisato Yanagisawa . unresolved

                                It might be good to leave TODO?
                                Both should be used in practice, and I believe having them are unavoidable to productinize this feature.

                                Takashi Nakayama

                                @otu...@google.com Could you add TODO comment like this?


                                ```suggestion
                                // TODO(crbug.com/540469610): Support nested conditions.

                                CHECK(!or_condition.has_value() && !not_condition.has_value())
                                << "nested conditions are not yet supported.";
                                ```
                                Open in Gerrit

                                Related details

                                Attention is currently required from:
                                • Keita Suzuki
                                • Shunya Shishido
                                • Sora Kobayashi
                                • Yoshisato Yanagisawa
                                Submit Requirements:
                                  • requirement satisfiedCode-Coverage
                                  • requirement is not satisfiedCode-Owners
                                  • requirement is not 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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                                  Gerrit-Change-Number: 8257194
                                  Gerrit-PatchSet: 7
                                  Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                                  Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                                  Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                                  Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                                  Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                                  Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                                  Gerrit-Attention: Shunya Shishido <sisid...@chromium.org>
                                  Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
                                  Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                                  Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
                                  Gerrit-Comment-Date: Tue, 18 Aug 2026 06:07:17 +0000
                                  Gerrit-HasComments: Yes
                                  Gerrit-Has-Labels: Yes
                                  Comment-In-Reply-To: Takashi Nakayama <tn...@chromium.org>
                                  Comment-In-Reply-To: Shunya Shishido <sisid...@chromium.org>
                                  Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
                                  satisfied_requirement
                                  unsatisfied_requirement
                                  open
                                  diffy

                                  Shunya Shishido (Gerrit)

                                  unread,
                                  Aug 18, 2026, 3:17:14 AM (yesterday) Aug 18
                                  to Sora Kobayashi, Takashi Nakayama, Yoshisato Yanagisawa, Keita Suzuki, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                  Attention needed from Keita Suzuki, Sora Kobayashi and Yoshisato Yanagisawa

                                  Shunya Shishido added 2 comments

                                  File content/browser/devtools/protocol/service_worker_handler.cc
                                  Line 125, Patchset 6: NOTREACHED();
                                  Shunya Shishido . unresolved

                                  Can we just have `NOTREACHED()` to kRaceNetworkAndCache case instead of relying on fall through? Running through `NOTIMPLEMENTED()` then `NOTREACHED()` seems a bit strange.

                                  Takashi Nakayama

                                  It is possible that invalid inputs slip through all cases of switch. Though [the style guide](https://google.github.io/styleguide/cppguide.html#Switch_Statements) recommends preparing `default:` statement, this `NOTREACHED()` behaves identically.

                                  Shunya Shishido

                                  Sounds good but then we don't need `NOTIMPLEMENTED()` I think.

                                  Takashi Nakayama

                                  yy-san's comment sounds like we should keep `NOTIMPLEMENTED()` to me.

                                  Shunya Shishido

                                  If the intention is indeed to crash, NOTIMPLEMENTED() doesn't really serve any purpose here, and a TODO comment + NOTREACHED() would be cleaner. That said, this is a minor detail, so I'm fine either way.

                                  Line 134, Patchset 6: CHECK(!or_condition.has_value() && !not_condition.has_value())
                                  Shunya Shishido . unresolved

                                  Are we really sure that the router condition has neither `or_condition` nor `not_condition` here? If so who guarantees it? Since this causes the browser crash, we should carefully ensure that and clarify why it's safe.

                                  Takashi Nakayama

                                  It is guaranteed [here](https://source.chromium.org/chromium/chromium/src/+/main:content/browser/service_worker/service_worker_version.cc;l=2475;drc=c4e68511fe869c7aafd4f97d9a8fd4e5f052a8f3).

                                  Shunya Shishido

                                  I'm happy with checking it on the caller side or leaving comments. As this CHECK is implicit in the callee side, I'm a bit worried about unexpected browser crashes in the future.

                                  Open in Gerrit

                                  Related details

                                  Attention is currently required from:
                                  • Keita Suzuki
                                  • Sora Kobayashi
                                  • Yoshisato Yanagisawa
                                  Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
                                  Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                                  Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
                                  Gerrit-Comment-Date: Tue, 18 Aug 2026 07:16:41 +0000
                                  Gerrit-HasComments: Yes
                                  Gerrit-Has-Labels: No
                                  satisfied_requirement
                                  unsatisfied_requirement
                                  open
                                  diffy

                                  Takashi Nakayama (Gerrit)

                                  unread,
                                  Aug 18, 2026, 3:45:04 AM (yesterday) Aug 18
                                  to Sora Kobayashi, Yoshisato Yanagisawa, Keita Suzuki, Shunya Shishido, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                  Attention needed from Keita Suzuki, Sora Kobayashi and Yoshisato Yanagisawa

                                  Takashi Nakayama added 2 comments

                                  File content/browser/devtools/protocol/service_worker_handler.cc
                                  Line 134, Patchset 6: CHECK(!or_condition.has_value() && !not_condition.has_value())
                                  Shunya Shishido . unresolved

                                  Are we really sure that the router condition has neither `or_condition` nor `not_condition` here? If so who guarantees it? Since this causes the browser crash, we should carefully ensure that and clarify why it's safe.

                                  Takashi Nakayama

                                  It is guaranteed [here](https://source.chromium.org/chromium/chromium/src/+/main:content/browser/service_worker/service_worker_version.cc;l=2475;drc=c4e68511fe869c7aafd4f97d9a8fd4e5f052a8f3).

                                  Shunya Shishido

                                  I'm happy with checking it on the caller side or leaving comments. As this CHECK is implicit in the callee side, I'm a bit worried about unexpected browser crashes in the future.

                                  Takashi Nakayama

                                  Ack. @otu...@google.com Could you add a comment like this on the function declaration?
                                  ```
                                  // Converts blink internal RouterCondition type to that of CDP.
                                  // Note that nested conditions (`or` and `not`) are not supported on CDP.


                                  // TODO(crbug.com/540469610): Support nested conditions.

                                  ```

                                  Line 519, Patchset 6: CHECK(!version.router_rules);
                                  Yoshisato Yanagisawa . unresolved

                                  I failed to catch the meaning of this `CHECK`. It looks trivial upon L516, and I assume having `router_rules` can be used as a switch to go with the legacy implementation or the new implementation, but will the code after this may break if `version.router_rules` exist?

                                  Takashi Nakayama

                                  I don't think it's trivial. Rather, this CHECK validates the semantic invariant imposed on `ServiceWorkerVersion::typed_router_rules` [[cs]( https://source.chromium.org/chromium/chromium/src/+/main:content/browser/service_worker/service_worker_info.h;l=67;drc=71710b1d1f37409159fcaa69ff3f1ccd45862358)]. While we can simply branch by `if (version.router_rules) { ... } else if (!version.typed_router_rules.empty()) { ... }`, I'd like to keep the current code with `CHECK`.

                                  Gerrit-Comment-Date: Tue, 18 Aug 2026 07:44:40 +0000
                                  Gerrit-HasComments: Yes
                                  Gerrit-Has-Labels: No
                                  Comment-In-Reply-To: Takashi Nakayama <tn...@chromium.org>
                                  Comment-In-Reply-To: Shunya Shishido <sisid...@chromium.org>
                                  Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
                                  satisfied_requirement
                                  unsatisfied_requirement
                                  open
                                  diffy

                                  Sora Kobayashi (Gerrit)

                                  unread,
                                  1:49 AM (8 hours ago) 1:49 AM
                                  to Takashi Nakayama, Yoshisato Yanagisawa, Keita Suzuki, Shunya Shishido, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                  Attention needed from Keita Suzuki, Shunya Shishido, Takashi Nakayama and Yoshisato Yanagisawa

                                  Sora Kobayashi added 3 comments

                                  File content/browser/devtools/protocol/service_worker_handler.cc
                                  Line 134, Patchset 6: CHECK(!or_condition.has_value() && !not_condition.has_value())
                                  Shunya Shishido . resolved

                                  Are we really sure that the router condition has neither `or_condition` nor `not_condition` here? If so who guarantees it? Since this causes the browser crash, we should carefully ensure that and clarify why it's safe.

                                  Takashi Nakayama

                                  It is guaranteed [here](https://source.chromium.org/chromium/chromium/src/+/main:content/browser/service_worker/service_worker_version.cc;l=2475;drc=c4e68511fe869c7aafd4f97d9a8fd4e5f052a8f3).

                                  Shunya Shishido

                                  I'm happy with checking it on the caller side or leaving comments. As this CHECK is implicit in the callee side, I'm a bit worried about unexpected browser crashes in the future.

                                  Takashi Nakayama

                                  Ack. @otu...@google.com Could you add a comment like this on the function declaration?
                                  ```
                                  // Converts blink internal RouterCondition type to that of CDP.
                                  // Note that nested conditions (`or` and `not`) are not supported on CDP.
                                  // TODO(crbug.com/540469610): Support nested conditions.
                                  ```

                                  Sora Kobayashi

                                  Acknowledged

                                  Line 134, Patchset 6: CHECK(!or_condition.has_value() && !not_condition.has_value())

                                  << "nested conditions are not yet supported.";
                                  Yoshisato Yanagisawa . resolved

                                  It might be good to leave TODO?
                                  Both should be used in practice, and I believe having them are unavoidable to productinize this feature.

                                  Takashi Nakayama

                                  @otu...@google.com Could you add TODO comment like this?


                                  ```suggestion

                                  // TODO(crbug.com/540469610): Support nested conditions.
                                    CHECK(!or_condition.has_value() && !not_condition.has_value())
                                  << "nested conditions are not yet supported.";
                                  ```
                                  Sora Kobayashi

                                  Done

                                  Line 155, Patchset 6: condition->SetRunningStatus("running");
                                  Shunya Shishido . resolved

                                  Please fix this WARNING reported by autoreview issue finding: For consistency with the rest of this file (see line 50), consider using the protocol constants: `protocol::ServiceWorker::ServiceWorkerVersionRunningStatusEnum::Running` and `protocol::ServiceWorker::ServiceWorkerVersionRunningStatusEnum::Stopped`.

                                  Sora Kobayashi

                                  Done

                                  Open in Gerrit

                                  Related details

                                  Attention is currently required from:
                                  • Keita Suzuki
                                  • Shunya Shishido
                                  • Takashi Nakayama
                                  • Yoshisato Yanagisawa
                                  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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                                    Gerrit-Change-Number: 8257194
                                    Gerrit-PatchSet: 8
                                    Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                                    Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                                    Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                                    Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                                    Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                                    Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                                    Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
                                    Gerrit-Attention: Shunya Shishido <sisid...@chromium.org>
                                    Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
                                    Gerrit-Attention: Yoshisato Yanagisawa <yyana...@chromium.org>
                                    Gerrit-Comment-Date: Wed, 19 Aug 2026 05:49:23 +0000
                                    satisfied_requirement
                                    unsatisfied_requirement
                                    open
                                    diffy

                                    Yoshisato Yanagisawa (Gerrit)

                                    unread,
                                    2:15 AM (8 hours ago) 2:15 AM
                                    to Sora Kobayashi, Takashi Nakayama, Keita Suzuki, Shunya Shishido, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                    Attention needed from Keita Suzuki, Shunya Shishido, Sora Kobayashi and Takashi Nakayama

                                    Yoshisato Yanagisawa added 1 comment

                                    File content/browser/devtools/protocol/service_worker_handler.cc
                                    Line 519, Patchset 6: CHECK(!version.router_rules);
                                    Yoshisato Yanagisawa . resolved

                                    I failed to catch the meaning of this `CHECK`. It looks trivial upon L516, and I assume having `router_rules` can be used as a switch to go with the legacy implementation or the new implementation, but will the code after this may break if `version.router_rules` exist?

                                    Takashi Nakayama

                                    I don't think it's trivial. Rather, this CHECK validates the semantic invariant imposed on `ServiceWorkerVersion::typed_router_rules` [[cs]( https://source.chromium.org/chromium/chromium/src/+/main:content/browser/service_worker/service_worker_info.h;l=67;drc=71710b1d1f37409159fcaa69ff3f1ccd45862358)]. While we can simply branch by `if (version.router_rules) { ... } else if (!version.typed_router_rules.empty()) { ... }`, I'd like to keep the current code with `CHECK`.

                                    Yoshisato Yanagisawa

                                    Acknowledged

                                    Open in Gerrit

                                    Related details

                                    Attention is currently required from:
                                    • Keita Suzuki
                                    • Shunya Shishido
                                    • Sora Kobayashi
                                    • Takashi Nakayama
                                    Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                                    Gerrit-Comment-Date: Wed, 19 Aug 2026 06:14:36 +0000
                                    Gerrit-HasComments: Yes
                                    Gerrit-Has-Labels: No
                                    Comment-In-Reply-To: Takashi Nakayama <tn...@chromium.org>
                                    Comment-In-Reply-To: Yoshisato Yanagisawa <yyana...@chromium.org>
                                    satisfied_requirement
                                    unsatisfied_requirement
                                    open
                                    diffy

                                    Yoshisato Yanagisawa (Gerrit)

                                    unread,
                                    2:15 AM (8 hours ago) 2:15 AM
                                    to Sora Kobayashi, Takashi Nakayama, Keita Suzuki, Shunya Shishido, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                    Attention needed from Keita Suzuki, Shunya Shishido, Sora Kobayashi and Takashi Nakayama

                                    Yoshisato Yanagisawa voted Code-Review+1

                                    Code-Review+1
                                    Open in Gerrit

                                    Related details

                                    Attention is currently required from:
                                    • Keita Suzuki
                                    • Shunya Shishido
                                    • Sora Kobayashi
                                    • Takashi Nakayama
                                    Submit Requirements:
                                      • requirement satisfiedCode-Coverage
                                      • requirement is not satisfiedCode-Owners
                                      • requirement is not 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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                                      Gerrit-Change-Number: 8257194
                                      Gerrit-PatchSet: 8
                                      Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                                      Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                                      Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                                      Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                                      Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                                      Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                                      Gerrit-Attention: Takashi Nakayama <tn...@chromium.org>
                                      Gerrit-Attention: Shunya Shishido <sisid...@chromium.org>
                                      Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
                                      Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                                      Gerrit-Comment-Date: Wed, 19 Aug 2026 06:14:50 +0000
                                      Gerrit-HasComments: No
                                      Gerrit-Has-Labels: Yes
                                      satisfied_requirement
                                      unsatisfied_requirement
                                      open
                                      diffy

                                      Takashi Nakayama (Gerrit)

                                      unread,
                                      2:38 AM (7 hours ago) 2:38 AM
                                      to Sora Kobayashi, Yoshisato Yanagisawa, Keita Suzuki, Shunya Shishido, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                      Attention needed from Keita Suzuki, Shunya Shishido and Sora Kobayashi

                                      Takashi Nakayama voted Code-Review+1

                                      Code-Review+1
                                      Open in Gerrit

                                      Related details

                                      Attention is currently required from:
                                      • Keita Suzuki
                                      • Shunya Shishido
                                      • Sora Kobayashi
                                      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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                                        Gerrit-Change-Number: 8257194
                                        Gerrit-PatchSet: 8
                                        Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                                        Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                                        Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                                        Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                                        Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                                        Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                                        Gerrit-Attention: Shunya Shishido <sisid...@chromium.org>
                                        Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
                                        Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                                        Gerrit-Comment-Date: Wed, 19 Aug 2026 06:38:12 +0000
                                        Gerrit-HasComments: No
                                        Gerrit-Has-Labels: Yes
                                        satisfied_requirement
                                        unsatisfied_requirement
                                        open
                                        diffy

                                        Shunya Shishido (Gerrit)

                                        unread,
                                        2:38 AM (7 hours ago) 2:38 AM
                                        to Sora Kobayashi, Takashi Nakayama, Yoshisato Yanagisawa, Keita Suzuki, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                        Attention needed from Keita Suzuki and Sora Kobayashi

                                        Shunya Shishido voted and added 1 comment

                                        Votes added by Shunya Shishido

                                        Code-Review+1

                                        1 comment

                                        File content/browser/devtools/protocol/service_worker_handler.cc
                                        Line 125, Patchset 6: NOTREACHED();
                                        Shunya Shishido . resolved

                                        Can we just have `NOTREACHED()` to kRaceNetworkAndCache case instead of relying on fall through? Running through `NOTIMPLEMENTED()` then `NOTREACHED()` seems a bit strange.

                                        Takashi Nakayama

                                        It is possible that invalid inputs slip through all cases of switch. Though [the style guide](https://google.github.io/styleguide/cppguide.html#Switch_Statements) recommends preparing `default:` statement, this `NOTREACHED()` behaves identically.

                                        Shunya Shishido

                                        Sounds good but then we don't need `NOTIMPLEMENTED()` I think.

                                        Takashi Nakayama

                                        yy-san's comment sounds like we should keep `NOTIMPLEMENTED()` to me.

                                        Shunya Shishido

                                        If the intention is indeed to crash, NOTIMPLEMENTED() doesn't really serve any purpose here, and a TODO comment + NOTREACHED() would be cleaner. That said, this is a minor detail, so I'm fine either way.

                                        Shunya Shishido

                                        Done

                                        Open in Gerrit

                                        Related details

                                        Attention is currently required from:
                                        • Keita Suzuki
                                        • Sora Kobayashi
                                        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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                                          Gerrit-Change-Number: 8257194
                                          Gerrit-PatchSet: 8
                                          Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                                          Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                                          Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                                          Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                                          Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                                          Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                                          Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
                                          Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                                          Gerrit-Comment-Date: Wed, 19 Aug 2026 06:38:21 +0000
                                          Gerrit-HasComments: Yes
                                          Gerrit-Has-Labels: Yes
                                          Comment-In-Reply-To: Takashi Nakayama <tn...@chromium.org>
                                          Comment-In-Reply-To: Shunya Shishido <sisid...@chromium.org>
                                          satisfied_requirement
                                          unsatisfied_requirement
                                          open
                                          diffy

                                          Alex Rudenko (Gerrit)

                                          unread,
                                          6:47 AM (3 hours ago) 6:47 AM
                                          to Sora Kobayashi, Shunya Shishido, Takashi Nakayama, Yoshisato Yanagisawa, Keita Suzuki, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, blink-work...@chromium.org, devtools-re...@chromium.org, kinuko...@chromium.org
                                          Attention needed from Keita Suzuki and Sora Kobayashi

                                          Alex Rudenko added 3 comments

                                          File content/browser/devtools/protocol/service_worker_handler.cc
                                          Line 125, Patchset 8 (Latest): NOTREACHED();
                                          Alex Rudenko . unresolved

                                          `NOTIMPLEMENTED()` only logs a warning and does not return or abort execution. Execution will fall through to `NOTREACHED()`, which is fatal in Chromium and will crash the browser process.

                                          Consider returning `nullptr` here instead, and then safely skipping this rule in `ConvertTypedRouterRules` so that DevTools doesn't crash the browser if a developer happens to have this internal feature enabled.

                                          Line 137, Patchset 8 (Latest): CHECK(!or_condition.has_value() && !not_condition.has_value())
                                          Alex Rudenko . unresolved

                                          Using `CHECK` here is dangerous. If a web developer registers a Service Worker with nested conditions (e.g. `or` / `not`), this will crash the entire browser process when DevTools is opened.

                                          Instead of crashing, you should handle this gracefully. For example, you could return `nullptr` here, and in `ConvertTypedRouterRules` skip rules that have an unsupported condition.

                                          Line 180, Patchset 8 (Latest): auto protocol_rule =
                                          Alex Rudenko . unresolved

                                          If you change `ConvertRouterCondition` and `ConvertRouterSource` to return `nullptr` for unsupported features, you will need to assign them to local variables and check for null here. Since `condition` and `source` are required fields in the protocol, calling `.SetCondition(nullptr)` / `.SetSource(nullptr)` and then `.Build()` will fail.

                                          For example:
                                          ```cpp
                                          auto condition = ConvertRouterCondition(rule.condition);
                                          auto source = ConvertRouterSource(rule.source);
                                          if (!condition || !source) {
                                          continue;
                                          }
                                          ```
                                          Open in Gerrit

                                          Related details

                                          Attention is currently required from:
                                          • Keita Suzuki
                                          • Sora Kobayashi
                                          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: I9288d13def8f28f01a015a61a38d68e44dd47cec
                                            Gerrit-Change-Number: 8257194
                                            Gerrit-PatchSet: 8
                                            Gerrit-Owner: Sora Kobayashi <otu...@google.com>
                                            Gerrit-Reviewer: Alex Rudenko <alexr...@chromium.org>
                                            Gerrit-Reviewer: Keita Suzuki <suzuk...@chromium.org>
                                            Gerrit-Reviewer: Shunya Shishido <sisid...@chromium.org>
                                            Gerrit-Reviewer: Sora Kobayashi <otu...@google.com>
                                            Gerrit-Reviewer: Takashi Nakayama <tn...@chromium.org>
                                            Gerrit-Reviewer: Yoshisato Yanagisawa <yyana...@chromium.org>
                                            Gerrit-Attention: Keita Suzuki <suzuk...@chromium.org>
                                            Gerrit-Attention: Sora Kobayashi <otu...@google.com>
                                            Gerrit-Comment-Date: Wed, 19 Aug 2026 10:47:07 +0000
                                            Gerrit-HasComments: Yes
                                            Gerrit-Has-Labels: No
                                            satisfied_requirement
                                            unsatisfied_requirement
                                            open
                                            diffy
                                            Reply all
                                            Reply to author
                                            Forward
                                            0 new messages