Create renderer side code for ai taxonomy API [chromium/src : main]

0 views
Skip to first unread message

Nathan Memmott (Gerrit)

unread,
Feb 23, 2026, 8:04:19 PM (8 days ago) Feb 23
to Devin Cabillo, Jerome Jiang, Mirko Bonadei, AyeAye, Jingyun Liu, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
Attention needed from Devin Cabillo and Jingyun Liu

Nathan Memmott added 5 comments

File third_party/blink/web_tests/external/wpt/ai/classifier/classifier-availability.tentative.https.window.js
Line 10, Patchset 14 (Latest): assert_equals(availability, 'unavailable');
Nathan Memmott . unresolved

Assert that `availability` is one of the valid return values instead of asserting that it is unavailable.

Line 11, Patchset 14 (Latest):}, 'Classifier.availability() is callable and returns "unavailable" in the stub implementation');
Nathan Memmott . unresolved

Don't call out the implementation in the WPT names. These test the API.

File third_party/blink/web_tests/external/wpt/ai/classifier/classifier-create.tentative.https.window.js
Line 9, Patchset 14 (Latest): try {
await Classifier.create({
signal: AbortSignal.timeout(1000)
});
assert_unreached('create() should not resolve because the backend is a stub.');
} catch (e) {
}
Nathan Memmott . unresolved

So since you always return a `unavailable`, you should update your `create` function to return [a rejected promise](https://webmachinelearning.github.io/writing-assistance-apis/#create-an-ai-model-object). Then for this test, you should get the availability and assert that create should reject if it is unavailable. Also use [`promise_rejects_dom`](https://web-platform-tests.org/writing-tests/testharness-api.html#promise-rejection).

Line 16, Patchset 14 (Latest):}, 'Classifier.create() executes the C++ layer without crashing');
Nathan Memmott . unresolved

The implementation might not necessarily be written in C++.

File third_party/blink/web_tests/external/wpt/ai/classifier/resources/iframe-helper.html
Line 1, Patchset 14 (Latest):<!DOCTYPE HTML>
<meta charset="utf-8">
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>

<body></body>
<script>
test_driver.set_test_context(parent);

window.onmessage = async message => {
const { id, type } = message.data;
try {
switch (type) {
case 'ClassifierCreate':
await test_driver.bless('Classifier.create', Classifier.create, window);
parent.postMessage({ id, success: 'Success' }, '*');
break;
case 'ClassifierAvailability':
const availability = await Classifier.availability();
parent.postMessage({ id, success: availability }, '*');
break;
}
} catch (err) {
parent.postMessage({ id, err: err }, '*');
}
};
</script>
Nathan Memmott . unresolved

This is unused?

Open in Gerrit

Related details

Attention is currently required from:
  • Devin Cabillo
  • Jingyun Liu
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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
Gerrit-Change-Number: 7568249
Gerrit-PatchSet: 14
Gerrit-Owner: Devin Cabillo <devinc...@google.com>
Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
Gerrit-CC: Jerome Jiang <ji...@chromium.org>
Gerrit-CC: Jingyun Liu <jin...@google.com>
Gerrit-CC: Kentaro Hara <har...@chromium.org>
Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
Gerrit-Attention: Jingyun Liu <jin...@google.com>
Gerrit-Attention: Devin Cabillo <devinc...@google.com>
Gerrit-Comment-Date: Tue, 24 Feb 2026 01:04:10 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Devin Cabillo (Gerrit)

unread,
Feb 23, 2026, 11:42:32 PM (8 days ago) Feb 23
to Jerome Jiang, Mirko Bonadei, AyeAye, Nathan Memmott, Jingyun Liu, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
Attention needed from Jingyun Liu and Nathan Memmott

Devin Cabillo added 5 comments

File third_party/blink/web_tests/external/wpt/ai/classifier/classifier-availability.tentative.https.window.js
Line 10, Patchset 14: assert_equals(availability, 'unavailable');
Nathan Memmott . resolved

Assert that `availability` is one of the valid return values instead of asserting that it is unavailable.

Devin Cabillo

Done

Line 11, Patchset 14:}, 'Classifier.availability() is callable and returns "unavailable" in the stub implementation');
Nathan Memmott . resolved

Don't call out the implementation in the WPT names. These test the API.

Devin Cabillo

Done

File third_party/blink/web_tests/external/wpt/ai/classifier/classifier-create.tentative.https.window.js

await Classifier.create({
signal: AbortSignal.timeout(1000)
});
assert_unreached('create() should not resolve because the backend is a stub.');
} catch (e) {
}
Nathan Memmott . resolved

So since you always return a `unavailable`, you should update your `create` function to return [a rejected promise](https://webmachinelearning.github.io/writing-assistance-apis/#create-an-ai-model-object). Then for this test, you should get the availability and assert that create should reject if it is unavailable. Also use [`promise_rejects_dom`](https://web-platform-tests.org/writing-tests/testharness-api.html#promise-rejection).

Devin Cabillo

Done

Line 16, Patchset 14:}, 'Classifier.create() executes the C++ layer without crashing');
Nathan Memmott . resolved

The implementation might not necessarily be written in C++.

Devin Cabillo

Done

File third_party/blink/web_tests/external/wpt/ai/classifier/resources/iframe-helper.html
Line 1, Patchset 14:<!DOCTYPE HTML>

<meta charset="utf-8">
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>

<body></body>
<script>
test_driver.set_test_context(parent);

window.onmessage = async message => {
const { id, type } = message.data;
try {
switch (type) {
case 'ClassifierCreate':
await test_driver.bless('Classifier.create', Classifier.create, window);
parent.postMessage({ id, success: 'Success' }, '*');
break;
case 'ClassifierAvailability':
const availability = await Classifier.availability();
parent.postMessage({ id, success: availability }, '*');
break;
}
} catch (err) {
parent.postMessage({ id, err: err }, '*');
}
};
</script>
Nathan Memmott . resolved

This is unused?

Devin Cabillo

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Jingyun Liu
  • Nathan Memmott
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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
    Gerrit-Change-Number: 7568249
    Gerrit-PatchSet: 15
    Gerrit-Owner: Devin Cabillo <devinc...@google.com>
    Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
    Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
    Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
    Gerrit-CC: Jerome Jiang <ji...@chromium.org>
    Gerrit-CC: Jingyun Liu <jin...@google.com>
    Gerrit-CC: Kentaro Hara <har...@chromium.org>
    Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
    Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
    Gerrit-Attention: Nathan Memmott <mem...@chromium.org>
    Gerrit-Attention: Jingyun Liu <jin...@google.com>
    Gerrit-Comment-Date: Tue, 24 Feb 2026 04:42:24 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Nathan Memmott <mem...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Nathan Memmott (Gerrit)

    unread,
    Feb 24, 2026, 12:32:24 PM (7 days ago) Feb 24
    to Devin Cabillo, Jerome Jiang, Mirko Bonadei, AyeAye, Jingyun Liu, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
    Attention needed from Devin Cabillo and Jingyun Liu

    Nathan Memmott added 4 comments

    File third_party/blink/web_tests/external/wpt/ai/classifier/classifier-create.tentative.https.window.js
    Line 13, Patchset 15 (Latest): 'NotAllowedError',
    Nathan Memmott . unresolved

    This should be 'NotSupportedError'.

    Line 14, Patchset 15 (Latest): Classifier.create({ signal: AbortSignal.timeout(1000) })
    Nathan Memmott . unresolved

    Remove this signal and return a rejected promise from create().

    Line 17, Patchset 15 (Latest): const classifier = await Classifier.create({ signal: AbortSignal.timeout(1000) });
    assert_true(!!classifier, 'Classifier was successfully created');
    Nathan Memmott . unresolved

    Remove the else case.

    Line 20, Patchset 15 (Latest):}, 'Classifier.create() behavior depends on availability');
    Nathan Memmott . unresolved

    How about 'Classifier.create() rejects when unavailable'?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Devin Cabillo
    • Jingyun Liu
    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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
      Gerrit-Change-Number: 7568249
      Gerrit-PatchSet: 15
      Gerrit-Owner: Devin Cabillo <devinc...@google.com>
      Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
      Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
      Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
      Gerrit-CC: Jerome Jiang <ji...@chromium.org>
      Gerrit-CC: Jingyun Liu <jin...@google.com>
      Gerrit-CC: Kentaro Hara <har...@chromium.org>
      Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
      Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
      Gerrit-Attention: Jingyun Liu <jin...@google.com>
      Gerrit-Attention: Devin Cabillo <devinc...@google.com>
      Gerrit-Comment-Date: Tue, 24 Feb 2026 17:32:18 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Devin Cabillo (Gerrit)

      unread,
      Feb 24, 2026, 12:59:55 PM (7 days ago) Feb 24
      to Jerome Jiang, Mirko Bonadei, AyeAye, Nathan Memmott, Jingyun Liu, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
      Attention needed from Jingyun Liu and Nathan Memmott

      Devin Cabillo added 4 comments

      File third_party/blink/web_tests/external/wpt/ai/classifier/classifier-create.tentative.https.window.js
      Line 13, Patchset 15: 'NotAllowedError',
      Nathan Memmott . resolved

      This should be 'NotSupportedError'.

      Devin Cabillo

      Done

      Line 14, Patchset 15: Classifier.create({ signal: AbortSignal.timeout(1000) })
      Nathan Memmott . resolved

      Remove this signal and return a rejected promise from create().

      Devin Cabillo

      Done

      Line 17, Patchset 15: const classifier = await Classifier.create({ signal: AbortSignal.timeout(1000) });

      assert_true(!!classifier, 'Classifier was successfully created');
      Nathan Memmott . resolved

      Remove the else case.

      Devin Cabillo

      Done

      Line 20, Patchset 15:}, 'Classifier.create() behavior depends on availability');
      Nathan Memmott . resolved

      How about 'Classifier.create() rejects when unavailable'?

      Devin Cabillo

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Jingyun Liu
      • Nathan Memmott
      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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
        Gerrit-Change-Number: 7568249
        Gerrit-PatchSet: 16
        Gerrit-Owner: Devin Cabillo <devinc...@google.com>
        Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
        Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
        Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
        Gerrit-CC: Jerome Jiang <ji...@chromium.org>
        Gerrit-CC: Jingyun Liu <jin...@google.com>
        Gerrit-CC: Kentaro Hara <har...@chromium.org>
        Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
        Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
        Gerrit-Attention: Nathan Memmott <mem...@chromium.org>
        Gerrit-Attention: Jingyun Liu <jin...@google.com>
        Gerrit-Comment-Date: Tue, 24 Feb 2026 17:59:49 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        Comment-In-Reply-To: Nathan Memmott <mem...@chromium.org>
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Nathan Memmott (Gerrit)

        unread,
        Feb 24, 2026, 1:04:02 PM (7 days ago) Feb 24
        to Devin Cabillo, Jerome Jiang, Mirko Bonadei, AyeAye, Jingyun Liu, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
        Attention needed from Devin Cabillo and Jingyun Liu

        Nathan Memmott voted and added 1 comment

        Votes added by Nathan Memmott

        Code-Review+1

        1 comment

        File third_party/blink/web_tests/external/wpt/ai/classifier/classifier-create.tentative.https.window.js
        Line 9, Patchset 16 (Latest): await promise_rejects_dom(
        Nathan Memmott . unresolved

        Sorry by remove the else case, I meant to keep the true case. So check availability and if 'unavailable', assert that it rejects with a DOM error. Also can you add a TODO comment to update this to NotSupportedError with bug http://crbug.com/487291285.

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Devin Cabillo
        • Jingyun Liu
        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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
          Gerrit-Change-Number: 7568249
          Gerrit-PatchSet: 16
          Gerrit-Owner: Devin Cabillo <devinc...@google.com>
          Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
          Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
          Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
          Gerrit-CC: Jerome Jiang <ji...@chromium.org>
          Gerrit-CC: Jingyun Liu <jin...@google.com>
          Gerrit-CC: Kentaro Hara <har...@chromium.org>
          Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
          Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
          Gerrit-Attention: Jingyun Liu <jin...@google.com>
          Gerrit-Attention: Devin Cabillo <devinc...@google.com>
          Gerrit-Comment-Date: Tue, 24 Feb 2026 18:03:53 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: Yes
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Devin Cabillo (Gerrit)

          unread,
          Feb 24, 2026, 3:15:55 PM (7 days ago) Feb 24
          to Nathan Memmott, Jerome Jiang, Mirko Bonadei, AyeAye, Jingyun Liu, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
          Attention needed from Jingyun Liu and Nathan Memmott

          Devin Cabillo added 1 comment

          File third_party/blink/web_tests/external/wpt/ai/classifier/classifier-create.tentative.https.window.js
          Line 9, Patchset 16: await promise_rejects_dom(
          Nathan Memmott . resolved

          Sorry by remove the else case, I meant to keep the true case. So check availability and if 'unavailable', assert that it rejects with a DOM error. Also can you add a TODO comment to update this to NotSupportedError with bug http://crbug.com/487291285.

          Devin Cabillo

          Done

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Jingyun Liu
          • Nathan Memmott
          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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
            Gerrit-Change-Number: 7568249
            Gerrit-PatchSet: 17
            Gerrit-Owner: Devin Cabillo <devinc...@google.com>
            Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
            Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
            Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
            Gerrit-CC: Jerome Jiang <ji...@chromium.org>
            Gerrit-CC: Jingyun Liu <jin...@google.com>
            Gerrit-CC: Kentaro Hara <har...@chromium.org>
            Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
            Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
            Gerrit-Attention: Nathan Memmott <mem...@chromium.org>
            Gerrit-Attention: Jingyun Liu <jin...@google.com>
            Gerrit-Comment-Date: Tue, 24 Feb 2026 20:15:48 +0000
            satisfied_requirement
            unsatisfied_requirement
            open
            diffy

            Nathan Memmott (Gerrit)

            unread,
            Feb 24, 2026, 4:34:19 PM (7 days ago) Feb 24
            to Devin Cabillo, Jerome Jiang, Mirko Bonadei, AyeAye, Jingyun Liu, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
            Attention needed from Devin Cabillo and Jingyun Liu

            Nathan Memmott voted Code-Review+1

            Code-Review+1
            Open in Gerrit

            Related details

            Attention is currently required from:
            • Devin Cabillo
            • Jingyun Liu
            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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
              Gerrit-Change-Number: 7568249
              Gerrit-PatchSet: 17
              Gerrit-Owner: Devin Cabillo <devinc...@google.com>
              Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
              Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
              Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
              Gerrit-CC: Jerome Jiang <ji...@chromium.org>
              Gerrit-CC: Jingyun Liu <jin...@google.com>
              Gerrit-CC: Kentaro Hara <har...@chromium.org>
              Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
              Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
              Gerrit-Attention: Jingyun Liu <jin...@google.com>
              Gerrit-Attention: Devin Cabillo <devinc...@google.com>
              Gerrit-Comment-Date: Tue, 24 Feb 2026 21:34:13 +0000
              Gerrit-HasComments: No
              Gerrit-Has-Labels: Yes
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              gwsq (Gerrit)

              unread,
              Feb 24, 2026, 4:44:10 PM (7 days ago) Feb 24
              to Devin Cabillo, Chromium IPC Reviews, Elly FJ, Nico Weber, Jeremy Roman, Nathan Memmott, Jerome Jiang, Mirko Bonadei, AyeAye, Jingyun Liu, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
              Attention needed from Elly FJ, Jeremy Roman, Jingyun Liu and Nico Weber

              Message from gwsq

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

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

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


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

              Open in Gerrit

              Related details

              Attention is currently required from:
              • Elly FJ
              • Jeremy Roman
              • Jingyun Liu
              • Nico Weber
              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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
              Gerrit-Change-Number: 7568249
              Gerrit-PatchSet: 17
              Gerrit-Owner: Devin Cabillo <devinc...@google.com>
              Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
              Gerrit-Reviewer: Elly FJ <elly...@chromium.org>
              Gerrit-Reviewer: Jeremy Roman <jbr...@chromium.org>
              Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
              Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
              Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
              Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
              Gerrit-CC: Jerome Jiang <ji...@chromium.org>
              Gerrit-CC: Jingyun Liu <jin...@google.com>
              Gerrit-CC: Kentaro Hara <har...@chromium.org>
              Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
              Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
              Gerrit-CC: gwsq
              Gerrit-Attention: Nico Weber <tha...@chromium.org>
              Gerrit-Attention: Elly FJ <elly...@chromium.org>
              Gerrit-Attention: Jeremy Roman <jbr...@chromium.org>
              Gerrit-Attention: Jingyun Liu <jin...@google.com>
              Gerrit-Comment-Date: Tue, 24 Feb 2026 21:44:02 +0000
              Gerrit-HasComments: No
              Gerrit-Has-Labels: No
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Jingyun Liu (Gerrit)

              unread,
              Feb 24, 2026, 5:10:30 PM (7 days ago) Feb 24
              to Devin Cabillo, Chromium IPC Reviews, Elly FJ, Nico Weber, Jeremy Roman, Nathan Memmott, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
              Attention needed from Devin Cabillo, Elly FJ, Jeremy Roman and Nico Weber

              Jingyun Liu voted Code-Review+1

              Code-Review+1
              Open in Gerrit

              Related details

              Attention is currently required from:
              • Devin Cabillo
              • Elly FJ
              • Jeremy Roman
              • Nico Weber
              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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
                Gerrit-Change-Number: 7568249
                Gerrit-PatchSet: 17
                Gerrit-Owner: Devin Cabillo <devinc...@google.com>
                Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
                Gerrit-Reviewer: Elly FJ <elly...@chromium.org>
                Gerrit-Reviewer: Jeremy Roman <jbr...@chromium.org>
                Gerrit-Reviewer: Jingyun Liu <jin...@google.com>
                Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
                Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
                Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
                Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
                Gerrit-CC: Jerome Jiang <ji...@chromium.org>
                Gerrit-CC: Kentaro Hara <har...@chromium.org>
                Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
                Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                Gerrit-CC: gwsq
                Gerrit-Attention: Nico Weber <tha...@chromium.org>
                Gerrit-Attention: Elly FJ <elly...@chromium.org>
                Gerrit-Attention: Jeremy Roman <jbr...@chromium.org>
                Gerrit-Attention: Devin Cabillo <devinc...@google.com>
                Gerrit-Comment-Date: Tue, 24 Feb 2026 22:10:23 +0000
                Gerrit-HasComments: No
                Gerrit-Has-Labels: Yes
                satisfied_requirement
                unsatisfied_requirement
                open
                diffy

                Jeremy Roman (Gerrit)

                unread,
                Feb 24, 2026, 7:44:44 PM (7 days ago) Feb 24
                to Devin Cabillo, Jeremy Roman, Jingyun Liu, Chromium IPC Reviews, Elly FJ, Nico Weber, Nathan Memmott, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                Attention needed from Devin Cabillo, Elly FJ and Nico Weber

                Jeremy Roman voted Code-Review+1

                Code-Review+1
                Open in Gerrit

                Related details

                Attention is currently required from:
                • Devin Cabillo
                • Elly FJ
                • Nico Weber
                Gerrit-Attention: Devin Cabillo <devinc...@google.com>
                Gerrit-Comment-Date: Wed, 25 Feb 2026 00:44:36 +0000
                Gerrit-HasComments: No
                Gerrit-Has-Labels: Yes
                satisfied_requirement
                unsatisfied_requirement
                open
                diffy

                Elly FJ (Gerrit)

                unread,
                Feb 25, 2026, 10:56:15 AM (6 days ago) Feb 25
                to Devin Cabillo, Jeremy Roman, Jingyun Liu, Chromium IPC Reviews, Elly FJ, Nico Weber, Nathan Memmott, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                Attention needed from Devin Cabillo and Nico Weber

                Elly FJ added 3 comments

                Patchset-level comments
                File-level comment, Patchset 17 (Latest):
                Elly FJ . resolved

                hi!

                for ipc review we generally prefer to see the interface and its browser-side implementation together - it's often impossible to assess the security impact of an IPC method without knowing at least roughly how it's going to work.

                Commit Message
                Line 7, Patchset 17 (Latest):Create renderer side code for ai taxonomy API

                Feature currently disabled and returns an empty promise
                pending browser side implementation and link
                Elly FJ . unresolved

                there isn't enough info either here or on the linked bug for me to do a meaningful IPC review. In particular:

                • What is this API supposed to do?
                • Who will call it and who will implement it?
                • What data will be passed where and by whom?
                • If text is being parsed (it sounds like it is), where does that occur?
                File third_party/blink/public/mojom/ai/ai_classifier.mojom
                Line 13, Patchset 17 (Latest):// Defined locally to avoid touching ai_manager.mojom for now.
                Elly FJ . unresolved

                why is it desirable to avoid touching ai_manager.mojom?

                Open in Gerrit

                Related details

                Attention is currently required from:
                • Devin Cabillo
                • Nico Weber
                Submit Requirements:
                  • requirement satisfiedCode-Coverage
                  • requirement is not satisfiedCode-Owners
                  • requirement satisfiedCode-Review
                  • requirement is not satisfiedNo-Unresolved-Comments
                  • requirement satisfiedReview-Enforcement
                  Gerrit-Attention: Devin Cabillo <devinc...@google.com>
                  Gerrit-Comment-Date: Wed, 25 Feb 2026 15:56:07 +0000
                  Gerrit-HasComments: Yes
                  Gerrit-Has-Labels: No
                  satisfied_requirement
                  unsatisfied_requirement
                  open
                  diffy

                  Devin Cabillo (Gerrit)

                  unread,
                  Feb 25, 2026, 11:33:24 AM (6 days ago) Feb 25
                  to Jeremy Roman, Jingyun Liu, Chromium IPC Reviews, Elly FJ, Nico Weber, Nathan Memmott, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                  Attention needed from Elly FJ and Nico Weber

                  Devin Cabillo added 2 comments

                  Commit Message
                  Line 7, Patchset 17 (Latest):Create renderer side code for ai taxonomy API

                  Feature currently disabled and returns an empty promise
                  pending browser side implementation and link
                  Elly FJ . unresolved

                  there isn't enough info either here or on the linked bug for me to do a meaningful IPC review. In particular:

                  • What is this API supposed to do?
                  • Who will call it and who will implement it?
                  • What data will be passed where and by whom?
                  • If text is being parsed (it sounds like it is), where does that occur?

                  What is this API supposed to do?

                  • It will be used as in devTrial for adds to perform Taxonomy on Webpages

                  Who will call it and who will implement it?

                  • It should be an open endpoint eventually for developers, but for now it will be a built in API to pass text to and provide IAB Taxonomies. Most of the logic will is stubbed out right now. I am working in parallel with some pending work and will begin implementing the browser process which will then pass the logic to optimization_guide

                  What data will be passed where and by whom?

                  • For the DevTrial we will be focused on the developer(Ads) passing a simple text string (the input to be classified) and an optional dictionary of settings

                  If text is being parsed (it sounds like it is), where does that occur?

                  • In the Blink (Renderer) layer, the text is treated strictly as a string. No linguistic parsing or tokenization occurs in the rendering engine. The string is serialized and passed across the Mojo IPC boundary to the Browser process. The actual "parsing" (tokenization, embedding, and model inference) happens safely inside the underlying AI execution engine
                  File third_party/blink/public/mojom/ai/ai_classifier.mojom
                  Line 13, Patchset 17 (Latest):// Defined locally to avoid touching ai_manager.mojom for now.
                  Elly FJ . unresolved

                  why is it desirable to avoid touching ai_manager.mojom?

                  Devin Cabillo

                  The goal is to keep this CL strictly scoped to the Blink/Renderer API surface (IDL and bindings) and land the feature incrementally.

                  Touching ai_manager.mojom requires crossing the IPC boundary, which would force us to introduce browser-process boilerplate and stub implementations for the AIManager receivers just to satisfy the compiler. By keeping the stub entirely within Blink for now, we can land the web-facing API shape and unblock the Web Platform Tests independently. The Mojom changes and browser-process plumbing will be introduced in a focused follow-up cl alongside the actual backend integration.

                  Open in Gerrit

                  Related details

                  Attention is currently required from:
                  • Elly FJ
                  • Nico Weber
                  Gerrit-Attention: Elly FJ <elly...@chromium.org>
                  Gerrit-Comment-Date: Wed, 25 Feb 2026 16:33:14 +0000
                  Gerrit-HasComments: Yes
                  Gerrit-Has-Labels: No
                  Comment-In-Reply-To: Elly FJ <elly...@chromium.org>
                  satisfied_requirement
                  unsatisfied_requirement
                  open
                  diffy

                  Elly FJ (Gerrit)

                  unread,
                  Feb 25, 2026, 3:30:53 PM (6 days ago) Feb 25
                  to Devin Cabillo, Jeremy Roman, Jingyun Liu, Chromium IPC Reviews, Elly FJ, Nico Weber, Nathan Memmott, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                  Attention needed from Devin Cabillo and Nico Weber

                  Elly FJ added 1 comment

                  File third_party/blink/public/mojom/ai/ai_classifier.mojom
                  Line 13, Patchset 17:// Defined locally to avoid touching ai_manager.mojom for now.
                  Elly FJ . unresolved

                  why is it desirable to avoid touching ai_manager.mojom?

                  Devin Cabillo

                  The goal is to keep this CL strictly scoped to the Blink/Renderer API surface (IDL and bindings) and land the feature incrementally.

                  Touching ai_manager.mojom requires crossing the IPC boundary, which would force us to introduce browser-process boilerplate and stub implementations for the AIManager receivers just to satisfy the compiler. By keeping the stub entirely within Blink for now, we can land the web-facing API shape and unblock the Web Platform Tests independently. The Mojom changes and browser-process plumbing will be introduced in a focused follow-up cl alongside the actual backend integration.

                  Elly FJ

                  Okay - this is fine, but please mark the methods with:

                  ```
                  [RuntimeFeature=mojo_base.mojom.kMojomWorkInProgress]
                  ```

                  so that there is no chance this code will become callable without another IPC review once it's implemented.

                  Open in Gerrit

                  Related details

                  Attention is currently required from:
                  • Devin Cabillo
                  • Nico Weber
                  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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
                  Gerrit-Change-Number: 7568249
                  Gerrit-PatchSet: 18
                  Gerrit-Owner: Devin Cabillo <devinc...@google.com>
                  Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
                  Gerrit-Reviewer: Elly FJ <elly...@chromium.org>
                  Gerrit-Reviewer: Jeremy Roman <jbr...@chromium.org>
                  Gerrit-Reviewer: Jingyun Liu <jin...@google.com>
                  Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
                  Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
                  Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
                  Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
                  Gerrit-CC: Jerome Jiang <ji...@chromium.org>
                  Gerrit-CC: Kentaro Hara <har...@chromium.org>
                  Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
                  Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                  Gerrit-CC: gwsq
                  Gerrit-Attention: Nico Weber <tha...@chromium.org>
                  Gerrit-Attention: Devin Cabillo <devinc...@google.com>
                  Gerrit-Comment-Date: Wed, 25 Feb 2026 20:30:43 +0000
                  Gerrit-HasComments: Yes
                  Gerrit-Has-Labels: No
                  Comment-In-Reply-To: Elly FJ <elly...@chromium.org>
                  Comment-In-Reply-To: Devin Cabillo <devinc...@google.com>
                  satisfied_requirement
                  unsatisfied_requirement
                  open
                  diffy

                  Devin Cabillo (Gerrit)

                  unread,
                  Feb 27, 2026, 2:04:17 PM (4 days ago) Feb 27
                  to Jeremy Roman, Jingyun Liu, Chromium IPC Reviews, Elly FJ, Nico Weber, Nathan Memmott, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                  Attention needed from Elly FJ, Jeremy Roman, Jingyun Liu, Nathan Memmott and Nico Weber

                  Devin Cabillo added 2 comments

                  Commit Message
                  Line 7, Patchset 17:Create renderer side code for ai taxonomy API


                  Feature currently disabled and returns an empty promise
                  pending browser side implementation and link
                  Elly FJ . resolved

                  there isn't enough info either here or on the linked bug for me to do a meaningful IPC review. In particular:

                  • What is this API supposed to do?
                  • Who will call it and who will implement it?
                  • What data will be passed where and by whom?
                  • If text is being parsed (it sounds like it is), where does that occur?
                  Devin Cabillo

                  Hey Elly, here is the PRD and the Design:
                  https://docs.google.com/document/d/1O9bLaEjw2yPHJbaCj3hpJEsJv6AyG4ImoZ7GS1n_PZU/edit?resourcekey=0-inRjASFWJ8TQJitvYB3pmg&tab=t.8apz1rfusva5#heading=h.kfr7kq8gx8kd

                  https://docs.google.com/document/d/1S7sgrzWfa6gYM3FlsDkDOiBX2_DxvgGoBg0DvbbpJIk/edit?tab=t.0#heading=h.zb0ykjxj32vk

                  What is this API supposed to do?

                  • It will be used as in devTrial for adds to perform Taxonomy on Webpages

                  Who will call it and who will implement it?

                  • It should be an open endpoint eventually for developers, but for now it will be a built in API to pass text to and provide IAB Taxonomies. Most of the logic will is stubbed out right now. I am working in parallel with some pending work and will begin implementing the browser process which will then pass the logic to optimization_guide

                  What data will be passed where and by whom?

                  • For the DevTrial we will be focused on the developer(Ads) passing a simple text string (the input to be classified) and an optional dictionary of settings

                  If text is being parsed (it sounds like it is), where does that occur?

                  • In the Blink (Renderer) layer, the text is treated strictly as a string. No linguistic parsing or tokenization occurs in the rendering engine. The string is serialized and passed across the Mojo IPC boundary to the Browser process. The actual "parsing" (tokenization, embedding, and model inference) happens safely inside the underlying AI execution engine
                  Devin Cabillo

                  Done

                  File third_party/blink/public/mojom/ai/ai_classifier.mojom
                  Line 13, Patchset 17:// Defined locally to avoid touching ai_manager.mojom for now.
                  Elly FJ . resolved

                  why is it desirable to avoid touching ai_manager.mojom?

                  Devin Cabillo

                  The goal is to keep this CL strictly scoped to the Blink/Renderer API surface (IDL and bindings) and land the feature incrementally.

                  Touching ai_manager.mojom requires crossing the IPC boundary, which would force us to introduce browser-process boilerplate and stub implementations for the AIManager receivers just to satisfy the compiler. By keeping the stub entirely within Blink for now, we can land the web-facing API shape and unblock the Web Platform Tests independently. The Mojom changes and browser-process plumbing will be introduced in a focused follow-up cl alongside the actual backend integration.

                  Elly FJ

                  Okay - this is fine, but please mark the methods with:

                  ```
                  [RuntimeFeature=mojo_base.mojom.kMojomWorkInProgress]
                  ```

                  so that there is no chance this code will become callable without another IPC review once it's implemented.

                  Devin Cabillo

                  Done

                  Open in Gerrit

                  Related details

                  Attention is currently required from:
                  • Elly FJ
                  • Jeremy Roman
                  • Jingyun Liu
                  • Nathan Memmott
                  • Nico Weber
                  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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
                    Gerrit-Change-Number: 7568249
                    Gerrit-PatchSet: 21
                    Gerrit-Owner: Devin Cabillo <devinc...@google.com>
                    Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
                    Gerrit-Reviewer: Elly FJ <elly...@chromium.org>
                    Gerrit-Reviewer: Jeremy Roman <jbr...@chromium.org>
                    Gerrit-Reviewer: Jingyun Liu <jin...@google.com>
                    Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
                    Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
                    Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
                    Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
                    Gerrit-CC: Jerome Jiang <ji...@chromium.org>
                    Gerrit-CC: Kentaro Hara <har...@chromium.org>
                    Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
                    Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                    Gerrit-CC: gwsq
                    Gerrit-Attention: Nico Weber <tha...@chromium.org>
                    Gerrit-Attention: Nathan Memmott <mem...@chromium.org>
                    Gerrit-Attention: Elly FJ <elly...@chromium.org>
                    Gerrit-Attention: Jeremy Roman <jbr...@chromium.org>
                    Gerrit-Attention: Jingyun Liu <jin...@google.com>
                    Gerrit-Comment-Date: Fri, 27 Feb 2026 19:04:09 +0000
                    satisfied_requirement
                    unsatisfied_requirement
                    open
                    diffy

                    gwsq (Gerrit)

                    unread,
                    Feb 27, 2026, 2:07:54 PM (4 days ago) Feb 27
                    to Devin Cabillo, Chromium IPC Reviews, Daniel Cheng, Jeremy Roman, Jingyun Liu, Elly FJ, Nico Weber, Nathan Memmott, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                    Attention needed from Daniel Cheng, Elly FJ, Jeremy Roman, Jingyun Liu, Nathan Memmott and Nico Weber

                    Message from gwsq

                    From googleclient/chrome/chromium_gwsq/ipc/config.gwsq:
                    IPC: dch...@chromium.org, elly...@chromium.org

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

                    IPC reviewer(s): dch...@chromium.org, elly...@chromium.org


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

                    Open in Gerrit

                    Related details

                    Attention is currently required from:
                    • Daniel Cheng
                    • Elly FJ
                    • Jeremy Roman
                    • Jingyun Liu
                    • Nathan Memmott
                    • Nico Weber
                    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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
                    Gerrit-Change-Number: 7568249
                    Gerrit-PatchSet: 21
                    Gerrit-Owner: Devin Cabillo <devinc...@google.com>
                    Gerrit-Reviewer: Daniel Cheng <dch...@chromium.org>
                    Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
                    Gerrit-Reviewer: Elly FJ <elly...@chromium.org>
                    Gerrit-Reviewer: Jeremy Roman <jbr...@chromium.org>
                    Gerrit-Reviewer: Jingyun Liu <jin...@google.com>
                    Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
                    Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
                    Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
                    Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
                    Gerrit-CC: Jerome Jiang <ji...@chromium.org>
                    Gerrit-CC: Kentaro Hara <har...@chromium.org>
                    Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
                    Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                    Gerrit-CC: gwsq
                    Gerrit-Attention: Nico Weber <tha...@chromium.org>
                    Gerrit-Attention: Nathan Memmott <mem...@chromium.org>
                    Gerrit-Attention: Elly FJ <elly...@chromium.org>
                    Gerrit-Attention: Jeremy Roman <jbr...@chromium.org>
                    Gerrit-Attention: Jingyun Liu <jin...@google.com>
                    Gerrit-Attention: Daniel Cheng <dch...@chromium.org>
                    Gerrit-Comment-Date: Fri, 27 Feb 2026 19:07:46 +0000
                    Gerrit-HasComments: No
                    Gerrit-Has-Labels: No
                    satisfied_requirement
                    unsatisfied_requirement
                    open
                    diffy

                    Elly FJ (Gerrit)

                    unread,
                    Feb 27, 2026, 4:17:19 PM (4 days ago) Feb 27
                    to Devin Cabillo, Elly FJ, Chromium IPC Reviews, Daniel Cheng, Jeremy Roman, Jingyun Liu, Nico Weber, Nathan Memmott, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                    Attention needed from Daniel Cheng, Devin Cabillo, Jeremy Roman, Jingyun Liu, Nathan Memmott and Nico Weber

                    Elly FJ voted and added 1 comment

                    Votes added by Elly FJ

                    Code-Review+1

                    1 comment

                    Patchset-level comments
                    Open in Gerrit

                    Related details

                    Attention is currently required from:
                    • Daniel Cheng
                    • Devin Cabillo
                    • Jeremy Roman
                    • Jingyun Liu
                    • Nathan Memmott
                    • Nico Weber
                      Submit Requirements:
                      • requirement satisfiedCode-Coverage
                      • requirement satisfiedCode-Owners
                      • requirement is not satisfiedCode-Review
                      • requirement satisfiedReview-Enforcement
                      Gerrit-Attention: Jeremy Roman <jbr...@chromium.org>
                      Gerrit-Attention: Jingyun Liu <jin...@google.com>
                      Gerrit-Attention: Devin Cabillo <devinc...@google.com>
                      Gerrit-Attention: Daniel Cheng <dch...@chromium.org>
                      Gerrit-Comment-Date: Fri, 27 Feb 2026 21:17:09 +0000
                      Gerrit-HasComments: Yes
                      Gerrit-Has-Labels: Yes
                      satisfied_requirement
                      unsatisfied_requirement
                      open
                      diffy

                      Nathan Memmott (Gerrit)

                      unread,
                      Feb 27, 2026, 4:21:51 PM (4 days ago) Feb 27
                      to Devin Cabillo, Elly FJ, Chromium IPC Reviews, Daniel Cheng, Jeremy Roman, Jingyun Liu, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                      Attention needed from Daniel Cheng, Devin Cabillo, Jeremy Roman, Jingyun Liu and Nico Weber

                      Nathan Memmott voted Code-Review+1

                      Code-Review+1
                      Open in Gerrit

                      Related details

                      Attention is currently required from:
                      • Daniel Cheng
                      • Devin Cabillo
                      • Jeremy Roman
                      • Jingyun Liu
                      • Nico Weber
                      Submit Requirements:
                        • requirement satisfiedCode-Coverage
                        • requirement satisfiedCode-Owners
                        • requirement satisfiedCode-Review
                        • requirement satisfiedReview-Enforcement
                        Gerrit-Attention: Jeremy Roman <jbr...@chromium.org>
                        Gerrit-Attention: Jingyun Liu <jin...@google.com>
                        Gerrit-Attention: Devin Cabillo <devinc...@google.com>
                        Gerrit-Attention: Daniel Cheng <dch...@chromium.org>
                        Gerrit-Comment-Date: Fri, 27 Feb 2026 21:21:44 +0000
                        Gerrit-HasComments: No
                        Gerrit-Has-Labels: Yes
                        satisfied_requirement
                        open
                        diffy

                        Devin Cabillo (Gerrit)

                        unread,
                        Feb 27, 2026, 4:22:19 PM (4 days ago) Feb 27
                        to Nathan Memmott, Elly FJ, Chromium IPC Reviews, Daniel Cheng, Jeremy Roman, Jingyun Liu, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                        Attention needed from Daniel Cheng, Jeremy Roman, Jingyun Liu and Nico Weber

                        Devin Cabillo voted Commit-Queue+2

                        Commit-Queue+2
                        Open in Gerrit

                        Related details

                        Attention is currently required from:
                        • Daniel Cheng
                        Gerrit-Attention: Daniel Cheng <dch...@chromium.org>
                        Gerrit-Comment-Date: Fri, 27 Feb 2026 21:22:12 +0000
                        Gerrit-HasComments: No
                        Gerrit-Has-Labels: Yes
                        satisfied_requirement
                        open
                        diffy

                        Blink W3C Test Autoroller (Gerrit)

                        unread,
                        Feb 27, 2026, 4:29:24 PM (4 days ago) Feb 27
                        to Devin Cabillo, Nathan Memmott, Elly FJ, Chromium IPC Reviews, Daniel Cheng, Jeremy Roman, Jingyun Liu, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                        Attention needed from Daniel Cheng, Jeremy Roman, Jingyun Liu and Nico Weber

                        Message from Blink W3C Test Autoroller

                        Exportable changes to web-platform-tests were detected in this CL and a pull request in the upstream repo has been made: https://github.com/web-platform-tests/wpt/pull/58120.

                        When this CL lands, the bot will automatically merge the PR on GitHub if the required GitHub checks pass; otherwise, ecosystem-infra@ team will triage the failures and may contact you.

                        WPT Export docs:
                        https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md#Automatic-export-process

                        Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
                        Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
                        Gerrit-CC: Jerome Jiang <ji...@chromium.org>
                        Gerrit-CC: Kentaro Hara <har...@chromium.org>
                        Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
                        Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                        Gerrit-CC: gwsq
                        Gerrit-Attention: Nico Weber <tha...@chromium.org>
                        Gerrit-Attention: Jeremy Roman <jbr...@chromium.org>
                        Gerrit-Attention: Jingyun Liu <jin...@google.com>
                        Gerrit-Attention: Daniel Cheng <dch...@chromium.org>
                        Gerrit-Comment-Date: Fri, 27 Feb 2026 21:29:16 +0000
                        Gerrit-HasComments: No
                        Gerrit-Has-Labels: No
                        satisfied_requirement
                        open
                        diffy

                        Daniel Cheng (Gerrit)

                        unread,
                        Feb 27, 2026, 4:32:02 PM (4 days ago) Feb 27
                        to Devin Cabillo, Blink W3C Test Autoroller, Nathan Memmott, Elly FJ, Chromium IPC Reviews, Daniel Cheng, Jeremy Roman, Jingyun Liu, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                        Attention needed from Devin Cabillo, Jeremy Roman, Jingyun Liu and Nico Weber

                        Daniel Cheng added 8 comments

                        File third_party/blink/renderer/modules/ai/classifier.h
                        Line 53, Patchset 21 (Latest): void remoteExecute(
                        Daniel Cheng . unresolved

                        Is this actually an IDL-exposed method? Its naming suggests that it is... but it seems like it's an implementation detail (in which case the proper name is `RemoteExecute`).

                        Line 25, Patchset 21 (Latest): AIWritingAssistanceBase<Classifier,
                        Daniel Cheng . unresolved

                        Not introduced by this CL, but this class could benefit from some high-level comments. I had to do a lot of background reading to start to understand the Blink plumbing.

                        File third_party/blink/renderer/modules/ai/classifier.cc
                        Line 22, Patchset 21 (Latest): // TODO(crbug.com/483707607): INTENTIONALLY EMPTY, Browser side code for
                        Daniel Cheng . unresolved

                        I don't quite understand why this references the browser here; this code is in the renderer?

                        Line 57, Patchset 21 (Latest): std::string function_name) {
                        Daniel Cheng . unresolved

                        Don't pass std::string by value unless you're planning on taking ownership of the std::string here.

                        Unfortunately it's really hard to figure out what the right thing is here because so much of the functionality is missing in this CL...

                        Line 58, Patchset 21 (Latest): // No-op
                        Daniel Cheng . unresolved

                        I can't tell–is this a no-op because it's not implemented yet, or because it's always going to be a no-op?

                        Line 149, Patchset 21 (Latest): if (!ai_manager_remote.is_connected()) {
                        Daniel Cheng . unresolved

                        How can this happen? It's not clear to me why other places in Blink are checking if this is connected either. Mojo message pipes don't just randomly become disconnected.

                        Line 167, Patchset 21 (Latest): task_runner,
                        Daniel Cheng . unresolved
                        Nit:
                        ```suggestion
                        std::move(task_runner),
                        ```
                        Line 182, Patchset 21 (Latest): // Intentionally empty.
                        Daniel Cheng . unresolved

                        Similarly here: is this empty because it's a "to implement" kind of thing, or something else?

                        Open in Gerrit

                        Related details

                        Attention is currently required from:
                        • Devin Cabillo
                        • Jeremy Roman
                        • Jingyun Liu
                        • Nico Weber
                          Submit Requirements:
                            • requirement satisfiedCode-Coverage
                            • requirement satisfiedCode-Owners
                            • requirement satisfiedCode-Review
                            • requirement is not satisfiedNo-Unresolved-Comments
                            • requirement satisfiedReview-Enforcement
                            Gerrit-Attention: Devin Cabillo <devinc...@google.com>
                            Gerrit-Comment-Date: Fri, 27 Feb 2026 21:31:55 +0000
                            Gerrit-HasComments: Yes
                            Gerrit-Has-Labels: No
                            satisfied_requirement
                            unsatisfied_requirement
                            open
                            diffy

                            Daniel Cheng (Gerrit)

                            unread,
                            Feb 27, 2026, 5:29:38 PM (4 days ago) Feb 27
                            to Devin Cabillo, Blink W3C Test Autoroller, Nathan Memmott, Elly FJ, Chromium IPC Reviews, Daniel Cheng, Jeremy Roman, Jingyun Liu, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                            Attention needed from Devin Cabillo, Jeremy Roman, Jingyun Liu and Nico Weber

                            Daniel Cheng added 2 comments

                            Patchset-level comments
                            Daniel Cheng . unresolved

                            Also, is there an intent to experiment/prototype/et cetera given that this is a web-exposed change?

                            File third_party/blink/renderer/modules/ai/classifier.cc
                            Line 199, Patchset 21 (Latest): const_cast<ClassifierCreateOptions*>(options),
                            Daniel Cheng . unresolved

                            Just don't mark the parameter const so we don't need to cast away constness.

                            Gerrit-Comment-Date: Fri, 27 Feb 2026 22:29:31 +0000
                            Gerrit-HasComments: Yes
                            Gerrit-Has-Labels: No
                            satisfied_requirement
                            unsatisfied_requirement
                            open
                            diffy

                            Devin Cabillo (Gerrit)

                            unread,
                            Feb 27, 2026, 6:56:32 PM (4 days ago) Feb 27
                            to Blink W3C Test Autoroller, Nathan Memmott, Elly FJ, Chromium IPC Reviews, Daniel Cheng, Jeremy Roman, Jingyun Liu, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                            Attention needed from Daniel Cheng, Elly FJ, Jeremy Roman, Jingyun Liu, Nathan Memmott and Nico Weber

                            Devin Cabillo added 10 comments

                            Patchset-level comments
                            File-level comment, Patchset 21:
                            Daniel Cheng . resolved

                            Also, is there an intent to experiment/prototype/et cetera given that this is a web-exposed change?

                            Devin Cabillo

                            There is no Intent to Prototype (I2P) thread yet. Right now, we are strictly in an early technical exploration phase. The immediate goal is just to land the foundational plumbing behind a disabled-by-default runtime flag so we can plug in a model, evaluate its performance/viability locally, and finalize the API shape. Once we have validated the model and are actually ready to propose this for wider experimentation or an Origin Trial, we will absolutely send out the formal I2P to blink-dev.

                            File third_party/blink/renderer/modules/ai/classifier.h
                            Line 53, Patchset 21: void remoteExecute(
                            Daniel Cheng . resolved

                            Is this actually an IDL-exposed method? Its naming suggests that it is... but it seems like it's an implementation detail (in which case the proper name is `RemoteExecute`).

                            Devin Cabillo

                            This is a virtual method inherited from AIWritingAssistanceBase. I've kept it as remoteExecute here to satisfy the override, but I will file a follow-up bug to rename it across all the AI APIs (Summarizer, Writer, etc.) so we don't balloon the scope of this specific CL.

                            Line 25, Patchset 21: AIWritingAssistanceBase<Classifier,
                            Daniel Cheng . resolved

                            Not introduced by this CL, but this class could benefit from some high-level comments. I had to do a lot of background reading to start to understand the Blink plumbing.

                            Devin Cabillo

                            Done

                            File third_party/blink/renderer/modules/ai/classifier.cc
                            Line 22, Patchset 21: // TODO(crbug.com/483707607): INTENTIONALLY EMPTY, Browser side code for
                            Daniel Cheng . resolved

                            I don't quite understand why this references the browser here; this code is in the renderer?

                            Devin Cabillo

                            Done

                            Line 57, Patchset 21: std::string function_name) {
                            Daniel Cheng . resolved

                            Don't pass std::string by value unless you're planning on taking ownership of the std::string here.

                            Unfortunately it's really hard to figure out what the right thing is here because so much of the functionality is missing in this CL...

                            Devin Cabillo

                            Also inherited from WritingAssistantBase, creating bug to address updates to WebAI apis using WritingAssistantBase.

                            Line 58, Patchset 21: // No-op
                            Daniel Cheng . resolved

                            I can't tell–is this a no-op because it's not implemented yet, or because it's always going to be a no-op?

                            Devin Cabillo

                            Done

                            Line 149, Patchset 21: if (!ai_manager_remote.is_connected()) {
                            Daniel Cheng . resolved

                            How can this happen? It's not clear to me why other places in Blink are checking if this is connected either. Mojo message pipes don't just randomly become disconnected.

                            Devin Cabillo

                            Done

                            Line 167, Patchset 21: task_runner,
                            Daniel Cheng . resolved
                            Nit:
                            ```suggestion
                            std::move(task_runner),
                            ```
                            Devin Cabillo

                            Done

                            Line 182, Patchset 21: // Intentionally empty.
                            Daniel Cheng . resolved

                            Similarly here: is this empty because it's a "to implement" kind of thing, or something else?

                            Devin Cabillo

                            Done

                            Line 199, Patchset 21: const_cast<ClassifierCreateOptions*>(options),
                            Daniel Cheng . resolved

                            Just don't mark the parameter const so we don't need to cast away constness.

                            Devin Cabillo

                            Done

                            Open in Gerrit

                            Related details

                            Attention is currently required from:
                            • Daniel Cheng
                            • Elly FJ
                            • Jeremy Roman
                            • Jingyun Liu
                            • Nathan Memmott
                            • Nico Weber
                            Submit Requirements:
                              • requirement satisfiedCode-Coverage
                              • requirement 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: I93f53ebb5d06c86a84a21f104b2e53ff78d8dedf
                              Gerrit-Change-Number: 7568249
                              Gerrit-PatchSet: 23
                              Gerrit-Owner: Devin Cabillo <devinc...@google.com>
                              Gerrit-Reviewer: Daniel Cheng <dch...@chromium.org>
                              Gerrit-Reviewer: Devin Cabillo <devinc...@google.com>
                              Gerrit-Reviewer: Elly FJ <elly...@chromium.org>
                              Gerrit-Reviewer: Jeremy Roman <jbr...@chromium.org>
                              Gerrit-Reviewer: Jingyun Liu <jin...@google.com>
                              Gerrit-Reviewer: Nathan Memmott <mem...@chromium.org>
                              Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
                              Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
                              Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
                              Gerrit-CC: Chromium IPC Reviews <chrome-ip...@google.com>
                              Gerrit-CC: Jerome Jiang <ji...@chromium.org>
                              Gerrit-CC: Kentaro Hara <har...@chromium.org>
                              Gerrit-CC: Mirko Bonadei <mbon...@chromium.org>
                              Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                              Gerrit-CC: gwsq
                              Gerrit-Attention: Nico Weber <tha...@chromium.org>
                              Gerrit-Attention: Nathan Memmott <mem...@chromium.org>
                              Gerrit-Attention: Elly FJ <elly...@chromium.org>
                              Gerrit-Attention: Jeremy Roman <jbr...@chromium.org>
                              Gerrit-Attention: Jingyun Liu <jin...@google.com>
                              Gerrit-Attention: Daniel Cheng <dch...@chromium.org>
                              Gerrit-Comment-Date: Fri, 27 Feb 2026 23:56:26 +0000
                              Gerrit-HasComments: Yes
                              Gerrit-Has-Labels: No
                              Comment-In-Reply-To: Daniel Cheng <dch...@chromium.org>
                              satisfied_requirement
                              unsatisfied_requirement
                              open
                              diffy

                              Nathan Memmott (Gerrit)

                              unread,
                              Feb 27, 2026, 6:59:35 PM (4 days ago) Feb 27
                              to Devin Cabillo, Blink W3C Test Autoroller, Elly FJ, Chromium IPC Reviews, Daniel Cheng, Jeremy Roman, Jingyun Liu, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                              Attention needed from Daniel Cheng, Devin Cabillo, Elly FJ, Jeremy Roman, Jingyun Liu and Nico Weber

                              Nathan Memmott voted Code-Review+1

                              Code-Review+1
                              Open in Gerrit

                              Related details

                              Attention is currently required from:
                              • Daniel Cheng
                              • Devin Cabillo
                              • Elly FJ
                              • Jeremy Roman
                              • Jingyun Liu
                              • Nico Weber
                              Submit Requirements:
                                • requirement satisfiedCode-Coverage
                                • requirement satisfiedCode-Owners
                                • requirement is not satisfiedCode-Review
                                • requirement satisfiedReview-Enforcement
                                Gerrit-Attention: Elly FJ <elly...@chromium.org>
                                Gerrit-Attention: Jeremy Roman <jbr...@chromium.org>
                                Gerrit-Attention: Jingyun Liu <jin...@google.com>
                                Gerrit-Attention: Devin Cabillo <devinc...@google.com>
                                Gerrit-Attention: Daniel Cheng <dch...@chromium.org>
                                Gerrit-Comment-Date: Fri, 27 Feb 2026 23:59:27 +0000
                                Gerrit-HasComments: No
                                Gerrit-Has-Labels: Yes
                                satisfied_requirement
                                unsatisfied_requirement
                                open
                                diffy

                                Jingyun Liu (Gerrit)

                                unread,
                                Feb 27, 2026, 7:00:06 PM (4 days ago) Feb 27
                                to Devin Cabillo, Nathan Memmott, Blink W3C Test Autoroller, Elly FJ, Chromium IPC Reviews, Daniel Cheng, Jeremy Roman, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                                Attention needed from Daniel Cheng, Devin Cabillo, Elly FJ, Jeremy Roman and Nico Weber

                                Jingyun Liu voted Code-Review+1

                                Code-Review+1
                                Open in Gerrit

                                Related details

                                Attention is currently required from:
                                • Daniel Cheng
                                • Devin Cabillo
                                • Elly FJ
                                • Jeremy Roman
                                • Nico Weber
                                Submit Requirements:
                                  • requirement satisfiedCode-Coverage
                                  • requirement satisfiedCode-Owners
                                  • requirement satisfiedCode-Review
                                  • requirement satisfiedReview-Enforcement
                                  Gerrit-Attention: Devin Cabillo <devinc...@google.com>
                                  Gerrit-Attention: Daniel Cheng <dch...@chromium.org>
                                  Gerrit-Comment-Date: Fri, 27 Feb 2026 23:59:58 +0000
                                  Gerrit-HasComments: No
                                  Gerrit-Has-Labels: Yes
                                  satisfied_requirement
                                  open
                                  diffy

                                  Daniel Cheng (Gerrit)

                                  unread,
                                  Mar 2, 2026, 4:39:28 PM (22 hours ago) Mar 2
                                  to Devin Cabillo, Daniel Cheng, Jingyun Liu, Nathan Memmott, Blink W3C Test Autoroller, Elly FJ, Chromium IPC Reviews, Jeremy Roman, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                                  Attention needed from Devin Cabillo, Elly FJ, Jeremy Roman and Nico Weber

                                  Daniel Cheng voted and added 1 comment

                                  Votes added by Daniel Cheng

                                  Code-Review+1

                                  1 comment

                                  Patchset-level comments
                                  Daniel Cheng . resolved

                                  Also, is there an intent to experiment/prototype/et cetera given that this is a web-exposed change?

                                  Devin Cabillo

                                  There is no Intent to Prototype (I2P) thread yet. Right now, we are strictly in an early technical exploration phase. The immediate goal is just to land the foundational plumbing behind a disabled-by-default runtime flag so we can plug in a model, evaluate its performance/viability locally, and finalize the API shape. Once we have validated the model and are actually ready to propose this for wider experimentation or an Origin Trial, we will absolutely send out the formal I2P to blink-dev.

                                  Daniel Cheng

                                  I talked offline with rbyers@ and we're OK to proceed as-is. Thanks.

                                  Open in Gerrit

                                  Related details

                                  Attention is currently required from:
                                  Gerrit-Comment-Date: Mon, 02 Mar 2026 21:39:21 +0000
                                  Gerrit-HasComments: Yes
                                  Gerrit-Has-Labels: Yes
                                  Comment-In-Reply-To: Devin Cabillo <devinc...@google.com>
                                  Comment-In-Reply-To: Daniel Cheng <dch...@chromium.org>
                                  satisfied_requirement
                                  open
                                  diffy

                                  Devin Cabillo (Gerrit)

                                  unread,
                                  Mar 2, 2026, 7:36:10 PM (19 hours ago) Mar 2
                                  to Daniel Cheng, Jingyun Liu, Nathan Memmott, Blink W3C Test Autoroller, Elly FJ, Chromium IPC Reviews, Jeremy Roman, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                                  Attention needed from Elly FJ, Jeremy Roman and Nico Weber

                                  Devin Cabillo voted Commit-Queue+2

                                  Commit-Queue+2
                                  Open in Gerrit

                                  Related details

                                  Attention is currently required from:
                                  Gerrit-Comment-Date: Tue, 03 Mar 2026 00:36:02 +0000
                                  Gerrit-HasComments: No
                                  Gerrit-Has-Labels: Yes
                                  satisfied_requirement
                                  open
                                  diffy

                                  Nathan Memmott (Gerrit)

                                  unread,
                                  Mar 2, 2026, 8:09:26 PM (19 hours ago) Mar 2
                                  to Devin Cabillo, Daniel Cheng, Jingyun Liu, Blink W3C Test Autoroller, Elly FJ, Chromium IPC Reviews, Jeremy Roman, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                                  Attention needed from Devin Cabillo, Elly FJ, Jeremy Roman and Nico Weber

                                  Nathan Memmott voted and added 1 comment

                                  Votes added by Nathan Memmott

                                  Code-Review-1

                                  1 comment

                                  Patchset-level comments
                                  File-level comment, Patchset 23 (Latest):
                                  Nathan Memmott . resolved

                                  Pausing this until further review.

                                  Open in Gerrit

                                  Related details

                                  Attention is currently required from:
                                  • Devin Cabillo
                                  • Elly FJ
                                  • Jeremy Roman
                                  • Nico Weber
                                    Submit Requirements:
                                      • requirement satisfiedCode-Coverage
                                      • requirement satisfiedCode-Owners
                                      • requirement is blockingCode-Review
                                      • requirement satisfiedReview-Enforcement
                                      Gerrit-Attention: Devin Cabillo <devinc...@google.com>
                                      Gerrit-Comment-Date: Tue, 03 Mar 2026 01:09:18 +0000
                                      Gerrit-HasComments: Yes
                                      Gerrit-Has-Labels: Yes
                                      satisfied_requirement
                                      blocking_requirement
                                      open
                                      diffy

                                      Nathan Memmott (Gerrit)

                                      unread,
                                      12:31 PM (2 hours ago) 12:31 PM
                                      to Devin Cabillo, Daniel Cheng, Jingyun Liu, Blink W3C Test Autoroller, Elly FJ, Chromium IPC Reviews, Jeremy Roman, Nico Weber, Jerome Jiang, Mirko Bonadei, AyeAye, Chromium LUCI CQ, AI Code Reviewer, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, cblume...@chromium.org, jz...@chromium.org, mar...@chromium.org, browser-comp...@chromium.org, feature-me...@chromium.org, chromotin...@chromium.org, fgal...@chromium.org, devtools...@chromium.org, chrome-intelligence-te...@google.com, penghuan...@chromium.org, grt+...@chromium.org, net-r...@chromium.org, fuzzin...@chromium.org, chrome-intell...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, ipc-securi...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                                      Attention needed from Devin Cabillo, Elly FJ, Jeremy Roman and Nico Weber

                                      Nathan Memmott voted Code-Review+0

                                      Code-Review+0
                                      Open in Gerrit

                                      Related details

                                      Attention is currently required from:
                                      • Devin Cabillo
                                      • Elly FJ
                                      • Jeremy Roman
                                      • Nico Weber
                                      Submit Requirements:
                                        • requirement satisfiedCode-Coverage
                                        • requirement satisfiedCode-Owners
                                        • requirement satisfiedCode-Review
                                        • requirement satisfiedReview-Enforcement
                                        Gerrit-Comment-Date: Tue, 03 Mar 2026 17:31:38 +0000
                                        Gerrit-HasComments: No
                                        Gerrit-Has-Labels: Yes
                                        satisfied_requirement
                                        open
                                        diffy
                                        Reply all
                                        Reply to author
                                        Forward
                                        0 new messages