)]}'
{
  "log": [
    {
      "commit": "1e5ddc63819ca53475cae1294695dcd3783442d3",
      "tree": "b207234f0c6b3930098c6050f7d3ff45eae8d2c4",
      "parents": [
        "00578607edd7183ea880e6143475c5afdd5c5d9d"
      ],
      "author": {
        "name": "Internal Frameworks Autoroller",
        "email": "bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com",
        "time": "Sun Sep 13 20:04:15 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Sep 13 20:20:33 2026"
      },
      "message": "[Frameworks roll] Roll to 980761003 piper revision\n\nChange-Id: I7ba40be20501682163b4fc6e4913dc3573e15e40\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8399759\nBot-Commit: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nCommit-Queue: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696993}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 49758425ef62f360f0bc80d25f4c56df51636b0e\n"
    },
    {
      "commit": "00578607edd7183ea880e6143475c5afdd5c5d9d",
      "tree": "6668dd39e0527554354df685eed5148d9150440a",
      "parents": [
        "497680302c6cf33d407dea3464d1ebac69fa1bf4"
      ],
      "author": {
        "name": "Internal Frameworks Autoroller",
        "email": "bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com",
        "time": "Sun Sep 13 08:09:05 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Sep 13 08:13:49 2026"
      },
      "message": "[Frameworks roll] Roll to 980579144 piper revision\n\nChange-Id: I710086dd5587de98e596a75126df6f34c4c0b630\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8403705\nBot-Commit: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nCommit-Queue: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696942}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a7aeeb914bc2c89b5c8e0324127aabf79b2c42bb\n"
    },
    {
      "commit": "497680302c6cf33d407dea3464d1ebac69fa1bf4",
      "tree": "febcb4e343c19e703502916ef38b8975f39d5da8",
      "parents": [
        "3e50c6a596e2ee0f44c87101e53df27a5bea13ee"
      ],
      "author": {
        "name": "Ibrahim Kanouche",
        "email": "kanouche@google.com",
        "time": "Sat Sep 12 23:09:24 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Sep 12 23:14:35 2026"
      },
      "message": "[Contextual Cueing] Implement Shopping vertical for PageClassificationService\n\nIntroduces ShoppingEligibilityVertical to evaluate whether a WebState\nqualifies for Shopping contextual cues using commerce::ShoppingService\nsignals (cached product info, host verification via IsShoppingPage, and\nproduct detail info via GetProductInfoForUrl).\n\nIntegrates the Shopping vertical into\nOptimizationGuidePageClassificationService to run concurrently with\nEducation evaluation, and wires commerce::ShoppingServiceFactory into\nPageClassificationServiceFactory.\n\nBug: 517561797\nChange-Id: Ia8ff9b3abc0bd6d6668a33e784799e170794666a\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8342195\nCommit-Queue: Ibrahim Kanouche \u003ckanouche@google.com\u003e\nAuto-Submit: Ibrahim Kanouche \u003ckanouche@google.com\u003e\nReviewed-by: Yasaman Sedaghat \u003cyasamans@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696896}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 75d5828034478ec697ffe53c6c15cad5e04083ee\n"
    },
    {
      "commit": "3e50c6a596e2ee0f44c87101e53df27a5bea13ee",
      "tree": "3e40cb100b7b72edc7f928276bd2a262cdf3d2e9",
      "parents": [
        "2c1db80377685ac62b7ec5a13552deeab6ca6426"
      ],
      "author": {
        "name": "Internal Frameworks Autoroller",
        "email": "bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com",
        "time": "Sat Sep 12 20:08:56 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Sep 12 20:16:50 2026"
      },
      "message": "[Frameworks roll] Roll to 980404652 piper revision\n\nChange-Id: I85a560729ccbdef62280044ed0115b009b8adaf0\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8392581\nBot-Commit: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nCommit-Queue: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696882}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ae38d9d47872e7b223bc5381ccd2157e67429c44\n"
    },
    {
      "commit": "2c1db80377685ac62b7ec5a13552deeab6ca6426",
      "tree": "d6762238e00e80b87cd3e52aeb1ea8e12aa0eefc",
      "parents": [
        "670ed76f3d3b092ab6a0ca9d9c5877bec3ad3973"
      ],
      "author": {
        "name": "Chrome Release Translations",
        "email": "mdb.chrome-release-translation-dump@google.com",
        "time": "Sat Sep 12 14:41:40 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Sep 12 14:47:04 2026"
      },
      "message": "Updating XTBs based on .GRDs from branch main\n\nBinary-Size: Size increase is unavoidable\nChange-Id: Icd69d03365e099bc33b9502733b0bafd8dea8744\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8399787\nBot-Commit: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nSLSA-Policy-Verified: SLSA Policy Verification Service \u003cdevtools-gerritcodereview-exitgate@google.com\u003e\nAuto-Submit: Chrome Release Translation Dump \u003cmdb.chrome-release-translation-dump@google.com\u003e\nCommit-Queue: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696855}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 1c888c05ac1effb376c5102bffddd54cf6fbf968\n"
    },
    {
      "commit": "670ed76f3d3b092ab6a0ca9d9c5877bec3ad3973",
      "tree": "dd8c5501c82d18c7bd63c7fb57af3ade790ea03d",
      "parents": [
        "989e7000515c0440624acddcfe6b9c8c60c0f4c5"
      ],
      "author": {
        "name": "Anuj Kumar",
        "email": "anujbh@google.com",
        "time": "Sat Sep 12 13:18:28 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Sep 12 13:23:45 2026"
      },
      "message": "[ios/web_view] Prevent crash in CWVUserContentController after shutdown\n\nWhen CWVWebViewConfiguration is shut down, its associated\nBrowserState is destroyed. Calling CWVUserContentController methods\nafter shutdown or when browserState is null causes a crash due to\ndereferencing a null BrowserState in\nWebViewMessageHandlerJavaScriptFeature::FromBrowserState().\n\nThis change:\n- Guards updatePageScripts, addMessageHandler:forCommand:,\n  removeMessageHandlerForCommand:, and\n  isMessageHandlerRegisteredForCommand: with checks for null\n  browserState.\n- Adds unit test coverage in CWVWebViewConfigurationTest.\n\nBug: None\nTest: CWVWebViewConfigurationTest.UserContentControllerShutDown\nChange-Id: Iba265ab556e84985906e0bfac0197a0a26b978f4\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8335267\nReviewed-by: Carlos Acosta \u003ccyacosta@google.com\u003e\nCommit-Queue: Anuj Kumar \u003canujbh@google.com\u003e\nReviewed-by: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696837}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 01c177e4a9642561bbe2cb1e74f27e138571cbbb\n"
    },
    {
      "commit": "989e7000515c0440624acddcfe6b9c8c60c0f4c5",
      "tree": "a82be8047509cc82d8e58c5834887b1fbab0d6ce",
      "parents": [
        "a9c06a80d5eed71cbff91e8e5e006f95a52c2e87"
      ],
      "author": {
        "name": "Internal Frameworks Autoroller",
        "email": "bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com",
        "time": "Sat Sep 12 13:17:15 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Sep 12 13:22:54 2026"
      },
      "message": "[Frameworks roll] Roll to 980224136 piper revision\n\nChange-Id: I297a2a0d5ef3e8403dbcc2475ba7e79aa8bc284f\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8394199\nBot-Commit: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nCommit-Queue: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696835}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ec5801761e2b19d6d55c4238db0a953dcc213d69\n"
    },
    {
      "commit": "a9c06a80d5eed71cbff91e8e5e006f95a52c2e87",
      "tree": "13e83fdbdca7ee193df589439a7d2cb98bf8c983",
      "parents": [
        "c21d827d4b6ba6ca4b165629131f0b7a2ae1ff1a"
      ],
      "author": {
        "name": "Tarek Makkouk",
        "email": "tarekmakkouk@google.com",
        "time": "Sat Sep 12 00:59:50 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Sep 12 01:12:33 2026"
      },
      "message": "[iOS] Record session metrics for first-time Gemini Live sessions\n\nTrigger Gemini Live session start when Live starts listening rather than\nsolely relying on mode switches. This ensures session start and duration\nmetrics are recorded during first-time onboarding once all required\npermissions and consent steps are completed.\n\nBug: 560296812\nChange-Id: I43e0d926dbdfc84e45d6c090e74c309864b73ed9\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8392921\nReviewed-by: Adam Arcaro \u003cadamta@google.com\u003e\nAuto-Submit: Tarek Makkouk \u003ctarekmakkouk@google.com\u003e\nCommit-Queue: Tarek Makkouk \u003ctarekmakkouk@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696754}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c72c3c22b1ac49b5a8a16ebdd0be44ca11128053\n"
    },
    {
      "commit": "c21d827d4b6ba6ca4b165629131f0b7a2ae1ff1a",
      "tree": "e0234dfd630483cbe38f71f1259ddebe348aa6a2",
      "parents": [
        "933a69a4e632b562322d594bcb8c983e9fdbc1f5"
      ],
      "author": {
        "name": "Pier-Alexandre Bouchard",
        "email": "pabouchard@google.com",
        "time": "Sat Sep 12 00:51:21 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Sep 12 01:11:15 2026"
      },
      "message": "[iOS] Emit user action when dismissing Passwords and Autofill tips promo\n\nRecords a user action when the Save Passwords or Autofill Passwords\npromo is dismissed and hooks this user action to level up.\n\nFixed: 544821925\nChange-Id: I4e49958b1ce205938b857643bf8f05cf376245da\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8400626\nCommit-Queue: Pier-Alexandre Bouchard \u003cpabouchard@google.com\u003e\nReviewed-by: Adam Arcaro \u003cadamta@google.com\u003e\nReviewed-by: Robbie Gibson \u003crkgibson@google.com\u003e\nAuto-Submit: Pier-Alexandre Bouchard \u003cpabouchard@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696747}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 5270ece8866beb413305ba06155596f8ae7516c5\n"
    },
    {
      "commit": "933a69a4e632b562322d594bcb8c983e9fdbc1f5",
      "tree": "7c84948b1716acd86f45833708cb46dfcbe6262f",
      "parents": [
        "15207310a840577b5a8c78e1339cda3956e5c394"
      ],
      "author": {
        "name": "Pier-Alexandre Bouchard",
        "email": "pabouchard@google.com",
        "time": "Sat Sep 12 00:47:38 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Sep 12 01:05:47 2026"
      },
      "message": "[iOS] Ensure completion snackbars are shown for completed tasks\n\nLevel Up completion snackbars were not always displayed when tasks were\ncompleted. This CL fixes action emission timing and presentation\nhandling so they appear reliably. By design, completion snackbars are\nsuppressed in Incognito.\n\nFixed: 544809151\nChange-Id: Iba2110ff97f48c7ebb1168909deb6c1de9f6f053\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8399926\nReviewed-by: Tommy Martino \u003ctmartino@chromium.org\u003e\nCommit-Queue: Pier-Alexandre Bouchard \u003cpabouchard@google.com\u003e\nReviewed-by: Robbie Gibson \u003crkgibson@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696745}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ca6b6feb7592b8aa88c6b03e9786666ab5a6ce18\n"
    },
    {
      "commit": "15207310a840577b5a8c78e1339cda3956e5c394",
      "tree": "94c5c455db47862c117e39e43587b7670a356448",
      "parents": [
        "e2449f7fe50f6c09ec5ad4cf461cfc96b28b2738"
      ],
      "author": {
        "name": "Mitsuru Oshima",
        "email": "oshima@chromium.org",
        "time": "Fri Sep 11 23:02:37 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 23:08:47 2026"
      },
      "message": "Make PlaceholderService::model_observers_ reentrant\n\nPlaceholderService::OnTemplateURLServiceChanged notifies observers,\nwhich can synchronously fetch icons and trigger\nOnIconReceivedForTemplateURL while still iterating. This caused\nreentrancy assertion failures. Use base::ReentrantObserverList to\nallow reentrant observer notifications.\n\nFixed: 551790763\nTAG\u003dagy\nCONV\u003dae2bad95-eadf-44cc-853f-94479c4218d0\n\nChange-Id: I8efd7482d43fdbec903f136ae06de9f0f86cfd7b\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8384417\nCommit-Queue: Mitsuru Oshima \u003coshima@chromium.org\u003e\nReviewed-by: Stepan Khapugin \u003cstkhapugin@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696693}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: afff0bb4d1dc9a9cdb3dec31c2e60c25ba130651\n"
    },
    {
      "commit": "e2449f7fe50f6c09ec5ad4cf461cfc96b28b2738",
      "tree": "e4d34bc8c06d338e0bd2ed4b3a234237680ff33f",
      "parents": [
        "8e34613d81b89b98358cb45825feec9948faa675"
      ],
      "author": {
        "name": "Cheick Cisse",
        "email": "cheickcisse@google.com",
        "time": "Fri Sep 11 22:33:14 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 22:39:55 2026"
      },
      "message": "[iOS] Add accessibility description for Default Browser PiP text video\n\nWhen kDefaultBrowserPipTextVideo is enabled, the default browser PiP\ndisplays a video with on-screen text instructions. This CL adds audio\ndescription of the text.\n\nFixed: 559795434\nChange-Id: I489469dac4e212802ea0e3e2aa557ff4f8b84875\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8400808\nReviewed-by: Pier-Alexandre Bouchard \u003cpabouchard@google.com\u003e\nAuto-Submit: Cheick Cisse \u003ccheickcisse@google.com\u003e\nCommit-Queue: Pier-Alexandre Bouchard \u003cpabouchard@google.com\u003e\nCommit-Queue: Cheick Cisse \u003ccheickcisse@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696665}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 10ae995a1f7cecae059837e81396aaf4b4cffcaf\n"
    },
    {
      "commit": "8e34613d81b89b98358cb45825feec9948faa675",
      "tree": "43ba1ce24fd83a828bd96921ff93ac5052e035da",
      "parents": [
        "f2319e67546f779f3868e41e631efc7714faf8e8"
      ],
      "author": {
        "name": "Chris Lu",
        "email": "thegreenfrog@google.com",
        "time": "Fri Sep 11 21:40:07 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 21:46:47 2026"
      },
      "message": "[ios]Fix static initializer in NewTabPageRedesignViewController\n\nkCustomizationMenuButtonLeadingMargin was defined in the anonymous\nnamespace as the sum of ntp_home::kIdentityAvatarPadding and\nntp_home::kHeaderIconMargin. Because both values are non-constexpr\n(extern const CGFloat), this created an unintended static initializer at\nmodule load time (_GLOBAL__sub_I_new_tab_page_redesign_view_controller.mm),\nfailing the static initializers check.\n\nRemove kCustomizationMenuButtonLeadingMargin and inline the margin\ncalculation directly where the layout constraint is added in\nviewDidLoad. Also make kMinDragHandleHeight constexpr.\n\nFixed: 560257488\nChange-Id: I9bd401e3c69e11d2194a9df94ce9f78faacbc522\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8399375\nReviewed-by: Adam Arcaro \u003cadamta@google.com\u003e\nCommit-Queue: Adam Arcaro \u003cadamta@google.com\u003e\nCommit-Queue: Chris Lu \u003cthegreenfrog@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696630}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a2c97856dabcba7d057b44364751d8f8a6ec4213\n"
    },
    {
      "commit": "f2319e67546f779f3868e41e631efc7714faf8e8",
      "tree": "3064a829a1d83e55d9ffffff2dac324155c6095c",
      "parents": [
        "1ca74425f65d9e70e5455646b5106dfe8ff99443"
      ],
      "author": {
        "name": "Krishna Govind",
        "email": "govind@chromium.org",
        "time": "Fri Sep 11 21:31:35 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 21:39:44 2026"
      },
      "message": "Revert \"Enable translation for Universal Opt-Out strings on iOS\"\n\nThis reverts commit f5c51b1a50d63c1b4ad5b087409db2863eb27386.\n\nReason for revert: crbug.com/560288479 (\nTranslation Extraction failure for profile \"ChromeClient)\n\nFailure Link: \u003cLINK TO FAILURE\u003e\n\nOriginal change\u0027s description:\n\u003e Enable translation for Universal Opt-Out strings on iOS\n\u003e\n\u003e Bug: b:522291279\n\u003e Change-Id: I65fe2ada19948994d242d5bc67421c1c87c2dac9\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8387397\n\u003e Reviewed-by: Zaina Al-Mashni \u003czalmashni@google.com\u003e\n\u003e Commit-Queue: Zaina Al-Mashni \u003czalmashni@google.com\u003e\n\u003e Auto-Submit: Azamat Myrzabekov \u003cazamatmz@google.com\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#1696073}\n\nBug: b:522291279\nNo-Presubmit: true\nNo-Tree-Checks: true\nNo-Try: true\nChange-Id: I287b9d21ed12b06ae86861db5271b25b4c4a5084\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8400056\nCommit-Queue: Ben Mason \u003cbenmason@chromium.org\u003e\nBot-Commit: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nReviewed-by: Ben Mason \u003cbenmason@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696621}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 3f2c5e9c177b2ad0642fafa01fb96a72e1838e0c\n"
    },
    {
      "commit": "1ca74425f65d9e70e5455646b5106dfe8ff99443",
      "tree": "dbbeb56bd066d791192b8ffea8bb9eea2680a726",
      "parents": [
        "7021ae185d56c6246c590d462a0b6bff30117411"
      ],
      "author": {
        "name": "Pier-Alexandre Bouchard",
        "email": "pabouchard@google.com",
        "time": "Fri Sep 11 21:22:12 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 21:27:25 2026"
      },
      "message": "[iOS] Implement complete level up promo UI.\n\nAdds the dismiss button, banner image, checklist, and a gradient background(light mode only).\n\nUpdates the level up promo coordinator to handle modal dismissal.\n\nChain order: 1/2\n\nScreenshots:\niPhone https://screenshot-v2.corp.google.com/4sfdoekr3a0bg\niPhone (Dark) https://screenshot-v2.corp.google.com/4mbth0c373970\niPad https://screenshot-v2.corp.google.com/226kt70b4ge8o\niPad (Dark) https://screenshot-v2.corp.google.com/1ob4a8gl732p0\nLarge font on small device: https://screenshot-v2.corp.google.com/2lsitggmhu5ig\n\nBug: 546097389\nChange-Id: I66000ebe96f2530884cf399fbb6aa33356ecda3d\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8305293\nCommit-Queue: Zijing Liu \u003czijingl@google.com\u003e\nReviewed-by: Pier-Alexandre Bouchard \u003cpabouchard@google.com\u003e\nReviewed-by: Cheick Cisse \u003ccheickcisse@google.com\u003e\nReviewed-by: Tommy Martino \u003ctmartino@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696606}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 3854b9c2da21d1bcbedc5f1e28083e732dab4491\n"
    },
    {
      "commit": "7021ae185d56c6246c590d462a0b6bff30117411",
      "tree": "f2a6331f076057d8c3582ddc510df1264ce16980",
      "parents": [
        "b22dc133544fb21d789d8259f84b63be6f95b161"
      ],
      "author": {
        "name": "Cheick Cisse",
        "email": "cheickcisse@google.com",
        "time": "Fri Sep 11 21:21:16 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 21:26:41 2026"
      },
      "message": "[iOS] Record opportunity for Gemini contextual default browser promo\n\nThis CL records when a Gemini session is terminated and fires an event\nto the FET to help determine whether the contextual default browser promo\ncan be triggered. In addition, it records the status of\nkIPHiOSPromoContextualDefaultBrowserGeminiFeature directly upon Gemini\ndismissal before the promo gets triggered on the NTP.\n\nBug: 558718888\nChange-Id: I3acad360fe94f2598eea15cc971ad2880bf7cb50\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8372285\nReviewed-by: Adam Arcaro \u003cadamta@google.com\u003e\nReviewed-by: Robbie Gibson \u003crkgibson@google.com\u003e\nCommit-Queue: Cheick Cisse \u003ccheickcisse@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696605}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c01cb37ac49852f6de90e07c897f72a87705326b\n"
    },
    {
      "commit": "b22dc133544fb21d789d8259f84b63be6f95b161",
      "tree": "9f015ec03f6dee6ff28d4d197a912fe84c5e5bf9",
      "parents": [
        "83db4d3bc71655d5032d1012e15aacae601e90da"
      ],
      "author": {
        "name": "Internal Frameworks Autoroller",
        "email": "bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com",
        "time": "Fri Sep 11 21:12:17 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 21:19:43 2026"
      },
      "message": "[Frameworks roll] Roll to 979933308 piper revision\n\nChange-Id: Iad05ee06a053ea6fb0388f962e7fce32a117f20a\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8400153\nBot-Commit: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nCommit-Queue: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696591}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: dd6e5054c8f711d39c755f45955d4af54c08f350\n"
    },
    {
      "commit": "83db4d3bc71655d5032d1012e15aacae601e90da",
      "tree": "3b5ebf275c4a767572391b354bb945ba6b02c3f4",
      "parents": [
        "fe31dde47904217c49b73d3e1ddb5ee6fe882368"
      ],
      "author": {
        "name": "Ernesto Izquierdo Clua",
        "email": "eic@google.com",
        "time": "Fri Sep 11 20:28:11 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 20:47:11 2026"
      },
      "message": "[ios] Forward proxy authentication challenges to WebStateDelegate\n\nEnables the browser to intercept and handle HTTP 407 proxy\nauthentication challenges encountered during web navigations. When a\nproxy authentication challenge is received, it is forwarded to the\nembedder delegate, allowing the embedder to fulfill the challenge with\nauthentication credentials, cancel authentication, or abort navigation\nwith a custom cancellation error.\n\nDesign Doc:\nhttps://docs.google.com/document/d/1XQGXQotpWlymh5bIrEkGa53L4rgdAj45jOlZE6Y6X6M\n\nBYPASS_LARGE_CHANGE_WARNING: test code triggering nudge\n\nBug: 543371754\nChange-Id: I42629183a4b08c4a9f1d03ba1e4efe0f82f01f7b\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8308736\nReviewed-by: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nCommit-Queue: Ernesto Izquierdo Clua \u003ceic@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696552}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8ac345bc95aea80f0f0227aae11216b14c9fdb90\n"
    },
    {
      "commit": "fe31dde47904217c49b73d3e1ddb5ee6fe882368",
      "tree": "b1f3bcce5794dee5dfc9dfb21b8df5b283b9892a",
      "parents": [
        "991b53bd62f761d1201b031d4d58ad85f28c72b4"
      ],
      "author": {
        "name": "Joe Mason",
        "email": "joenotcharles@google.com",
        "time": "Fri Sep 11 20:25:24 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 20:45:51 2026"
      },
      "message": "Return only live tabs from TabRestoreService restore operations\n\nTabRestoreService restore methods previously collected raw LiveTab\npointers before showing and activating the target browser window.\nIf showing the window triggers nested event processing that closes\nrestored tabs or the window before the operation completes, the\nreturned collection could include pointers to destroyed tabs.\n\nTrack restored tabs using WeakPtr throughout the restore pipeline and\nfilter out any tabs that are no longer valid upon completion. In\naddition, update SessionsRestoreFunction to handle empty restore results\ngracefully by returning an error instead of assuming a tab is always\npresent.\n\nFixed: 553132214\nChange-Id: I007a5f97eecdd692080f23d866ee6cdf80c2a248\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8383396\nReviewed-by: Darryl James \u003cdljames@chromium.org\u003e\nCommit-Queue: Joe Mason \u003cjoenotcharles@google.com\u003e\nAuto-Submit: Joe Mason \u003cjoenotcharles@google.com\u003e\nOwners-Override: Gabriel Charette \u003cgab@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696548}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b10218380b91df1c63d4eb1a8d4ad50adfa22ea7\n"
    },
    {
      "commit": "991b53bd62f761d1201b031d4d58ad85f28c72b4",
      "tree": "cfc725fb6a2757d3859ab3279907864999845484",
      "parents": [
        "2f69ca6d2f883f45322edda191d68c4d8919bdac"
      ],
      "author": {
        "name": "Chris Lu",
        "email": "thegreenfrog@google.com",
        "time": "Fri Sep 11 20:24:12 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 20:44:49 2026"
      },
      "message": "[ios] Restore App Bar button title alpha upon Gemini floaty dismissal\n\nWhen the Gemini floaty was dismissed, didChangeGeminiFloatyInvoked:\ncalled setButtonsTitleAlpha: passing _buttonsTitleAlpha. Because\n_buttonsTitleAlpha had been set to 0 when the floaty was active,\nsetButtonsTitleAlpha: received 0 as the target alpha, resulting in an\nimmediate early return and leaving button titles transparent (alpha 0)\neven though the App Bar expanded in height and titles were restored.\n\nPass _fullscreenProgress instead, matching\ndidChangeAssistantContainerInvoked: and ensuring button title alpha is\nproperly restored upon floaty dismissal.\n\nChange-Id: I78266d66ba8b5b3c172e364340170f93016fda68\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8394345\nCommit-Queue: Chris Lu \u003cthegreenfrog@google.com\u003e\nReviewed-by: Scott Yoder \u003cscottyoder@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696546}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8d60971c5d100b20055004e0187b7e9f60850649\n"
    },
    {
      "commit": "2f69ca6d2f883f45322edda191d68c4d8919bdac",
      "tree": "7ed866f41e23d47173414d5558f7567312678b91",
      "parents": [
        "f541879e956850af584a2441e6a5c4868c860cbb"
      ],
      "author": {
        "name": "Alexandra Pereira",
        "email": "alexandrasp@google.com",
        "time": "Fri Sep 11 20:19:46 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 20:43:39 2026"
      },
      "message": "[iOS][Navigation] Add integration tests for LoadURLWithParams\n\nThis CL validates key navigation scenarios using LoadURLWithParams:\ndelivering extra HTTP headers and POST data, virtual URL display\nmasking, same-document hash navigations, and session restoration\nwhen triggered from a detached state\n\nBug: 559816869\nChange-Id: I4fc6dd53579cbee4e43bc7a426946b1bb95c5f01\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8281912\nAuto-Submit: Alexandra Pereira \u003calexandrasp@google.com\u003e\nCommit-Queue: Alexandra Pereira \u003calexandrasp@google.com\u003e\nReviewed-by: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696544}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: eddb8dddf5fe79190add9ab9c52ede551bb818c1\n"
    },
    {
      "commit": "f541879e956850af584a2441e6a5c4868c860cbb",
      "tree": "534175d0f9ad8217c071925423b57e4e664a04fe",
      "parents": [
        "9c76b7d3e6dd574d27ccb31c6687d922fd1c7dde"
      ],
      "author": {
        "name": "Hamza Mohammed",
        "email": "hamzamoh@google.com",
        "time": "Fri Sep 11 20:00:00 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 20:08:14 2026"
      },
      "message": "[iOS] Commit error pages with file URL origin on reload\n\nPreviously, when presenting an error page on a reload or matching\nhistory entry, `CRWWKNavigationHandler` loaded an empty HTML string\nusing `errorPage.failedNavigationURL` as `baseURL`. This caused the\nerror page document to inherit the web origin of the blocked site,\nallowing a same-origin opener window to access the interstitial DOM and\ninvoke `IOSInterstitialMessage` commands (e.g., `CMD_PROCEED`).\n\nTo fix this:\n- Add `errorPageFileURLWithoutDontLoad` to `CRWErrorPageHelper` to\n  construct the error page file URL without the `dontLoad` query\n  parameter.\n- Pass `errorPage.errorPageFileURLWithoutDontLoad` as `baseURL` and\n  `allowedErrorPageFileURL` in `displayErrorPageWithError:` when\n  presenting the placeholder HTML string. This ensures the document\n  commits under a `file:` origin while omitting `dontLoad`, so restored\n  tabs will immediately reload the failed navigation URL without\n  requiring `history.replaceState` in injected scripts.\n- Fall back to `loadCurrentURLWithRendererInitiatedNavigation:` in\n  `CRWWebRequestController` when reloading an error page `file:` URL\n  so the underlying failed `NavigationItem` URL is re-requested rather\n  than reloading the empty placeholder string in WKWebView.\n- Restrict `IOSSecurityInterstitialJavaScriptFeature` to only accept\n  messages originating from `file:` URLs as defense-in-depth.\n- Add unit test coverage in `CRWErrorPageHelperTest`.\n\nFixed: 504215649\nChange-Id: I6c6b3b135f16b4802482955d2cc4eb7919a9c963\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8373266\nReviewed-by: Daniel White \u003cdanieltwhite@google.com\u003e\nCommit-Queue: Hamza Mohammed \u003chamzamoh@google.com\u003e\nReviewed-by: Rohit Rao \u003crohitrao@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696524}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8e5313fe4b0716d6a4e9db0fe6977a73d5120c9c\n"
    },
    {
      "commit": "9c76b7d3e6dd574d27ccb31c6687d922fd1c7dde",
      "tree": "f28e6a4b6aefd59b83b9b690512cefbc9dac29b1",
      "parents": [
        "504a43acd830247e23a189106d511281d1cdea8a"
      ],
      "author": {
        "name": "Alexis Hétu",
        "email": "sugoi@chromium.org",
        "time": "Fri Sep 11 19:25:29 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 19:59:18 2026"
      },
      "message": "[iOS] Fix UAF crash in CredentialProviderService favicon lookup\n\nGetFaviconsListAndFreshness() previously returned an NSDictionary\nacross thread boundaries via ThreadPool. In base::Bind /\nUnretainedWrapper, raw pointer types do not retain Objective-C objects,\ncausing the dictionary and its keys to be deallocated when the worker\nthread\u0027s autorelease pool drains. Accessing the dictionary on the main\nthread resulted in a use-after-free crash in\nSwift.__StringStorage.isEqualToString.\n\nThis CL resolves the crash by replacing the NSDictionary with\nbase::flat_map\u003cstd::string, base::Time\u003e, moving the results across\nthreads safely as a C++ value type. In addition, GetFaviconFileKey\nand ShouldFetchFavicon now operate directly on std::string /\nstd::string_view to avoid intermediate string conversions during\nbatch operations.\n\nBug: 560069617\nChange-Id: I384a8f57ba7fc26a1a5b0a59248b9d684838f776\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8399807\nReviewed-by: Tommy Martino \u003ctmartino@chromium.org\u003e\nCommit-Queue: Alexis Hétu \u003csugoi@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696507}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c649300ec5b2e8edcd5ec79a906e04e85f1823bd\n"
    },
    {
      "commit": "504a43acd830247e23a189106d511281d1cdea8a",
      "tree": "eb0ac68cdfbad83e0319c7f286391b8b7335f9c5",
      "parents": [
        "fabae7b7d5e7771b9ccdf46f24b1f3836e81cc82"
      ],
      "author": {
        "name": "Alexis Hétu",
        "email": "sugoi@chromium.org",
        "time": "Fri Sep 11 19:10:35 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 19:58:26 2026"
      },
      "message": "[iOS] Harden conditional passkey creation checks\n\nHardens iOS automatic passkey upgrade (conditional creation) checks:\n- Requires tab-scoped password login eligibility for conditional create\n  requests without a user gesture.\n- Records successful password logins in IOSChromePasswordManagerClient\n  to establish single-use automatic passkey upgrade eligibility.\n- Evaluates credential recency using the most recent of date_created,\n  date_last_filled, and date_last_used against the 5-minute threshold.\n- Rejects credentials marked as blocked_by_user.\n- Ensures conditional create requests without eligibility fail silently\n  and defer to the renderer without triggering UI.\n\nBug: 533084756\nChange-Id: I83c4193cafec48d7c692be8799fa84d8c51a937b\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8374522\nCommit-Queue: Alexis Hétu \u003csugoi@chromium.org\u003e\nReviewed-by: Tommy Martino \u003ctmartino@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696500}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: caa95464461b91a2137ada34aacf843b5daaace9\n"
    },
    {
      "commit": "fabae7b7d5e7771b9ccdf46f24b1f3836e81cc82",
      "tree": "c049af45676db3c30d39fe6e20a431fbe6edbcab",
      "parents": [
        "389125de0dc17b714e5d209473f8270639e8aecd"
      ],
      "author": {
        "name": "Guillaume Saulnier-Comte",
        "email": "gsaul@google.com",
        "time": "Fri Sep 11 18:48:42 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 18:55:33 2026"
      },
      "message": "[iOS][Actor] Add actuation request handling\n\nIntroduce GeminiActuationRequest, GeminiActuationResponse, and\nGeminiYieldAction data types to support a unified actuation dispatch\nflow.\n\nKey changes:\n- Implement dispatchActuationRequest:forTaskID:completionBlock: on\n  GeminiActuationHandler to process action execution and yield\n  interruptions.\n- Observe ActorTaskUpdatesObserver to handle external task stops and\n  abort active callbacks with kTaskWentAway.\n- Clean up active callbacks with kExecutorDestroyed on disconnect.\n- Deprecate legacy granular actuation delegate methods.\n- Add unit tests covering action execution, yielding, task\n  cancellation, and disconnect flows.\n\nBug: 556739755\nChange-Id: Ib922c8cc2058aaeedfc58106ce1a06ff0152d615\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8374581\nReviewed-by: Nicolas MacBeth \u003cnicolasmacbeth@google.com\u003e\nCommit-Queue: Guillaume Saulnier-Comte \u003cgsaul@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696481}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 239135704c40685c7da398c054ad0ddf663240d5\n"
    },
    {
      "commit": "389125de0dc17b714e5d209473f8270639e8aecd",
      "tree": "57b6c751d5d2beb2724ef67e000b13778cf3fa52",
      "parents": [
        "5ecac214be7aee760e44c3b2af44be3f3a4fa90d"
      ],
      "author": {
        "name": "Michael Wilson",
        "email": "mjwilson@chromium.org",
        "time": "Fri Sep 11 18:39:22 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 18:48:01 2026"
      },
      "message": "Revert \"[iOS][Sync] Verify instance ID token in sync invalidation fields\"\n\nThis reverts commit 150e09e67006f3ce589d9863e3ae0b3bd33dca32.\n\nReason for revert: Likely culprit for build failure in test\nSyncFakeServerTestCase/testSyncInvalidationsEnabled\n\nFailure Link: https://ci.chromium.org/ui/p/chromium/builders/ci/ios-simulator-full-configs/85981/test-results\n\nSee also crbug.com/560194857\n\nOriginal change\u0027s description:\n\u003e [iOS][Sync] Verify instance ID token in sync invalidation fields\n\u003e\n\u003e Update VerifySyncInvalidationFieldsPopulated in sync_test_util to check\n\u003e that instance_id_token is populated on the committed DeviceInfo entity\n\u003e in addition to interested_data_type_ids.\n\u003e\n\u003e With FakeServerSyncInvalidationSender and the test GCM profile service\n\u003e configured in EarlGrey test runs, the client registers for instance ID\n\u003e tokens, allowing this verification to succeed.\n\u003e\n\u003e Bug: 40754340\n\u003e Change-Id: I23787ea45146e6694eedcc56c89e6c0e954a6e2a\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8391741\n\u003e Auto-Submit: Michael Tatarski \u003cmtatarski@google.com\u003e\n\u003e Reviewed-by: Rushan Suleymanov \u003crushans@google.com\u003e\n\u003e Commit-Queue: Michael Tatarski \u003cmtatarski@google.com\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#1696220}\n\nBug: 40754340\nNo-Presubmit: true\nNo-Tree-Checks: true\nNo-Try: true\nChange-Id: I4ed0b92e0782d4eef43f8ef937ef821f20d5f448\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8399372\nOwners-Override: Michael Wilson \u003cmjwilson@chromium.org\u003e\nBot-Commit: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nAuto-Submit: Michael Wilson \u003cmjwilson@chromium.org\u003e\nCommit-Queue: Michael Wilson \u003cmjwilson@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696470}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 6b4b106774f50d2643aa18c9af830fa76b90ee2e\n"
    },
    {
      "commit": "5ecac214be7aee760e44c3b2af44be3f3a4fa90d",
      "tree": "36b40e32a3f3d000be6d160c231b6c288bd2adb4",
      "parents": [
        "8dfbfa7528fd1da4890a33bcc062941cb639d367"
      ],
      "author": {
        "name": "Nicolas MacBeth",
        "email": "nicolasmacbeth@google.com",
        "time": "Fri Sep 11 18:31:40 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 18:39:37 2026"
      },
      "message": "[iOS][Actor] Align methods and separate private methods in actor model classes\n\nGroup public methods above `#pragma mark - Private` and private helper\nmethods below it, and align method definition order in `.mm` files to\nmatch declaration order in `.h` files for ActorService, ActorTask, and\nActorEngine.\n\nThis CL is a no-op.\n\nBug: None\nChange-Id: I34b6c303b8f8051c7a9a5ab997a0dc15a91d3db5\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8388817\nReviewed-by: Ibrahim Kanouche \u003ckanouche@google.com\u003e\nAuto-Submit: Nicolas MacBeth \u003cnicolasmacbeth@google.com\u003e\nCommit-Queue: Nicolas MacBeth \u003cnicolasmacbeth@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696459}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 017f3a9384c8826febc65a031ec47c69aaf1f24f\n"
    },
    {
      "commit": "8dfbfa7528fd1da4890a33bcc062941cb639d367",
      "tree": "f966130135b71e7e8860c8db045578dcf8f975f7",
      "parents": [
        "169891fbfa1b3cabf2f7680ae8ebf0e83fecc1b9"
      ],
      "author": {
        "name": "Chris Lu",
        "email": "thegreenfrog@google.com",
        "time": "Fri Sep 11 18:11:27 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 18:17:27 2026"
      },
      "message": "[ios] Refactor Magic Stack layouts and integrate with NTP redesign\n\nThis CL refactors the Magic Stack architecture to cleanly decouple\nclassic and NTP redesign Smart Stack layouts, tightens NTP redesign\nview controller typing, and fixes iPad pagination regressions.\n\n- NTP Redesign Integration: Updates `NewTabPageRedesignViewController`\n  and `NewTabPageBottomSheetViewController` to strongly type\n  `magicStackViewController` as `MagicStackCollectionViewController`,\n  and handles height updates on trait collection changes.\n- Decouple Layouts: Introduces `MagicStackLayoutType` and injects the\n  layout via `initWithLayoutType:` at initialization, removing late\n  layout mutation and eliminating `MagicStackLayoutConfigurator`.\n- Protocol Extraction: Introduces `MagicStackPagingLayoutProvider` so\n  the collection view controller queries active layouts for page\n  offsets without hardcoding layout assumptions.\n- Unified Paging Math: Centralizes target page computation and velocity\n  thresholding into `MagicStackTargetPage` in `magic_stack_utils`.\n- Fix iPad Paging \u0026 Peeking: Clamps target pages across total items\n  across all sections (allowing scrolling to the Edit button) and\n  suppresses peeking insets when only a single module is present.\n\nBug: 526677926\nChange-Id: Iabb3623325bade7386b4098b0adada7c583c29e3\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8227285\nCommit-Queue: Chris Lu \u003cthegreenfrog@google.com\u003e\nReviewed-by: Scott Yoder \u003cscottyoder@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696445}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: bfd42f126a5aa15e1f10bfb37aa1b526973c6561\n"
    },
    {
      "commit": "169891fbfa1b3cabf2f7680ae8ebf0e83fecc1b9",
      "tree": "aac9d756552cfe4e38e494dfcdb2c8e21d3d16c1",
      "parents": [
        "66edf0f1644fa6eba271e6cbb60ce4ea25dcd1cd"
      ],
      "author": {
        "name": "Chris Lu",
        "email": "thegreenfrog@google.com",
        "time": "Fri Sep 11 18:10:42 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 18:16:39 2026"
      },
      "message": "[ios][ntp] Add scroll-to-top and customization button to NTP Redesign\n\nSupport status bar tap and programmatic scroll-to-top navigation, and\nadd the top-left Home Customization pencil button to the NTP Redesign:\n1. Disable scrollsToTop on horizontal collection views (MVT, Magic Stack)\n   so UIKit status bar tap gesture handling is not suppressed.\n2. Dynamically toggle feed scrollsToTop based on sheet snapping state,\n   and implement scrollToTopAnimated: and isScrolledToTop on the bottom\n   sheet and redesign view controllers.\n3. Forward scrollToTop, setContentOffsetToTop, and isScrolledToTop from\n   NewTabPageCoordinator to NewTabPageRedesignViewController.\n4. Add the top-left customization pencil button with 44x44 pt touch\n   target, theming, layout guide registration (kFeedIPHNamedGuide),\n   and \"New\" feature badge support.\n5. Add unit tests for the customization button and scroll-to-top logic.\n\nBug: 526677926\nChange-Id: I5fe96315ab48ecdc094d48ca5b2fc2297b370ec7\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8393780\nReviewed-by: Eric Ekey \u003cericekey@google.com\u003e\nCommit-Queue: Chris Lu \u003cthegreenfrog@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696444}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8365da614775a0fd07696531165bb98579dfefc5\n"
    },
    {
      "commit": "66edf0f1644fa6eba271e6cbb60ce4ea25dcd1cd",
      "tree": "775c4578d4793d274579ae706b20bed3f1e21549",
      "parents": [
        "9fd377d9a5b349a86bf79442ef26ea0d45f1260e"
      ],
      "author": {
        "name": "Internal Frameworks Autoroller",
        "email": "bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com",
        "time": "Fri Sep 11 17:23:00 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 17:29:46 2026"
      },
      "message": "[Frameworks roll] Roll to 979628514 piper revision\n\nChange-Id: I43caa8b468e4cd4c9ecc7cd1defa89f4d182055e\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8392919\nCommit-Queue: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nBot-Commit: bling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com \u003cbling-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696395}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 4c68f577f73931c718055ae77e12547d681b30e5\n"
    },
    {
      "commit": "9fd377d9a5b349a86bf79442ef26ea0d45f1260e",
      "tree": "fa7daef3b781903246dd2674d974339765c15cc5",
      "parents": [
        "41444fc8d54c6ec17b044fca33294c7615715ce3"
      ],
      "author": {
        "name": "Daniel White",
        "email": "danieltwhite@google.com",
        "time": "Fri Sep 11 17:22:47 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 17:28:55 2026"
      },
      "message": "[iOS] Ignore window.print() from background tabs\n\nUIPrintInteractionController is a process-wide singleton, so a\nwindow.print() call from a background tab would overwrite the delegate,\nrenderer and parent view controller of any print sheet already on screen\nfor the foreground tab.\n\nDrop window.print() messages when the originating WebState is not\nvisible, and have PrintCoordinator ignore new requests while the shared\ncontroller already has a delegate. Clear the controller\u0027s delegate,\nrenderer and item on completion and on -stop so the WKWebView-backed\nrenderer is released and subsequent requests see a clean state.\n\nBug: 505186109\nChange-Id: I887e2fab0ac182fe587f6888427337e7c5afb9dd\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8384938\nReviewed-by: Sylvain Defresne \u003csdefresne@chromium.org\u003e\nCommit-Queue: Daniel White \u003cdanieltwhite@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696394}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 52fc98ec96e0a537026ea452640075b1080adc58\n"
    },
    {
      "commit": "41444fc8d54c6ec17b044fca33294c7615715ce3",
      "tree": "49b6d95486e98cba7afa66b7209be30656e8ce63",
      "parents": [
        "38cc2c0c69cb063472cf577728b983d88dc6dd29"
      ],
      "author": {
        "name": "Adam Arcaro",
        "email": "adamta@google.com",
        "time": "Fri Sep 11 16:42:59 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 16:54:24 2026"
      },
      "message": "[iOS][Gardender] Disable failing FormInputAccessoryEGTests\n\nBug: 560127176\nChange-Id: I392666b31faadb9cd884a4824afe8e8f70ff505d\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8399167\nReviewed-by: Alexis Hétu \u003csugoi@chromium.org\u003e\nCommit-Queue: Adam Arcaro \u003cadamta@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696349}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 666238349f2fa8a95cef7afae02d97973576c1a7\n"
    },
    {
      "commit": "38cc2c0c69cb063472cf577728b983d88dc6dd29",
      "tree": "e732e04cd7ff78c2373afa6d95c46c20c70b903e",
      "parents": [
        "5538ca9b7c682d4f127d1a59fbfef84b129fe4e2"
      ],
      "author": {
        "name": "Jason Hu",
        "email": "hujasonx@google.com",
        "time": "Fri Sep 11 16:37:42 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 16:45:34 2026"
      },
      "message": "[context-input] Add iOS Provider API for Lens SAPISID hash generation\n\nThis CL declares ios::provider::GenerateLensSapisidHash in the iOS\nprovider API (and adds no-op stubs in chromium_lens and test_lens)\nto support generating first-party SAPISIDHASH headers for Lens and\nComposebox on iOS.\n\nBug: b:559631202\nChange-Id: Icd0db39c5fcc6a59568411a51507466e141383c4\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8388657\nReviewed-by: Stepan Khapugin \u003cstkhapugin@chromium.org\u003e\nCommit-Queue: Jason Hu \u003chujasonx@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696345}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 914a7b24c6873fd287dda151acaa2b61f48394d5\n"
    },
    {
      "commit": "5538ca9b7c682d4f127d1a59fbfef84b129fe4e2",
      "tree": "19cc108a5a36ee8fbd90c3dfe1ca45bd39de837b",
      "parents": [
        "a6a9283dddbbb6770e1693d5cf1bfd6939cb9cfc"
      ],
      "author": {
        "name": "Daniel White",
        "email": "danieltwhite@google.com",
        "time": "Fri Sep 11 16:35:10 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 16:44:28 2026"
      },
      "message": "[iOS] Add aggregate paste event rate limit to PhishGuard\n\nPasswordProtectionJavaScriptFeature previously enforced rate limits for\npaste script messages solely on a per-WebState basis. When multiple\nchild tabs run concurrently, the aggregate volume of messages received\nacross all tabs could scale linearly and trigger excessive downstream\nbackground computations.\n\nThis change introduces an aggregate sliding window rate limit across all\nWebState instances (capping paste events at 10/s) in addition to the\nexisting per-tab limits. This bounds overall event throughput while\npreserving headroom for normal typing, focus transitions, and\nmulti-window environments.\n\nBug: 553164077\nChange-Id: Iaa5231bdd47b1a3494ea65b7af91cfff505dbaa4\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8382977\nReviewed-by: jdh \u003cjdh@chromium.org\u003e\nCommit-Queue: Daniel White \u003cdanieltwhite@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696344}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a78e08b5d4fe2b1dbf557d3d688916660948bc18\n"
    },
    {
      "commit": "a6a9283dddbbb6770e1693d5cf1bfd6939cb9cfc",
      "tree": "2d34f89c9ab100ae280286eb46ab79a2b3b9b5b0",
      "parents": [
        "adb7a066354e5d18ce81f46f3fd4af19872f81eb"
      ],
      "author": {
        "name": "Gauthier Ambard",
        "email": "gambard@chromium.org",
        "time": "Fri Sep 11 16:31:25 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 16:38:28 2026"
      },
      "message": "[WhatsNew] Use PreferredFontForTextStyle instead of CreateDynamicFont\n\nReplace usages of the static CreateDynamicFont helper with\nPreferredFontForTextStyle in WhatsNewTableViewCell to support dynamic\ntype font scaling.\n\nLow-Coverage-Reason: TRIVIAL_CHANGE Refactoring font helper call sites.\nChange-Id: Ifd13119f951cafaa84c3f28f45b05d1610ffab77\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8357773\nReviewed-by: Robbie Gibson \u003crkgibson@google.com\u003e\nCommit-Queue: Robbie Gibson \u003crkgibson@google.com\u003e\nAuto-Submit: Gauthier Ambard \u003cgambard@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696338}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: d8b61a2d8ada93b820b07dc67cc4759e87d82378\n"
    },
    {
      "commit": "adb7a066354e5d18ce81f46f3fd4af19872f81eb",
      "tree": "a8d83f1069b6b8557aca9a376ec4f6c8b154de5e",
      "parents": [
        "05000f62bab879a626763d9d860da05d801775d2"
      ],
      "author": {
        "name": "Kirubel",
        "email": "kaklilu@chromium.org",
        "time": "Fri Sep 11 16:12:49 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 16:23:50 2026"
      },
      "message": "[ios][actor] Add DragAndReleaseToolJavaScriptFeature\n\nThis wraps the drag_and_release_tool.ts added in a parent CL.\n\nAlso, registers the feature in ChromeWebClient when kActorTools is\nenabled.\n\nBug: b:472287126\nChange-Id: Ib540ae4ba8b2fd3ef97df0541a146f5a6a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8378006\nReviewed-by: Rohit Rao \u003crohitrao@chromium.org\u003e\nCommit-Queue: Kirubel \u003ckaklilu@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696325}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 26ab32e6416bcdd7f55ec7f5120c9913ed1c1956\n"
    },
    {
      "commit": "05000f62bab879a626763d9d860da05d801775d2",
      "tree": "ca2c63e410ee5b5b6590212648b5d789ea1ad4d8",
      "parents": [
        "0da9e79e7ec7f4b6e22ad8a50e0268e04b46bf77"
      ],
      "author": {
        "name": "Chris Lu",
        "email": "thegreenfrog@google.com",
        "time": "Fri Sep 11 16:07:59 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 16:16:47 2026"
      },
      "message": "[iOS] Remove header separator and add bottom blur for the NTP cleanup\n\nWhen kNewTabPageUICleanup is enabled (and kChromeNextIa disabled):\n- Remove the bottom separator line from NewTabPageHeaderView when\n  pinned\n  to the top, and return 0 in HeaderSeparatorHeight().\n- Add a UIVisualEffectView material blur background to the header that\n  fades in with scroll progress.\n- Extend the blur 30pt below the header with a CAGradientLayer fade-\n  out mask so content smoothly blurs before scrolling beneath the\n  fakebox.\n\nVideo: https://screencast.googleplex.com/cast/NDcxMzI2MDU5Mzk3MTIwMHw4Y2IwN2ZhNC00ZQ\n\nBug: 551888616\nChange-Id: I73438152e2b20250a9fade62e5d6148d49a70090\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8391718\nReviewed-by: Eric Ekey \u003cericekey@google.com\u003e\nCommit-Queue: Chris Lu \u003cthegreenfrog@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696321}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: d4195cf35a588774983a62fba929864399255b6f\n"
    },
    {
      "commit": "0da9e79e7ec7f4b6e22ad8a50e0268e04b46bf77",
      "tree": "b5698611125fbc3ce3594a52e8dee9b11d7db5e5",
      "parents": [
        "c2888570efefe52f3b039d04445cf181d2d9a455"
      ],
      "author": {
        "name": "Tarek Makkouk",
        "email": "tarekmakkouk@google.com",
        "time": "Fri Sep 11 15:55:38 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 16:02:50 2026"
      },
      "message": "[iOS] Fix Gemini Live session metric tracking\n\nThis makes sure that the Live metrics session aren\u0027t falsely recorded\nafter the Live FRE is dismissed.\n\nBug: 558764798\nChange-Id: I5eb22fe0150a4aef31378da41645d20cbc6795a1\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8395008\nReviewed-by: Adam Arcaro \u003cadamta@google.com\u003e\nReviewed-by: Yasaman Sedaghat \u003cyasamans@google.com\u003e\nCommit-Queue: Tarek Makkouk \u003ctarekmakkouk@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696302}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 1ce1c8584f1f45cc87686311ed3bbdab2d5101bd\n"
    },
    {
      "commit": "c2888570efefe52f3b039d04445cf181d2d9a455",
      "tree": "223e56bf78aa5560a6ce867b7c3925d1ebdd17dd",
      "parents": [
        "f7f1cb0a233852b2d904b3d9c6cbc650f70e890b"
      ],
      "author": {
        "name": "Michael Tatarski",
        "email": "mtatarski@google.com",
        "time": "Fri Sep 11 15:31:47 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 15:40:55 2026"
      },
      "message": "[iOS][STTS] Remove dead code in coordinator EG test\n\nRemove unused header imports for bind.h, http_request.h, and\nhttp_response.h from SendTabToSelfCoordinatorTestCase.\n\nRemove unused modal button accessibility identifier constants.\n\nBug: None\nChange-Id: I6eb93702e0eba9e519ca6f7484b092ca5d6e3ad4\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8399346\nCommit-Queue: Michael Tatarski \u003cmtatarski@google.com\u003e\nAuto-Submit: Michael Tatarski \u003cmtatarski@google.com\u003e\nCommit-Queue: Mahmoud Rashad \u003cmmrashad@google.com\u003e\nReviewed-by: Mahmoud Rashad \u003cmmrashad@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696280}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 57533ecbcdee7bdcbfe0c71df2a56ceedb44efa4\n"
    },
    {
      "commit": "f7f1cb0a233852b2d904b3d9c6cbc650f70e890b",
      "tree": "76bb8130512bfac4ada10d3cf39cf464e022ad8b",
      "parents": [
        "480379b463b20a1947f15e177ffb7b1dd6381ee5"
      ],
      "author": {
        "name": "Etienne Pierre-doray",
        "email": "etiennep@chromium.org",
        "time": "Fri Sep 11 15:26:43 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 15:33:31 2026"
      },
      "message": "[tracing] Refactor to enable early startup background tracing\n\nThis CL makes some changes required to background tracing\nso that we can initialize it earlier during startup (done\nin a follow-up):\n- TracingDelegate decides if metrics collection is allowed; this\nwas previously determined by whether BackgroundTracingMetricsProvider\nwas initialized, but this won\u0027t be possible if background tracing\nis initialized before BackgroundTracingMetricsProvider.\n- TracingDelegate ownership is moved from TracingControllerImpl\n to BackgroundTracingManagerImpl because it will be created before.\n- Since background tracing will be initialized in content, it needs to support e.g. content_shell: BackgroundTracingStateManager is created unconditionally, but now supports null local_state.\n\nChange-Id: Ic999968b0d38b305929d41d5b20ad347cab7e554\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8339777\nReviewed-by: Greg Thompson \u003cgrt@chromium.org\u003e\nReviewed-by: Peter Conn \u003cpeconn@chromium.org\u003e\nCommit-Queue: Etienne Pierre-Doray \u003cetiennep@chromium.org\u003e\nReviewed-by: Rohit Rao \u003crohitrao@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696274}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: cfd4d81b89422a76c566983e4f179b142d76145d\n"
    },
    {
      "commit": "480379b463b20a1947f15e177ffb7b1dd6381ee5",
      "tree": "5ad5e69af80a9a571470d258670ad20804cad58d",
      "parents": [
        "2e21015bd4e8805e4f554dddb79202d604d3901f"
      ],
      "author": {
        "name": "Scott Yoder",
        "email": "scottyoder@google.com",
        "time": "Fri Sep 11 15:16:07 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 15:21:35 2026"
      },
      "message": "[ios] Add timing histograms to refactored fullscreen\n\nRecord IOS.Fullscreen.TimeInFullscreen and\nIOS.Fullscreen.TimeNotInFullscreen in FullscreenBrowserAgent.\n\nRecord IOS.Fullscreen.TimeSpentScrollingToTheBottom in\nFullscreenMediator on scroll completion when the page is scrolled to the\nbottom.\n\nAdd unit tests in FullscreenBrowserAgentTest and FullscreenMediatorTest,\nand add an EarlGrey test verifying metrics in both legacy and refactored\nimplementations.\n\nChange-Id: I4d0c365a48641fadc8971515267f4aa258c72ff5\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8377971\nReviewed-by: Aliona Dangla \u003calionadangla@chromium.org\u003e\nCommit-Queue: Scott Yoder \u003cscottyoder@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696260}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 61b1775a510568014ea2336eefa9bf4a978494af\n"
    },
    {
      "commit": "2e21015bd4e8805e4f554dddb79202d604d3901f",
      "tree": "f116304974ac1bd550117dcfd31e1e4d5721a457",
      "parents": [
        "71e5fdf942f99758199fba0aa67eeca500c4b8e6"
      ],
      "author": {
        "name": "Chris Lu",
        "email": "thegreenfrog@google.com",
        "time": "Fri Sep 11 14:42:32 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 14:54:00 2026"
      },
      "message": "[iOS] Keep padding unchanged on iPad for kNewTabPageUICleanup\n\nThis change updates the kNewTabPageUICleanup feature so that on iPad,\nthe padding and spacing variations (kTightPadding, kMediumPadding,\nand kPreferredPadding) do not change any padding, sizing, or insets,\nwhile retaining all color and visual changes (fakebox background/shadow,\nquick action chip color, and tile color).\n\nBug: 558757868\nChange-Id: I61735bee5b9b21bab77422cafa34785814946ed3\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8390700\nReviewed-by: Eric Ekey \u003cericekey@google.com\u003e\nCommit-Queue: Chris Lu \u003cthegreenfrog@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696225}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8847b1b54d4155cd0ebcd1955fc4d002d345483e\n"
    },
    {
      "commit": "71e5fdf942f99758199fba0aa67eeca500c4b8e6",
      "tree": "fc4939e8249c64c661ba62b08d59210919c69a81",
      "parents": [
        "5f4eb530a6b851ff38229285fe22139b03fb3ed5"
      ],
      "author": {
        "name": "Gauthier Ambard",
        "email": "gambard@chromium.org",
        "time": "Fri Sep 11 14:38:07 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 14:53:15 2026"
      },
      "message": "[PriceInsights] Use PreferredFontForTextStyle instead of CreateDynamicFont\n\nReplace usages of the static CreateDynamicFont helper with\nPreferredFontForTextStyle in PriceInsightsCell to ensure proper font\nmetrics and dynamic type support.\n\nLow-Coverage-Reason: TRIVIAL_CHANGE Refactoring font helper call sites.\nChange-Id: I8b228824ef1a1201c78a5d712107c9ccbfa119ce\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8351689\nReviewed-by: Gayane Petrosyan \u003cgayane@google.com\u003e\nAuto-Submit: Gauthier Ambard \u003cgambard@chromium.org\u003e\nCommit-Queue: Gayane Petrosyan \u003cgayane@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696222}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 95b3184ec218e214fea277c49d4477ed4a732d35\n"
    },
    {
      "commit": "5f4eb530a6b851ff38229285fe22139b03fb3ed5",
      "tree": "27dc0d5d19b1fe4da7a9a970e8c6909e5ebaf6b3",
      "parents": [
        "b3b1cc20a55bbe2bb909f316ed491725ade8de0b"
      ],
      "author": {
        "name": "Michael Tatarski",
        "email": "mtatarski@google.com",
        "time": "Fri Sep 11 14:35:27 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 14:52:27 2026"
      },
      "message": "[iOS][Sync] Verify instance ID token in sync invalidation fields\n\nUpdate VerifySyncInvalidationFieldsPopulated in sync_test_util to check\nthat instance_id_token is populated on the committed DeviceInfo entity\nin addition to interested_data_type_ids.\n\nWith FakeServerSyncInvalidationSender and the test GCM profile service\nconfigured in EarlGrey test runs, the client registers for instance ID\ntokens, allowing this verification to succeed.\n\nBug: 40754340\nChange-Id: I23787ea45146e6694eedcc56c89e6c0e954a6e2a\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8391741\nAuto-Submit: Michael Tatarski \u003cmtatarski@google.com\u003e\nReviewed-by: Rushan Suleymanov \u003crushans@google.com\u003e\nCommit-Queue: Michael Tatarski \u003cmtatarski@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696220}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 150e09e67006f3ce589d9863e3ae0b3bd33dca32\n"
    },
    {
      "commit": "b3b1cc20a55bbe2bb909f316ed491725ade8de0b",
      "tree": "adc8aaa60974556e4de6b60ce1bba4bf05cb1da2",
      "parents": [
        "b2e28155d14d6728e3a263f2e08785395fe47ebb"
      ],
      "author": {
        "name": "Marc Treib",
        "email": "treib@chromium.org",
        "time": "Fri Sep 11 14:22:42 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 14:46:49 2026"
      },
      "message": "[iOS] Update tests to not create a FakeAuthenticationServiceDelegate\n\nAfter previous cleanups, the AuthenticationServiceDelegate interface is\nempty and unused. This CL updates tests to not specify it anymore, i.e.\nto call the parameter-less version of AuthenticationService::Initialize.\n\nThis CL covers the folder(s):\n[\u0027ios/chrome/browser/ntp\u0027, \u0027ios/chrome/browser/enterprise\u0027, \u0027ios/chrome/browser/shared\u0027, \u0027ios/chrome/browser/feature_engagement\u0027, \u0027ios/chrome/browser/metrics\u0027, \u0027ios/chrome/browser/saved_tab_groups\u0027, \u0027ios/chrome/browser/send_tab_to_self\u0027]\n\nThis CL was uploaded by git cl split.\n\nR\u003drohitrao@chromium.org\n\nBug: 407498240\nChange-Id: I7b5defa9a7b5b6680521f58f7d2d9dec3c11c948\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8382659\nAuto-Submit: Marc Treib \u003ctreib@chromium.org\u003e\nCommit-Queue: Rohit Rao \u003crohitrao@chromium.org\u003e\nReviewed-by: Rohit Rao \u003crohitrao@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696204}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c55ac53cb7142c3c615a8ea26adf606b5a963d50\n"
    },
    {
      "commit": "b2e28155d14d6728e3a263f2e08785395fe47ebb",
      "tree": "9d0171f498611642b5603b6c48cbfd5fdc80e783",
      "parents": [
        "7a482e187012d70c253edef1839aad03d764cbd9"
      ],
      "author": {
        "name": "Chrome Release Translations",
        "email": "mdb.chrome-release-translation-dump@google.com",
        "time": "Fri Sep 11 14:21:05 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 14:45:34 2026"
      },
      "message": "Updating XTBs based on .GRDs from branch main\n\nBinary-Size: Size increase is unavoidable\nChange-Id: I6842cfa0a9ccb81374ecd4469a1932137e437ce3\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8395387\nAuto-Submit: Chrome Release Translation Dump \u003cmdb.chrome-release-translation-dump@google.com\u003e\nCommit-Queue: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nSLSA-Policy-Verified: SLSA Policy Verification Service \u003cdevtools-gerritcodereview-exitgate@google.com\u003e\nBot-Commit: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696201}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 7f3852cee2c69e1727dd76b7ce16faf5fb581cdd\n"
    },
    {
      "commit": "7a482e187012d70c253edef1839aad03d764cbd9",
      "tree": "85031f38cd4ba48449001926df208973063f622c",
      "parents": [
        "650d3b5fdb6838c766566b6172c26ada885fb03b"
      ],
      "author": {
        "name": "Rafał Godlewski",
        "email": "rgod@google.com",
        "time": "Fri Sep 11 14:18:48 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 14:25:36 2026"
      },
      "message": "[iOS][DeviceAuth] Add device integrity snapshot provider API\n\nExposes new API in ios::provider for retrieving device integrity\nsnapshots with purpose of using it for device authorization keys for\npasskeys in password manager.\n\nThose snapshots are already being fetched in AttestationServiceIOS,\nthough webauthn/ shouldn\u0027t reuse that implementation, since it would\nrequire passing additional parameters (content bindings etc.) in an\nenterprise-specific class. It seems more sensible to rather have a\ngeneric snapshot generator class that could both be reused by enterprise\nand passkeys.\n\nThis CL is part of a multi-CL change:\n \u003d\u003e https://crrev.com/c/8380517\n  - https://crrev.com/i/9795936\n  - https://crrev.com/c/8397827\n\nBug: 405036154\nChange-Id: I0027e37ce87ccde4e104ca8c58e06c7124c59d28\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8380517\nReviewed-by: Rohit Rao \u003crohitrao@chromium.org\u003e\nCommit-Queue: Rafał Godlewski \u003crgod@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696198}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 1079fbc89c735fe749936de07de55951bd2f250e\n"
    },
    {
      "commit": "650d3b5fdb6838c766566b6172c26ada885fb03b",
      "tree": "0dea0defd83e2c0d92433dafe8fc41f007b126a6",
      "parents": [
        "fded80e6ef5bc89351f82008d93e575786596690"
      ],
      "author": {
        "name": "Duong Dac",
        "email": "ddac@chromium.org",
        "time": "Fri Sep 11 14:16:19 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 14:24:42 2026"
      },
      "message": "[iOS] Cleanup contextual capabilities flags\n\nRemoves kReadContextualAccountCapabilities and\nkEnforceCanSignInToChromeCapability.\n\nThe corresponding experiment was launched in M153, and\nACCOUNT_CAPABILITY_F has been removed.\n\nBug: 530079867\nChange-Id: I9294bc5ce0390d4a9fa72631bc52d8b48a9a67ce\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8380226\nReviewed-by: Gauthier Ambard \u003cgambard@chromium.org\u003e\nReviewed-by: Boris Sazonov \u003cbsazonov@chromium.org\u003e\nCommit-Queue: Duong Dac \u003cddac@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696194}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: af07dcebdf11b5ffe07ae3856b379c9c04b6ae7d\n"
    },
    {
      "commit": "fded80e6ef5bc89351f82008d93e575786596690",
      "tree": "daa7a7633e7f129eccce04cc89eecc0cdcdd11e4",
      "parents": [
        "ef272d12e733d914c6f676ec29236af9525b7dfd"
      ],
      "author": {
        "name": "Yurii Lahodiuk",
        "email": "ylahodiuk@google.com",
        "time": "Fri Sep 11 14:11:58 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 14:18:10 2026"
      },
      "message": "Refine the frequency of reporting the on-device encryption state metrics\n\nIn the scope of this change we are refining the frequency of reporting\nthis metric on desktop and on mobile platforms.\n\nWe are ensuring that these metrics will be published at least once per\nday even if the state did not change (this is important for desktop\nplatforms, where the browser might be running for multiple days).\n\nWe are also ensuring that we will not publish repeatedly the same bucket\nmore frequently than once per day even if the browser is being restarted\n(this is important for mobile platforms, where the browser could be\nrestarted multiple times per day).\n\nThe method `MaybeRecordReadiness` has been updated to implement the\nfollowing logic:\n\n```\nQuery the current state and the current time.\nIf (the current state is unavailable):\n  Do not publish UMA metric.\n  Set: next_reporting_time \u003d now + 24 HOURS.\nElse:\n  Read last_reported_time and last_reported_state from preferences.\n  If (metric has never been reported yet\n      OR the state has changed\n      OR the metric has been reported \u003e\u003d 24 hours ago\n      OR system clock mismatch detected):\n    Report UMA metric.\n    Set: next_reporting_time \u003d now + 24 HOURS.\n  Else:\n    No need to report the UMA metric.\n    Set: next_reporting_time \u003d last_reported_time + 24 HOURS.\nScheduleNextReportingAttempt( next_reporting_time )\n```\n\n`MaybeRecordReadiness` is being called in one of these cases:\n- Upon startup.\n- When on-device encryption state changes.\n- Upon the timer notification.\n\nThis also means that the clients that continuously remain in the\n`kOnDeviceEncryptionStateNotAvailable` state will not publish metrics.\nAs a follow-up we will decide whether we would like to address this.\n\nBug: 540854648\nChange-Id: If1a107a0ace02c1027b8e71ef77212edfc5e6a8f\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8353929\nReviewed-by: Viktor Semeniuk \u003cvsemeniuk@google.com\u003e\nCommit-Queue: Yurii Lahodiuk \u003cylahodiuk@google.com\u003e\nReviewed-by: Rafał Godlewski \u003crgod@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696188}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 46aa03d685a4b557ec097152d808e7deb8b5980a\n"
    },
    {
      "commit": "ef272d12e733d914c6f676ec29236af9525b7dfd",
      "tree": "a81e8fdf0c665dae1eea771aa77d5aeef1a4d812",
      "parents": [
        "208d3715d49d79c921df57e288a4a7a680aa58af"
      ],
      "author": {
        "name": "Gauthier Ambard",
        "email": "gambard@chromium.org",
        "time": "Fri Sep 11 14:10:44 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 14:16:57 2026"
      },
      "message": "[iOS] Fix inconsistent fullscreen state on interrupted animations\n\nFullscreenBrowserAgent commits the two halves of a transition at\ndifferent times. UpdateProgressAndBroadcast() assigns top_progress_\nand bottom_progress_ synchronously, while settled_state_ is assigned\nfrom the UIView completion block, and only when it reports\n`finished`. Whenever that animation is cancelled, the two contradict\neach other permanently: the progress sits at the target while\nsettled_state_ still describes the state the UI left. The same\ncompletion clears is_animating_ unconditionally, so the stale pair is\nimmediately visible to the next scroll event.\n\nThe animation block is NotifyObserversOfUpdatedState(), so the\nin-flight animations live on observer-owned views (toolbars, app bar,\nweb view obscured insets) rather than on the agent itself. Anything\nthat re-assigns those properties cancels them. This happens when\nInvalidateInsetRange() runs mid-transition (keyboard shows or hides,\nomnibox position switches, rotation, tab switch), when an unrelated\nanimation touches the same views (omnibox focus, NTP transitions, tab\nswitcher), or when the app is backgrounded.\nUIViewAnimationOptionAllowUserInteraction keeps the UI live for the\nwhole 200-500 ms, so the window is easy to hit.\n\nBackgrounding during an exit animation is the sharpest case, because\nthe recovery path fails as well: applicationDidEnterBackground\nrequests a non-animated exit, but UpdateProgressAndBroadcast() returns\nearly since the progress already reached 1.0, so nothing repairs\nsettled_state_.\n\nWith eased transitions enabled, IncrementalScroll() clamps the\nprogress into the band implied by settled_state_. Scrolling from the\ninconsistent pair therefore snaps the progress to 0.75 or 0.25 with no\nanimation duration, and FullscreenMediator immediately animates the\nopposite transition: the toolbars flicker at full amplitude and the\ngesture does the reverse of what the user asked for. A stuck\nis_animating_ drops scroll events entirely until it clears.\n\nCommit settled_state_ next to the progress, since both describe the\nsame target, which removes the window in which they can disagree.\nBind a generation counter into the completion callback so a superseded\nanimation no longer clears is_animating_ or notifies for a transition\nthat another one already replaced. Let a non-animated request run\nwhile an animation towards the same target is in flight, so the\nbackgrounding handler settles instead of returning early.\n\nAnimationDidComplete() no longer inspects `finished`: an interrupted\nanimation snaps the observer views to the committed progress, so the\ntarget is reached either way, and suppressing the notification\nstranded observers that only react to completed transitions, such as\nLensOverlaySnapshotController.\n\nAdd regression tests for the state committed at transition start and\nfor the backgrounding sequence. Both fail without this change.\n\nBug: none\nChange-Id: I8b9efbf1c75014267a050bca0244badedf0309ca\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8398926\nCommit-Queue: Gauthier Ambard \u003cgambard@chromium.org\u003e\nReviewed-by: Scott Yoder \u003cscottyoder@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696186}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 6e09752f3e6d6968aa4bd9f66ff188cf9ee43c8c\n"
    },
    {
      "commit": "208d3715d49d79c921df57e288a4a7a680aa58af",
      "tree": "f986865ff31ae353312ac37dfc8e36ec52c6951c",
      "parents": [
        "517ba1bc115c1436b1f329d8a783e3225a79b67d"
      ],
      "author": {
        "name": "Zaina Al-Mashni",
        "email": "zalmashni@google.com",
        "time": "Fri Sep 11 13:50:14 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 14:04:19 2026"
      },
      "message": "[ios] Set globalPrivacyControlEnabled preference for iOS 27+\n\nThis change observes changes to the kUniversalOptOutEnabled pref in\nUniversalOptOutService and updates the globalPrivacyControlEnabled\npreference on the WKWebViewConfiguration\u0027s default webpage preferences.\n\nBug: 550176275\nChange-Id: Iaca3a32f197b261a59290285dd89f34126e98248\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8367950\nReviewed-by: Rohit Rao \u003crohitrao@chromium.org\u003e\nCommit-Queue: Zaina Al-Mashni \u003czalmashni@google.com\u003e\nReviewed-by: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696181}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 414b4383513699820d6862f00765af6ca5fa31f8\n"
    },
    {
      "commit": "517ba1bc115c1436b1f329d8a783e3225a79b67d",
      "tree": "6e9017b97f0a234751f17d3aed3a158e7697a1e6",
      "parents": [
        "ba538da09d28d0b71119da84771c7e84b9ffda38"
      ],
      "author": {
        "name": "Gauthier Ambard",
        "email": "gambard@chromium.org",
        "time": "Fri Sep 11 13:19:46 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 13:25:26 2026"
      },
      "message": "[Actor] Use PreferredFontForTextStyle instead of CreateDynamicFont\n\nReplace usages of the static CreateDynamicFont helper with\nPreferredFontForTextStyle in intelligence actor UI views to ensure proper\nfont metrics and dynamic type support.\n\nLow-Coverage-Reason: TRIVIAL_CHANGE Refactoring font helper call sites.\nChange-Id: I96e44e41ebdb3316e6e9b4566c6b6328b009f922\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8355487\nReviewed-by: Francis Beauchamp \u003cfbeauchamp@google.com\u003e\nAuto-Submit: Gauthier Ambard \u003cgambard@chromium.org\u003e\nCommit-Queue: Francis Beauchamp \u003cfbeauchamp@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696166}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 73f592320ec82dcc783dfbb2ec03c6ea3d475468\n"
    },
    {
      "commit": "ba538da09d28d0b71119da84771c7e84b9ffda38",
      "tree": "fe03586530be4567852459c4a1ecc72bdd69af1f",
      "parents": [
        "dc45556845dac8f2201c9355e39aae199e74e568"
      ],
      "author": {
        "name": "Aliona DANGLA",
        "email": "alionadangla@google.com",
        "time": "Fri Sep 11 13:06:07 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 13:11:55 2026"
      },
      "message": "[iOS][SiCBS] Keep explicitly removed tabs detached across omnibox focus\n\nWhen a user in Co-browse mode explicitly removes the active tab (e.g.\nvia the Shared Tabs sheet, item close button, or Tab Picker\ndeselection), subsequent omnibox focus or typing events would\nimmediately re-attach the tab because auto-addition was unaware of\nprior user removals.\n\nThis change tracks explicitly removed WebStateIDs to prevent unwanted\nauto-attachments while preserving manual re-attachment through the Tab\nPicker and re-enabling auto-attachment once the tab navigates to a new\ndocument.\n\nTest flow:\n- Auto-attach active tab -\u003e user removes it from Shared Tabs\n- Refocus omnibox -\u003e verify tab stays detached\n- Manually attach via Tab Picker -\u003e verify tab is attached\n- Navigate to new page -\u003e verify new page is auto-attached\n\nFixed: 555259028\nChange-Id: I6f0c9ead12b310d742b216a81fc72cc06c86a345\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8380661\nReviewed-by: Ameur Hosni \u003cameurhosni@google.com\u003e\nCommit-Queue: Aliona Dangla \u003calionadangla@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696153}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: caf6254ef7a21fb8b02b3b007df20193de9b04cc\n"
    },
    {
      "commit": "dc45556845dac8f2201c9355e39aae199e74e568",
      "tree": "0f39d4712ff0ac4645ce5d96d98a045c5de6719a",
      "parents": [
        "a823cb4fbbbb799e2604245f307e425ccb11b73e"
      ],
      "author": {
        "name": "Marc Treib",
        "email": "treib@chromium.org",
        "time": "Fri Sep 11 12:48:41 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 12:55:29 2026"
      },
      "message": "[iOS] Update tests to not create a FakeAuthenticationServiceDelegate\n\nAfter previous cleanups, the AuthenticationServiceDelegate interface is\nempty and unused. This CL updates tests to not specify it anymore, i.e.\nto call the parameter-less version of AuthenticationService::Initialize.\n\nThis CL covers the folder(s):\nios/chrome/browser/authentication/ui_bundled\n\nThis CL was uploaded by git cl split.\n\nR\u003dbsazonov@chromium.org\n\nBug: 407498240\nChange-Id: Iaf89567b60edb72acba1a95a2d2fe0a0cbbb8aef\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8378804\nAuto-Submit: Marc Treib \u003ctreib@chromium.org\u003e\nReviewed-by: Boris Sazonov \u003cbsazonov@chromium.org\u003e\nCommit-Queue: Boris Sazonov \u003cbsazonov@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696145}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: d706dfa9c333edfe0fab4f9b009c96b8db7f7a1e\n"
    },
    {
      "commit": "a823cb4fbbbb799e2604245f307e425ccb11b73e",
      "tree": "2e6b1c23c24bb2c9cda6248f4e6ba8e240f762ff",
      "parents": [
        "1eacc2cb7854828732d824916ae9d8f01b806027"
      ],
      "author": {
        "name": "Quentin Pubert",
        "email": "qpubert@google.com",
        "time": "Fri Sep 11 12:29:05 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 12:35:47 2026"
      },
      "message": "[iOS] Avoid in-process image decoding when saving images\n\nPreviously, ImageSaver called `[UIImage imageWithData:data]` in\n`didGetImageData:` to validate image data before saving, which caused\nthe entire image to be decoded in the browser process.\n\nHanding raw NSData directly to PhotoKit via `PHAssetCreationRequest`\navoids unnecessary image decoding and extra memory overhead in the\nbrowser process while preserving the original format and metadata. Any\ncorrupt or unsupported image data is handled gracefully by PhotoKit\u0027s\nerror callbacks.\n\nThis CL:\n1. Eliminates `[UIImage imageWithData:]` in `ImageSaver`, passing raw\n   NSData directly to PhotoKit via `PHAssetCreationRequest`.\n2. Updates `didFinishSavingWithError:` to check the photo library\u0027s\n   authorization status. If permission was denied or restricted, the\n   settings alert is displayed; for all other errors (such as invalid\n   data rejected by PhotoKit), the general save error alert\n   (`IDS_IOS_SAVE_IMAGE_ERROR`) is shown.\n3. Adds unit tests (`ImageSaverTest.*`) with mocked PhotoKit to verify\n   handling of invalid data, empty data, permissions, and lifecycle\n   cleanup.\n4. Adds an EarlGrey integration test\n   (`testSaveInvalidImageShowsErrorAlert` in `ContextMenuTestCase`)\n   gated behind `BUILDFLAG(IOS_CHROME_ENABLE_PROFILE_ALTERING_TESTS)`\n   to test saving invalid image data against the real photo library.\n\nFixed: 504223609\nChange-Id: I7afa649404e5a63645fbb92722111bca80e920df\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8369962\nCommit-Queue: Quentin Pubert \u003cqpubert@google.com\u003e\nAuto-Submit: Quentin Pubert \u003cqpubert@google.com\u003e\nReviewed-by: Gauthier Ambard \u003cgambard@chromium.org\u003e\nReviewed-by: Olivier Robin \u003colivierrobin@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696135}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 4fa3ed22ab21e94e6e687b92ff50b2966f58e27c\n"
    },
    {
      "commit": "1eacc2cb7854828732d824916ae9d8f01b806027",
      "tree": "27947763909508d7e5c3732b9e4aac1bb393f5b2",
      "parents": [
        "4593268404bc2e9032b89218b82d45a10e84c7e8"
      ],
      "author": {
        "name": "Lei Zhang",
        "email": "thestig@chromium.org",
        "time": "Fri Sep 11 11:21:27 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 11:27:56 2026"
      },
      "message": "Remove some superfluous Mojo includes from headers\n\nFiles that do not reference various mojo::Foo classes do not need\nmojo/public/cpp/bindings/foo.h. Delete and do IWYU to fix the build.\n\nBug: 40318405\nChange-Id: I392dcca6cd9e483814a7dca636625549a04f6a79\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8384701\nCommit-Queue: Lei Zhang \u003cthestig@chromium.org\u003e\nAuto-Submit: Lei Zhang \u003cthestig@chromium.org\u003e\nCommit-Queue: Daniel Cheng \u003cdcheng@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nOwners-Override: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696113}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 7ed11464e1ba5d18e87146addf60b8e91ee7fb67\n"
    },
    {
      "commit": "4593268404bc2e9032b89218b82d45a10e84c7e8",
      "tree": "463e3b6b7faccdd7f715f974e1c4c8eea694eb40",
      "parents": [
        "e6f715ecc770d7efbdfbd0a8f87636c60e727b83"
      ],
      "author": {
        "name": "Rafał Godlewski",
        "email": "rgod@google.com",
        "time": "Fri Sep 11 11:07:22 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 11:18:18 2026"
      },
      "message": "[DeviceAuth] Delegate creating request proto to platform\n\nIntroduces CreateDeviceAuthorizationRequest to the\nDeviceAuthorizationClient interface to allow platform embedders to\nasynchronously populate embedder-specific parameters (e.g. device\nintegrity signals) in sync_pb::GetDeviceAuthorizationKeyRequest.\n\nEventually:\n* service might want to prefill some fields, but at the moment all\nrequest fields are platform-specific.\n* we might want to extend that API with some options (e.g. so that the\nplatform does not fill trusted vault key availability during silent\nfetches)\n\nBug: 405036154\nChange-Id: I69bab04044ac505067d4aba8b3101eacb68b44e5\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8377782\nReviewed-by: Adem Derinel \u003cderinel@google.com\u003e\nCommit-Queue: Rafał Godlewski \u003crgod@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696108}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ed08fcfa08ac539ea476ef2abc8997db6c46390d\n"
    },
    {
      "commit": "e6f715ecc770d7efbdfbd0a8f87636c60e727b83",
      "tree": "06b5b487797080a1f1200928f215f8ccf84356c8",
      "parents": [
        "e84f5dd5ad15a3c65765bce6a8ba115609724a65"
      ],
      "author": {
        "name": "Ankush Singh",
        "email": "ankushkush@google.com",
        "time": "Fri Sep 11 10:22:49 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 10:30:35 2026"
      },
      "message": "[iOS][STTS] Record MobileMessageBanner on infobar activation\n\nWhen a user taps \"Open\" on the Send Tab to Self infobar banner, the\nreceived background tab is activated in the foreground. Previously, this\ntriggered SendTabToSelfTabCardLabelData::WasShown(), which logged\nShareActivatedEntryPoint::kTabStrip.\n\nThis CL removes SendTabToSelfTabCardLabelData before activating the tab\nand marks the entry as activated with\nShareActivatedEntryPoint::kMobileMessageBanner, ensuring accurate\ntelemetry attribution for infobar interactions.\n\nTAG\u003dagy\nCONV\u003dc6264ac0-fc9b-4e07-8392-fb4cd1ba1241\n\nBug: 488072250\nChange-Id: Ia36db9950bfae14133bb1a1ed0fc00f57c6910cc\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8390878\nReviewed-by: Michael Tatarski \u003cmtatarski@google.com\u003e\nAuto-Submit: Ankush Singh \u003cankushkush@google.com\u003e\nCommit-Queue: Ankush Singh \u003cankushkush@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696088}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 3d5c52a89139da5b73f26cc0d2c39ae517265441\n"
    },
    {
      "commit": "e84f5dd5ad15a3c65765bce6a8ba115609724a65",
      "tree": "8abc2dfb794562329f61e5630d26cca30fc940f9",
      "parents": [
        "4564847da90bbee45da8b90828c69c3f8c28ace3"
      ],
      "author": {
        "name": "Jihad Hanna",
        "email": "jihadghanna@google.com",
        "time": "Fri Sep 11 10:11:18 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 10:23:51 2026"
      },
      "message": "Validate calls to UpdateAutofillDataListValues()\n\nDetails in the bug description. The CL compares frame tokens instead of\ndelegate pointers as it seems like the more direct comparison to make.\n\nFixed: 521951328\nChange-Id: Ib0537a3e941c0a744248e3f931253ee378a35fd1\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8367287\nReviewed-by: Jan Keitel \u003cjkeitel@google.com\u003e\nReviewed-by: Christoph Schwering \u003cschwering@google.com\u003e\nCommit-Queue: Jihad Hanna \u003cjihadghanna@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696085}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 343058f4edcefa3434a16466ce8eb1e1664bbb42\n"
    },
    {
      "commit": "4564847da90bbee45da8b90828c69c3f8c28ace3",
      "tree": "bd8dc707a9da869c41f8b015d6027d83a5181e6e",
      "parents": [
        "902bb41e1c9ffce57b7804bfec8090273f453fa0"
      ],
      "author": {
        "name": "Rafał Godlewski",
        "email": "rgod@google.com",
        "time": "Fri Sep 11 10:03:53 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 10:14:03 2026"
      },
      "message": "[iOS][Device Auth] Add device auth service factory and client\n\nAdds IOSDeviceAuthorizationServiceFactory and\nIOSDeviceAuthorizationClient.\n\nDeviceAuthorizationService is a platform-agnostic class, responsible for\ncoordinating device authorization keys operations.\n\nIOSDeviceAuthorizationClient implements a set of platform-specific\nfunctionalities of the service. For now that includes the interaction\nwith the local key storage (crrev.com/c/8284401), but it will be\nextended with more methods in follow-ups (e.g. fetching device integrity\nsignals and trusted vault key availability)\n\nFor now, the factory returns nullptr with the device auth key feature\ndisabled.\n\nBug: 405036154\nChange-Id: I727ab31407cd29af98a3db601480452153d5b1c3\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8362800\nReviewed-by: Alexis Hétu \u003csugoi@chromium.org\u003e\nReviewed-by: Tommy Martino \u003ctmartino@chromium.org\u003e\nCommit-Queue: Rafał Godlewski \u003crgod@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696082}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 3af19c3a91226c31916d8f3973f024d9e10e0983\n"
    },
    {
      "commit": "902bb41e1c9ffce57b7804bfec8090273f453fa0",
      "tree": "382a5eaff6c1c2f6b0d5ba20a08f6953be6ca854",
      "parents": [
        "a544f364899231fee266147e8833f6e1886b276d"
      ],
      "author": {
        "name": "Ameur Hosni",
        "email": "ameurhosni@google.com",
        "time": "Fri Sep 11 10:01:46 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 10:08:15 2026"
      },
      "message": "[IOS] Support popout layout on resized phones\n\nAdopt `ShouldApplyOmniboxPopoutLayout` across Composebox and Omnibox\npopup to properly adapt to size class changes (e.g. iPad Split View).\nEnsure a fresh `ComposeboxTheme` is generated and propagated via\n`-updateTheme:` upon re-presentation, and reset popover shadows, borders,\nand controls when returning to compact layout.\n\nTablet: http://shortn/_VwSikZOkGp\nPhone: http://shortn/_XbG6UO6CI9\nResized phone: http://shortn/_HREjGZOFBs\n\nBug: 556182733\nChange-Id: I7fc0e43ec1af48a52ece4afe2e590a63280a8a21\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8367148\nReviewed-by: Gauthier Ambard \u003cgambard@chromium.org\u003e\nReviewed-by: Stepan Khapugin \u003cstkhapugin@chromium.org\u003e\nCommit-Queue: Stepan Khapugin \u003cstkhapugin@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696079}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: d2eccc080f7b1da37cfb5d161f603a7ed17374ef\n"
    },
    {
      "commit": "a544f364899231fee266147e8833f6e1886b276d",
      "tree": "b63198ee2ba6237e55194ceb576744ca5edb9846",
      "parents": [
        "c3ce973cf40bd9515a2b14140a9b488dadf1a7e9"
      ],
      "author": {
        "name": "Azamat Myrzabekov",
        "email": "azamatmz@google.com",
        "time": "Fri Sep 11 09:54:25 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 10:01:07 2026"
      },
      "message": "Enable translation for Universal Opt-Out strings on iOS\n\nBug: b:522291279\nChange-Id: I65fe2ada19948994d242d5bc67421c1c87c2dac9\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8387397\nReviewed-by: Zaina Al-Mashni \u003czalmashni@google.com\u003e\nCommit-Queue: Zaina Al-Mashni \u003czalmashni@google.com\u003e\nAuto-Submit: Azamat Myrzabekov \u003cazamatmz@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696073}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f5c51b1a50d63c1b4ad5b087409db2863eb27386\n"
    },
    {
      "commit": "c3ce973cf40bd9515a2b14140a9b488dadf1a7e9",
      "tree": "81dc05a4d276480a1327f2ef2565c9e6ba216c7a",
      "parents": [
        "9f5fdb430c51fa829a33ab68f815138e7f7309ae"
      ],
      "author": {
        "name": "Quentin Pubert",
        "email": "qpubert@google.com",
        "time": "Fri Sep 11 09:53:45 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 10:00:14 2026"
      },
      "message": "[iOS] Restrict script execution in Reader Mode viewer with CSP\n\nThis CL adds a nonce-based \u003cmeta\u003e Content Security Policy (CSP) to the\nHTML template used by the Reader Mode viewer on iOS and updates the\nviewer bootstrap script to carry the matching nonce. This ensures script\nexecution is constrained to the authorized viewer scripts and blocks\nun-nonced inline scripts and event handlers from executing.\n\nContext: In Chrome for iOS, Reader Mode commits distilled article HTML\nusing WKWebView\u0027s `loadData:MIMEType:characterEncodingName:baseURL:`\nwith the original article\u0027s URL as the base URL. Because `loadData:`\ndoes not inherit or carry HTTP response headers from the original page\nor server, the rendered document has no Content Security Policy by\ndefault. Adding a \u003cmeta\u003e CSP ensures consistent policy enforcement\nacross distilled markup loaded at that origin.\n\nTesting:\n- Added unit tests in `components/dom_distiller/core/viewer_unittest.cc`\n  verifying that the template generates the nonce-based CSP meta tag\n  when a nonce is provided and omits it when empty.\n- Added integration unit tests in\n  `i/c/b/reader_mode/model/reader_mode_distiller_viewer_unittest.mm`\n  verifying that inline event handlers and un-nonced scripts do not\n  execute when loaded via WebState::LoadData(), while nonced scripts\n  execute successfully.\n\nFixed: 502034469\nChange-Id: Ifb0f3433a48242c87e036e6f2645d8a23961128d\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8367146\nAuto-Submit: Quentin Pubert \u003cqpubert@google.com\u003e\nCommit-Queue: Quentin Pubert \u003cqpubert@google.com\u003e\nReviewed-by: Brandon Wylie \u003cwylieb@google.com\u003e\nReviewed-by: Olivier Robin \u003colivierrobin@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696072}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ca43a1a7b8859a5d4dca084e3074782379281054\n"
    },
    {
      "commit": "9f5fdb430c51fa829a33ab68f815138e7f7309ae",
      "tree": "1306ebd29f5b847e86b29ee1b7c24b49cd3af8ca",
      "parents": [
        "5e7e87c4127f5f4e52ee361a93aa6954404fc40f"
      ],
      "author": {
        "name": "Olivier Robin",
        "email": "olivierrobin@google.com",
        "time": "Fri Sep 11 09:36:54 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 09:46:42 2026"
      },
      "message": "[ios] Update ReferrerPolicyDefault to strict-origin-when-cross-origin\n\nAlign web::ReferrerPolicyDefault with the modern Chromium and W3C\nstandard default referrer policy (strict-origin-when-cross-origin).\n\nThis is the default value according to W3C\nhttps://w3c.github.io/webappsec-referrer-policy/#default-referrer-policy\n\nBug: 511753006\nChange-Id: I463852eeccddb595c037e92ee76b0fafab963429\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8352983\nReviewed-by: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nCommit-Queue: Olivier Robin \u003colivierrobin@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1696063}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0e9e0489149a7f5ebf8686eebf1d184113e4489a\n"
    },
    {
      "commit": "5e7e87c4127f5f4e52ee361a93aa6954404fc40f",
      "tree": "87bb7ea39dfa735247f1a39f6b471d9f5b7a9201",
      "parents": [
        "0e775775c35f8883646dbad7eadbe1e54fa741f6"
      ],
      "author": {
        "name": "Federica Germinario",
        "email": "fedegermi@google.com",
        "time": "Fri Sep 11 09:35:43 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 09:45:49 2026"
      },
      "message": "[ios] Strengthen validation for incoming Share Extension command URLs\n\nStrengthen intent validation for incoming Share Extension command URLs\nin SceneController and TaskRequestForURLContext by verifying the URL\nhost, path, and confirming the presence of an active command in the\nshared App Group user defaults.\n\nChange-Id: Ic378777c956c09a97df49cdb830104e33963eb0a\nFixed: 503725788\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8379902\nReviewed-by: Olivier Robin \u003colivierrobin@chromium.org\u003e\nReviewed-by: Mark Cogan \u003cmarq@chromium.org\u003e\nCommit-Queue: Federica Germinario \u003cfedegermi@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696061}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b93934eea27c09dd73f1e0054ab624f6f801d242\n"
    },
    {
      "commit": "0e775775c35f8883646dbad7eadbe1e54fa741f6",
      "tree": "9711606c0807f32da2d32de6ac4bf6f36ee6c931",
      "parents": [
        "5b67028431fe02f16a7d32c608448d8dc602198c"
      ],
      "author": {
        "name": "Gianmarco Picarella",
        "email": "picarella@google.com",
        "time": "Fri Sep 11 09:33:07 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 09:38:43 2026"
      },
      "message": "[autofill] Strip separators and normalize digits in sensitive values\n\nSensitive-value detectors for credit cards, IBANs, and SSNs could be\nevaded by inserting invisible Unicode format characters (e.g. ZWSP,\nLRM), typographic dashes (e.g. en dash, minus sign), or non-ASCII\ndecimal digits (e.g. fullwidth Zenkaku or Arabic-Indic),\npotentially saving sensitive values into Autocomplete history.\n\nThis CL introduces `StripSeparatorsAndNormalizeDigits()`, which:\n\n* Strips Unicode whitespace, dash punctuation, format controls,\nand dots using ICU character properties.\n\n* Folds any Unicode decimal digits to canonical ASCII \u00270\u0027..\u00279\u0027.\n\n* Replaces `StripCardNumberSeparators()`, `RemoveIbanSeparators()`,\nand the separator-stripping logic in `IsSSN()` with this unified\nhelper.\n\nBug: 556230099\nChange-Id: If1b750f7675990248daf0964ed9da6260a8e3087\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8367426\nReviewed-by: Jihad Hanna \u003cjihadghanna@google.com\u003e\nCommit-Queue: Gianmarco Picarella \u003cpicarella@google.com\u003e\nReviewed-by: Xiangdong Kong \u003cxiangdongkong@google.com\u003e\nReviewed-by: Vincent Boisselle \u003cvincb@google.com\u003e\nReviewed-by: Jan Keitel \u003cjkeitel@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696058}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: fe471fb1cc523b27ac00b76063a1ef290863bc03\n"
    },
    {
      "commit": "5b67028431fe02f16a7d32c608448d8dc602198c",
      "tree": "ac5114003de6ba0e60aa07c954172f6d3292e3c7",
      "parents": [
        "2a12a12a39b3e09945cf07fe8a819f815a5fc389"
      ],
      "author": {
        "name": "Federica Germinario",
        "email": "fedegermi@google.com",
        "time": "Fri Sep 11 07:38:38 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 07:45:51 2026"
      },
      "message": "[ios] Add implementation to handle Gemini promo external action\n\nThis change adds implementation in new startup flow to handle Gemini\npromo external action.\n\nChange-Id: Iaa1415f068e9be421a44a2fa98e0a3ddbd0e719a\nBug: 493816082\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8381337\nReviewed-by: Sylvain Defresne \u003csdefresne@chromium.org\u003e\nCommit-Queue: Federica Germinario \u003cfedegermi@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696004}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b39cd4582c11711fae9417434ed1d5c7e8833719\n"
    },
    {
      "commit": "2a12a12a39b3e09945cf07fe8a819f815a5fc389",
      "tree": "fc0f10acf6c8fca2e9b1f369f953f968be3442c3",
      "parents": [
        "5f2b7e81826e6c3bd4f12c594b329fb18b1e9425"
      ],
      "author": {
        "name": "Your Name",
        "email": "przybytniowska@google.com",
        "time": "Fri Sep 11 07:38:25 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 07:44:37 2026"
      },
      "message": "[Isolated Mode] Add IsPrimaryOTRProfileWithRegularParent to client\n\nAdds `IsPrimaryOTRProfileWithRegularParent()` to\n`AutocompleteProviderClient` to generalize Incognito checks for new OTR\nmode (Enterprise Isolated Mode) while safely excluding Guest profiles.\nOmnibox and autocomplete migrations to this new function will be\nperformed in child CLs.\n\nBug: b/559024758\n\nDesign Doc: go/chrome-enterprise-isolated-mode-client-dd\n\nChange-Id: I74c5b2c6b091551300bb1e057b9632c8e3c32075\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8380677\nReviewed-by: Viacheslav Krakhotin \u003ckrakhotin@google.com\u003e\nCommit-Queue: Julia Przybytniowska \u003cprzybytniowska@google.com\u003e\nReviewed-by: Ameur Hosni \u003cameurhosni@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1696003}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 490ab7ad6974e0220acaa2620c57a6b0ec00bfd8\n"
    },
    {
      "commit": "5f2b7e81826e6c3bd4f12c594b329fb18b1e9425",
      "tree": "192c41a54ac9060d2491fba20323304397017b4d",
      "parents": [
        "c5e374fe39843205702e373171a0a32eea6a44c8"
      ],
      "author": {
        "name": "Michał Kaczmarczyk",
        "email": "mickaczmarczyk@google.com",
        "time": "Fri Sep 11 06:18:13 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 06:28:27 2026"
      },
      "message": "Implement user signals reporting state in connectors-internals on iOS.\n\nThis CL implements GetSignalsReportingState in\nConnectorsInternalsPageHandler for iOS. When the IOSSignalSharingEnabled\nfeature is active, the handler now retrieves reporting preferences,\nchecks the profile reporting service and scheduler, and uses\nChromeProfileRequestGenerator to generate and serialize the signals\nreport.\n\nAdditionally, this CL adds unit tests to verify the page handler\u0027s\nbehavior under different feature and preference configurations.\n\nBug: 421927804\nChange-Id: I2021a188baa324fd058f6fea4352148121997fc4\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8354688\nCommit-Queue: Michał Kaczmarczyk \u003cmickaczmarczyk@google.com\u003e\nReviewed-by: Gauthier Ambard \u003cgambard@chromium.org\u003e\nReviewed-by: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nAuto-Submit: Michał Kaczmarczyk \u003cmickaczmarczyk@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695979}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 7b00b705a1e1213eaa830a423438670538c9e55c\n"
    },
    {
      "commit": "c5e374fe39843205702e373171a0a32eea6a44c8",
      "tree": "c101cad9cce0b608bfd86993bfb36f72232592fa",
      "parents": [
        "adafa7616ffec9f16a1468004ea402a52821f260"
      ],
      "author": {
        "name": "Mike Dougherty",
        "email": "michaeldo@chromium.org",
        "time": "Fri Sep 11 04:32:35 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 04:39:07 2026"
      },
      "message": "[iOS] Cleanup FakeWebClient header\n\nRemove FakeWebClient::SetPluginNotSupportedText which was previously\nused to set the text content for a DOM element which was displayed over\nunsupported plugin elements. That feature was already completely removed\nso this is no longer used.\n\nAdditionally remove unused `@class` declarations.\n\nBug: None\nChange-Id: I90ce1d14bbb6fd6e8073d76a0b867997f5036c1c\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8380870\nReviewed-by: Alexandra Pereira \u003calexandrasp@google.com\u003e\nCommit-Queue: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695953}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 31f8250e37268aa58ee25314ef7a4f3f4856aebb\n"
    },
    {
      "commit": "adafa7616ffec9f16a1468004ea402a52821f260",
      "tree": "1744c8cc236afd76d961c595ddb297aeaac8fbe0",
      "parents": [
        "449110750a8b9ebc32690a08ac0600c0c40d8285"
      ],
      "author": {
        "name": "Mike Dougherty",
        "email": "michaeldo@chromium.org",
        "time": "Fri Sep 11 00:40:01 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Sep 11 00:46:39 2026"
      },
      "message": "Remove unused ios/web/navigation APIs\n\nBug: None\nChange-Id: Ida890dbf2cbbba3fb7282fd2aae19a3927caf9df\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8382442\nReviewed-by: Justin Cohen \u003cjustincohen@google.com\u003e\nAuto-Submit: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nCommit-Queue: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nReviewed-by: Alexandra Pereira \u003calexandrasp@google.com\u003e\nCommit-Queue: Alexandra Pereira \u003calexandrasp@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695845}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: aa0df0a65c42a9fd29d1a46cb89854c9321c7a22\n"
    },
    {
      "commit": "449110750a8b9ebc32690a08ac0600c0c40d8285",
      "tree": "058d5c93eccfe3bc124898bb3d3d71aacfff9da6",
      "parents": [
        "2b2c59cd60b561eeda83c054181b64926922d83b"
      ],
      "author": {
        "name": "Tarek Makkouk",
        "email": "tarekmakkouk@google.com",
        "time": "Thu Sep 10 23:28:20 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 23:36:20 2026"
      },
      "message": "[iOS] Record prompt metrics for Gemini Live and split Chat/Live metrics\n\nRecord Live prompt metrics upon entering the transcribing state, split Chat and Live context attachment metrics into separate histograms while preserving the combined metric, and gate Live session start metrics on user consent.\n\nBug: 558764798\nChange-Id: Ibdb20fb4c250a9bf8f91e0e5b78ddd93a083f8cd\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8377633\nReviewed-by: Yasaman Sedaghat \u003cyasamans@google.com\u003e\nCommit-Queue: Tarek Makkouk \u003ctarekmakkouk@google.com\u003e\nReviewed-by: Robbie Gibson \u003crkgibson@google.com\u003e\nReviewed-by: Adam Arcaro \u003cadamta@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695773}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8700b05792ddb44f6256504d87f3d3af01b786a8\n"
    },
    {
      "commit": "2b2c59cd60b561eeda83c054181b64926922d83b",
      "tree": "9611f3293cf275abbcf416bc492a24d5f1ac7fcf",
      "parents": [
        "febd54cfa968952aeb3084f31d5bced7e5cbbb2d"
      ],
      "author": {
        "name": "Louis Romero",
        "email": "lpromero@google.com",
        "time": "Thu Sep 10 22:55:41 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 23:01:46 2026"
      },
      "message": "[ios][deflake] Mark testScrollingDismissesKeyboard flaky in expectations\n\nUn-disable testScrollingDismissesKeyboard in\nOmniboxPopupWithFakeSuggestionTestCase and mark it with a\n[ Pass Failure ] expectation in ios/testing/test_expectations.txt\nwhile investigating flakiness.\n\nBug: 521844463\nChange-Id: Id2b9824cf6c2ae8fbef309fb045877707aa4ed46\nFixed: 521844463\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8391677\nReviewed-by: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nOwners-Override: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nCommit-Queue: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nAuto-Submit: Louis Romero \u003clpromero@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695734}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 9619653ae7dab466674dce09c9c8253909ce02c1\n"
    },
    {
      "commit": "febd54cfa968952aeb3084f31d5bced7e5cbbb2d",
      "tree": "ca2f04a2a64a156bc3194b2ccc3c55c4834ce418",
      "parents": [
        "9bf1392ee6c37a8e378cce88beacf2e3a341df5b"
      ],
      "author": {
        "name": "Leo Zhao",
        "email": "leozhao@google.com",
        "time": "Thu Sep 10 22:35:09 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 22:41:40 2026"
      },
      "message": "[iOS][AtMemory] Delegate fill execution to AtMemoryMediator\n\nUpdates `AtMemorySearchMediator` and `AtMemoryGranularFillMediator` to\ndelegate item selection to `AtMemoryFillCommands` via\n`fillWithSuggestion:`, rather than directly invoking the autofill\nmanager or injecting plain text.\nThis centralizes fill routing within `AtMemoryMediator`, ensuring\nconsistent reauthentication for SPII attributes, manual injection for\nplain text attributes, and unified UI dismissal upon filling.\n- Delegate search and granular fill item selections to `fillWithSuggestion:`.\n- Centralize AtMemory dismissal within `AtMemoryMediator` upon fill completion.\n- Handle invalid selection indices with dismissal in search and granular fill mediators.\n\nBug: 555810315\nChange-Id: I6c3bfdeb4b2cc6b86d95d4c1b1159e68c16b57a2\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8354947\nCommit-Queue: Leo Zhao \u003cleozhao@google.com\u003e\nReviewed-by: Alexis Hétu \u003csugoi@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695721}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: fcc2e0b50f0f83da8b146bf3777cc2f43f21cabb\n"
    },
    {
      "commit": "9bf1392ee6c37a8e378cce88beacf2e3a341df5b",
      "tree": "8bc40d64a439fb86f5d30d74ee6165a37d795c8a",
      "parents": [
        "147d273cc3e57638bb5f75c85993fd4e148f670a"
      ],
      "author": {
        "name": "Alexandra Pereira",
        "email": "alexandrasp@google.com",
        "time": "Thu Sep 10 21:19:01 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 21:36:25 2026"
      },
      "message": "[iOS] Upgrade HTTP redirect targets from POST navigations\n\nHttpsOnlyModeUpgradeTabHelper caches whether a navigation is a POST in\nDidStartNavigation() to exempt form submissions from HTTPS upgrades.\nHowever, HTTP server redirects (e.g. 302/303) convert POST requests to\nGETs. Because navigation_is_post_ was not updated, ShouldAllowRequest()\ncontinued to treat the redirect as a POST, allowing cleartext HTTP to\nload without an upgrade or interstitial.\n\nUpdate navigation_is_post_ in ShouldAllowRequest() using the incoming\nrequest\u0027s HTTPMethod so that redirected GET requests are properly\nupgraded.\n\nFixed: 504227656\nChange-Id: I939e1f018a614cca18988c70ec8f5bf86600beec\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8382522\nReviewed-by: Mustafa Emre Acer \u003cmeacer@chromium.org\u003e\nCommit-Queue: Alexandra Pereira \u003calexandrasp@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695669}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 33312408f3550ed5840bdbcf24cc1b92a988f383\n"
    },
    {
      "commit": "147d273cc3e57638bb5f75c85993fd4e148f670a",
      "tree": "cdf071d9638b527290f04206cc152502d40aa549",
      "parents": [
        "f003f0a951a3e1fa64cf6aee90db8141e9af8598"
      ],
      "author": {
        "name": "Leo Zhao",
        "email": "leozhao@google.com",
        "time": "Thu Sep 10 21:09:27 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 21:18:59 2026"
      },
      "message": "[iOS] An EG test for default input view\n\nThis CL adds an EG test to verify that navigation buttons are shown for\ncontenteditable elements when an `select` element exists.\n\nBug: 558785473\nChange-Id: I199f91b8712a1dd977f917086015802c744975bd\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8370942\nReviewed-by: Alexis Hétu \u003csugoi@chromium.org\u003e\nCommit-Queue: Leo Zhao \u003cleozhao@google.com\u003e\nReviewed-by: Tommy Martino \u003ctmartino@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695657}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 4ca5c34aa68e0c41b202f9f9ff8803fc514cd51d\n"
    },
    {
      "commit": "f003f0a951a3e1fa64cf6aee90db8141e9af8598",
      "tree": "41a8001959562387da1553cd5bfbebdd3a950f6b",
      "parents": [
        "6501b3ac326d04dc8323ca96d1baa78d30fb856b"
      ],
      "author": {
        "name": "Leo Zhao",
        "email": "leozhao@google.com",
        "time": "Thu Sep 10 21:08:36 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 21:17:51 2026"
      },
      "message": "[iOS] Remove kIOSKeyboardAccessoryDefaultView\n\nThis feature flag was added as a kill switch for the keyboard accessory\ndefault view. It was enabled by default and shipped with M144.\nIt has served its purpose, now it is removed by this CL from the\ncodebase.\n\nBug: 558785473\nChange-Id: I8df2e7f3ba7244a1b734e493270802012d9254f6\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8374023\nCommit-Queue: Leo Zhao \u003cleozhao@google.com\u003e\nReviewed-by: Tommy Martino \u003ctmartino@chromium.org\u003e\nReviewed-by: Alexis Hétu \u003csugoi@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695656}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 83c8720b22a90a274a6a8fd3b5472ef10206201e\n"
    },
    {
      "commit": "6501b3ac326d04dc8323ca96d1baa78d30fb856b",
      "tree": "cdb22df6cdcdd541e02492e0a89d53f84346a105",
      "parents": [
        "00fbaa4935a9b3cdaa19af4d87d0c4879e0d26b4"
      ],
      "author": {
        "name": "Leo Zhao",
        "email": "leozhao@google.com",
        "time": "Thu Sep 10 21:04:37 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 21:11:19 2026"
      },
      "message": "[iOS][AtMemory] Pass focused FieldGlobalId to AtMemory\n\nTo support filling obfuscated memory values (SPII), AtMemory requires\nthe target FieldGlobalId. Instead of exposing a read query on\nManualFillContentInjector, this CL routes the focused field ID directly\nto AtMemoryCommands upon presentation.\n\n- Unifies AtMemoryCommands and AutofillAgentDelegate on `-showAtMemoryForField:`, removing the parameterless `-showAtMemory`.\n\n- Exposes `lastFocusedFieldGlobalId` on FormInputAccessoryMediator as an\n`std::optional\u003cFieldGlobalId\u003e`, ensuring cryptographic origin checks\nand driver frame token validity.\n\n- Resolves the active frame and driver in AutofillAgent to forward\n`FieldGlobalId` when `kAutocompleteAtMemoryButton` suggestions are\nselected.\n\nBug: 555810315\nChange-Id: I0a752cccff7b995e20fef5226c8dd34408bda1d1\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8342029\nCommit-Queue: Leo Zhao \u003cleozhao@google.com\u003e\nReviewed-by: Vincent Boisselle \u003cvincb@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695652}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ecb6866810d86ff41d22100a8b58b7e245e1c111\n"
    },
    {
      "commit": "00fbaa4935a9b3cdaa19af4d87d0c4879e0d26b4",
      "tree": "e7e6a7671d5729764d6dbf1bba2c51313cbbe038",
      "parents": [
        "46da57de84f813e5ba2f273d685699a2a8e1fd01"
      ],
      "author": {
        "name": "Olivier Robin",
        "email": "olivierrobin@google.com",
        "time": "Thu Sep 10 20:55:51 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 21:00:56 2026"
      },
      "message": "[ios] Clean up deprecated calls in referrer_util\n\nReplace DeprecatedGetOriginAsURL with url::Origin in referrer_util.cc\nand its unit tests. Also update outdated comment referencing\nresource_dispatcher_host_impl.cc to reference resource_request.cc.\n\nBug: 511753006\nChange-Id: I255995a1b5912948bdd73da2e051d933bdd43802\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8357750\nCommit-Queue: Olivier Robin \u003colivierrobin@chromium.org\u003e\nReviewed-by: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695642}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: fd5f7296c5961aeaafcfdd32115fba8b0e558e41\n"
    },
    {
      "commit": "46da57de84f813e5ba2f273d685699a2a8e1fd01",
      "tree": "9befa3a70edc2c61ea53468ea70e40a1831547c9",
      "parents": [
        "0adc6c7cdbd663570951f78e886bbd835865e570"
      ],
      "author": {
        "name": "Alexis Hétu",
        "email": "sugoi@chromium.org",
        "time": "Thu Sep 10 20:53:30 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 21:00:02 2026"
      },
      "message": "[iOS] Enforce HTTPS injection checks on manual fill card cell actions\n\nCredit card manual fill actions must only inject into secure (HTTPS)\ncontexts. While tapping the card number was gated by an HTTPS check,\ntapping the \"Autofill Form\" button, the CVC button for cards that\ncannot be filled directly (e.g. masked server cards), and the\nexpiration date chips for virtual cards initiated full card unmasking\nor form filling without first checking if the context is secure.\n\nThis CL adds `canUserInjectInPasswordField:NO requiresHTTPS:YES` guards\nto `onAutofillFormButtonTapped`, `userDidTapCVC:`, and virtual card\nexpiration date taps before recording metrics or requesting full card\nunmasking, and adds unit tests covering these cases.\n\nBug: 518096516\nChange-Id: Ib76fdf460802dd7bbd3b87761bb08695ebca62f0\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8371483\nReviewed-by: Vincent Boisselle \u003cvincb@google.com\u003e\nCommit-Queue: Alexis Hétu \u003csugoi@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695639}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a557999d68047e2a54f2f20560dae9ab90d89b48\n"
    },
    {
      "commit": "0adc6c7cdbd663570951f78e886bbd835865e570",
      "tree": "6348bc9bc591592e9fe1baaef5b22d000e208796",
      "parents": [
        "7edb6bfb2f9daf576c1fef8b6e701af622870a20"
      ],
      "author": {
        "name": "Chris Lu",
        "email": "thegreenfrog@google.com",
        "time": "Thu Sep 10 20:23:53 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 20:35:17 2026"
      },
      "message": "[iOS] Enable assistant button in incognito mode and show snackbar\n\nEnable the Assistant/Gemini button in Incognito mode when eligible for\nthe original regular profile.\n\nWhen tapped in Incognito mode:\n- Show a snackbar informing the user that Gemini isn\u0027t available in\n  Incognito mode.\n- Provide a \"Switch modes\" snackbar action that opens the regular tab\n  grid.\n\nUpdates snackbar positioning logic to properly sit above either\nthe bottom toolbar or appbar. Also updates tab grid transition logic\nto ensure a smooth transition from an incognito tab directly to the\nregular tabgrid.\n\nVideo: https://screencast.googleplex.com/cast/NTM1MTMxNjY2NTY2MzQ4OHwxN2E5MjcyZS0xNg\n\nBug: 557373271\nChange-Id: Idd54d371d1b07458f588908b5de07c74f8471dad\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8349593\nCommit-Queue: Chris Lu \u003cthegreenfrog@google.com\u003e\nReviewed-by: Luc Nguyen \u003clucnguyen@google.com\u003e\nReviewed-by: Gauthier Ambard \u003cgambard@chromium.org\u003e\nAuto-Submit: Chris Lu \u003cthegreenfrog@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695616}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: cb3d0733f81a96659e2badcadd006b723f9e79e2\n"
    },
    {
      "commit": "7edb6bfb2f9daf576c1fef8b6e701af622870a20",
      "tree": "da9eb176ccc93e5b6114b873218bec50160cf514",
      "parents": [
        "2d306ce4803559fb6f07ce88fec87fa8cb0f908e"
      ],
      "author": {
        "name": "Gayane Petrosyan",
        "email": "gayane@google.com",
        "time": "Thu Sep 10 20:21:42 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 20:28:32 2026"
      },
      "message": "[iOS] Refactor out Gemini container UI state manager logic\n\nRefactor out Gemini container UI state manager logic with live mode\nand response ready UI transitions.\n\nKey changes:\n- Mediator passes all the UI modifying events to the UI state manager\nand UI state manager notifies the mediator when UI state changes.\n- combine detent, hasGrabber and zeroStateVisible into a struct\n- create functions that create different UI combos\n- adds separate hasConversation which is used in along with\nzeroStateVisible. Now zeroStateVisible strictly means whether we are\nshowing the ZSS. For example in live mode we can have hasConversation\u003dNO\nbut zeroStateVisible\u003dNO. This is important to keep track of in case\nuser exits live mode without conversation, then we need to bring back\nthe ZSS.\n- removed updateUIState function and now mode and processing status\nchanges happen separately.\n\nChange-Id: I03dd552297e37b7593f9ca35e4d3d1fe99868e4c\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8354970\nReviewed-by: Adam Arcaro \u003cadamta@google.com\u003e\nReviewed-by: Francis Beauchamp \u003cfbeauchamp@google.com\u003e\nCommit-Queue: Gayane Petrosyan \u003cgayane@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695614}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a30bc66418d48ae00808b793ba72e07a83c7c90a\n"
    },
    {
      "commit": "2d306ce4803559fb6f07ce88fec87fa8cb0f908e",
      "tree": "a06eb6298c038dbb6f4771d88c87e977f73f445a",
      "parents": [
        "495c9858736f66cd6f806ed62d10facd2275591f"
      ],
      "author": {
        "name": "Matt Reichhoff",
        "email": "mreichhoff@chromium.org",
        "time": "Thu Sep 10 20:10:22 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 20:21:05 2026"
      },
      "message": "[iOS] De-couple actionable APC optimization from IPC flag\n\nThis is a precursor to removal of the launched IPC optimization flag.\n\nBug: 540250193\nChange-Id: Ie3da97d2c9bbcd807307f4a66719d7c0f6dd831b\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8354724\nReviewed-by: Nicolas MacBeth \u003cnicolasmacbeth@google.com\u003e\nCommit-Queue: Matt Reichhoff \u003cmreichhoff@chromium.org\u003e\nReviewed-by: Fikre Mengistu \u003cfikremengistu@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695609}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 1d44ead7b0a2f7f4395a276b672c4a45f9feb25b\n"
    },
    {
      "commit": "495c9858736f66cd6f806ed62d10facd2275591f",
      "tree": "4794cefee257ff303fdab1170d407d25921d88c1",
      "parents": [
        "2a640b31c13218931a2aa9997083ffc72f8c3dbc"
      ],
      "author": {
        "name": "Quentin Pubert",
        "email": "qpubert@google.com",
        "time": "Thu Sep 10 20:05:47 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 20:15:34 2026"
      },
      "message": "[iOS] Exit fullscreen when snapping at the top of the page\n\nThis CL updates -[FullscreenMediator snap] so that when\n_lastContentOffset is 0:\n- It does not return early when fullscreen is collapsed.\n- It forces SnapType::kExit, ensuring toolbars expand when at the top\n  of the page.\n\nNon-Reader mode pages use obscuredContentInsets to create space for the\nprimary toolbar at the top of the screen. When snapping enters\nfullscreen close to the top of the page on a non-Reader mode page,\ncollapsing the insets effectively scrolls down the page so there is\nalways runway to scroll back up and accumulate enough scroll distance to\ntrigger snapping out of fullscreen.\n\nIn Reader mode, obscuredContentInsets are not used. When entering\nfullscreen close to the top of the page, the content is not scrolled\ndown, leaving zero runway to scroll back up and accumulate the negative\nscroll distance required to cross the snap threshold. As a result, the\npage gets trapped in fullscreen mode.\n\nFixed: 559300960\nChange-Id: Ic7e4daec04d4149415e3ee661a801bcba50f5797\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8381082\nAuto-Submit: Quentin Pubert \u003cqpubert@google.com\u003e\nReviewed-by: Aliona Dangla \u003calionadangla@chromium.org\u003e\nCommit-Queue: Scott Yoder \u003cscottyoder@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695604}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 4a0904f04ff1357518a39e486031a1319a3e5228\n"
    },
    {
      "commit": "2a640b31c13218931a2aa9997083ffc72f8c3dbc",
      "tree": "abee9a6471f154eb0a467f6fd0a64db3a16c881a",
      "parents": [
        "ad36bd743bd57f1e84d2b6df000161c6346cacd9"
      ],
      "author": {
        "name": "Federica Germinario",
        "email": "fedegermi@google.com",
        "time": "Thu Sep 10 20:00:24 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 20:06:05 2026"
      },
      "message": "[ios] Add implementation to handle default browser promo external action\n\nThis change adds implementation in new startup flow to handle default\nbrowser settings external action.\n\nChange-Id: If8da58897f42eeafe692ff653acb6242bcbeccf1\nBug: 493816082\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8379361\nReviewed-by: Sylvain Defresne \u003csdefresne@chromium.org\u003e\nCommit-Queue: Federica Germinario \u003cfedegermi@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695597}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 42dafdde29e712cf84bce25e02234d5187955106\n"
    },
    {
      "commit": "ad36bd743bd57f1e84d2b6df000161c6346cacd9",
      "tree": "8992ba657823325c039284b8c97a445d08346d0b",
      "parents": [
        "f08f6752d7806d153b188b3116681d037a6bd1e4"
      ],
      "author": {
        "name": "thefrog",
        "email": "thefrog@chromium.org",
        "time": "Thu Sep 10 19:40:29 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 19:46:53 2026"
      },
      "message": "Rename v4_test_util -\u003e sb_test_util\n\nSafe Browsing v4 will eventually be migrated to Safe Browsing v5. In the\ninterim period where both exist, some files that apply both to v4 and v5\nare renamed to \u0027sb\u0027. This particular rename may persist once v4 is\ndeprecated.\n\nBypass-Check-License: Just renamed file.\nBug: 362791941\nChange-Id: Idb921e30f7890740e1f97c04f7b441aa694f3484\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8371929\nReviewed-by: Kelvin Jiang \u003ckelvinjiang@chromium.org\u003e\nReviewed-by: Anunoy Ghosh \u003canunoy@chromium.org\u003e\nReviewed-by: Charles Harrison \u003ccsharrison@chromium.org\u003e\nCommit-Queue: thefrog \u003cthefrog@chromium.org\u003e\nReviewed-by: Daniel White \u003cdanieltwhite@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695579}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0d9e7952bad147fbb526fa5b55d8ac330e07d87d\n"
    },
    {
      "commit": "f08f6752d7806d153b188b3116681d037a6bd1e4",
      "tree": "6cd8dbc5f99d5fcc0b4c8c22b3589dc64277262b",
      "parents": [
        "1c697d56ba1dec4b7fb5a7ceb58a2918e8f410b3"
      ],
      "author": {
        "name": "Marc Treib",
        "email": "treib@chromium.org",
        "time": "Thu Sep 10 19:28:05 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 19:33:35 2026"
      },
      "message": "[iOS] Update tests to not create a FakeAuthenticationServiceDelegate\n\nAfter previous cleanups, the AuthenticationServiceDelegate interface is\nempty and unused. This CL updates tests to not specify it anymore, i.e.\nto call the parameter-less version of AuthenticationService::Initialize.\n\nThis CL covers the folder(s):\nios/chrome/browser/intelligence/bwg/model\n\nThis CL was uploaded by git cl split.\n\nR\u003dyasamans@google.com\n\nBug: 407498240\nChange-Id: Ibdca2aee515bce07eb1572b02fbdc137b07879ad\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8379408\nCommit-Queue: Yasaman Sedaghat \u003cyasamans@google.com\u003e\nReviewed-by: Yasaman Sedaghat \u003cyasamans@google.com\u003e\nAuto-Submit: Marc Treib \u003ctreib@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695569}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 9facbc4c932cfeaa65f5faf08c2c8461cccf2846\n"
    },
    {
      "commit": "1c697d56ba1dec4b7fb5a7ceb58a2918e8f410b3",
      "tree": "88c2283c12335dd9722950ac1a38090a13411d98",
      "parents": [
        "63c465ff8e4e5a16dfa48ea27637448871c7b510"
      ],
      "author": {
        "name": "Matt Reichhoff",
        "email": "mreichhoff@chromium.org",
        "time": "Thu Sep 10 19:07:08 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 19:15:02 2026"
      },
      "message": "Correct kaklilu@ email in ios actor OWNERS\n\nGoogle --\u003e Chromium, matching other OWNERS files.\n\nChange-Id: I5d78ccaf9f546fc23a623054aa5dc2fa61a08c36\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8381522\nReviewed-by: Kirubel \u003ckaklilu@chromium.org\u003e\nCommit-Queue: Matt Reichhoff \u003cmreichhoff@chromium.org\u003e\nAuto-Submit: Matt Reichhoff \u003cmreichhoff@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695550}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 6227ed7f0f4fd3b08e0d04bb6eba5a4d45057c5a\n"
    },
    {
      "commit": "63c465ff8e4e5a16dfa48ea27637448871c7b510",
      "tree": "79db15805433cf6dbb3cf3ff4edc367e5f29ccde",
      "parents": [
        "44c47bc4db8ddd8d516b430ac3880002dcbfdf94"
      ],
      "author": {
        "name": "Kejia Hu",
        "email": "kejiah@google.com",
        "time": "Thu Sep 10 17:44:57 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 17:50:35 2026"
      },
      "message": "[ios][actor] Add OriginGatingChecker to ActorService\n\nIntegrates OriginGatingChecker into ActorService to support origin\ngating policy on iOS.\n\nSpecifically:\n- Instantiates an `origin_gating::OriginGatingChecker` owned by\n `ActorService`.\n- Register a `kSafetyList` custom predicate in `ActorService`\n- Implements `EvaluateSafetyListPredicate()` to validate navigation\n  and page action events.\n- Adds `GetOriginGatingChecker()` getter on `ActorService`.\n- Adds unit tests in `actor_service_unittest.mm`\n  to verify:\n  - Checker initialization\n  - Blocking safety-listed malicious URLs.\n  - Allowing safety-listed trusted URLs.\n  - Failing open for unlisted navigation requests.\n  - Safety list enforcement on page actions.\n  - Fallback behavior when source URL is empty.\n\nBug: b:474383578\nChange-Id: I7b008fb2ab49030f3eff03c8714755704d176ad8\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8372205\nReviewed-by: Kirubel \u003ckaklilu@chromium.org\u003e\nCommit-Queue: Kejia Hu \u003ckejiah@google.com\u003e\nReviewed-by: Andrew Liu \u003cliu@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695501}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 5373fb7fb835db4f89d25856eea0b9de2fd3cbb9\n"
    },
    {
      "commit": "44c47bc4db8ddd8d516b430ac3880002dcbfdf94",
      "tree": "be49386a73f7a677761b2e84071e25c8b3b5127c",
      "parents": [
        "52eef28eac352d615fb477bac38239676772b01d"
      ],
      "author": {
        "name": "Mike Dougherty",
        "email": "michaeldo@chromium.org",
        "time": "Thu Sep 10 15:42:13 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 15:49:08 2026"
      },
      "message": "[iOS] Tighten error page retry checks for app-specific URLs\n\nThe logic which allows error page navigations previously relied solely\non the structure of the current document URL. Because the document URL\ncan be updated via same-document URL changes without invoking\nWKNavigationDelegate policy callbacks, checking the URL structure alone\nis insufficient to verify that the app intended to display an error\npage.\n\nThis CL explicitly stores the failed navigation URL when presenting an\nerror page. This is then used to verify the error page navigation was\ninitiated by the application process.\n\nAdditionally, ignore web view URL updates targeting bundled error page\nfile URLs in CRWWebViewNavigationObserver, as valid error page\ntransitions only occur through full navigations handled by\nWKNavigationDelegate callbacks.\n\nFixed: 553122009\nChange-Id: Iffe33a56d59ba0e9a554f9bf960f2c8080949de6\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8375765\nAuto-Submit: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nCommit-Queue: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nReviewed-by: Gauthier Ambard \u003cgambard@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695459}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 347e099088ab301d23e9cd97e65921c9e3b158fa\n"
    },
    {
      "commit": "52eef28eac352d615fb477bac38239676772b01d",
      "tree": "d908c26cbd8e995445a0797161c2ab8219f702d5",
      "parents": [
        "a638956d478deb3c3036cb03e5cf159ef218dde3"
      ],
      "author": {
        "name": "Chris Lu",
        "email": "thegreenfrog@google.com",
        "time": "Thu Sep 10 15:07:39 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 15:17:39 2026"
      },
      "message": "[ios] Optimize App Bar scrolling layout and remove kAppBarHideLabels\n\nResolves main-thread scroll layout hangs (e.g., crash fd96dad270400000\nand shutdown hangs) during fullscreen scrolling.\n\nRoot Causes:\n1. Continuous configuration invalidations: Every scroll progress frame\n   called setButtonsTitleAlpha:, invoking setNeedsUpdateConfiguration on\n   all buttons. This invalidated intrinsic content sizes and triggered\n   recurrent layout passes throughout the scroll gesture.\n2. Redundant title fading: When the App Bar translates off-screen as a\n   single unit, fading button titles is unnecessary and wasteful.\n3. Layout churn: Redundant synchronous layout flushes on the superview,\n   frequent sub-pixel offset mutations, and per-frame font measurements\n   in viewWillLayoutSubviews resulted in layout thrashing.\n\nFixes:\n- Skip button title alpha updates during fullscreen scroll when the App\n  Bar is hidden as a unit (!IsAppBarHiddenInFullscreen()).\n- Mutate button titleLabel.alpha directly rather than calling\n  setNeedsUpdateConfiguration during animations.\n- Quantize extraOffset to pixel boundaries in AppBarContainerView.\n- Cache layout bounds and content size category before re-measuring title\n  label fits in viewWillLayoutSubviews.\n- Restrict updateForAngle: to stack view layout instead of the full view.\n- Clean up the obsolete kAppBarHideLabels feature flag and test branches.\n\nBug: None\nChange-Id: I155a4718784c757227da5459b0d33191e85de8a8\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8372510\nReviewed-by: Gauthier Ambard \u003cgambard@chromium.org\u003e\nCommit-Queue: Chris Lu \u003cthegreenfrog@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695450}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 9a96ec9d13c0d77bdd67b11b39b639eaf59b2b63\n"
    },
    {
      "commit": "a638956d478deb3c3036cb03e5cf159ef218dde3",
      "tree": "97e7821165aa55bda6f9e940b577c221a0f9601c",
      "parents": [
        "d59ed8a5fc19d0f1a0cef4d9175b47b6596c3e0d"
      ],
      "author": {
        "name": "Marc Treib",
        "email": "treib@chromium.org",
        "time": "Thu Sep 10 15:06:46 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 15:15:46 2026"
      },
      "message": "[iOS] Update tests to not create a FakeAuthenticationServiceDelegate\n\nAfter previous cleanups, the AuthenticationServiceDelegate interface is\nempty and unused. This CL updates tests to not specify it anymore, i.e.\nto call the parameter-less version of AuthenticationService::Initialize.\n\nThis CL covers the folder(s):\nios/chrome/browser/intelligence\n\nThis CL was uploaded by git cl split.\n\nR\u003dadamta@google.com\n\nBug: 407498240\nChange-Id: I588beab27ee2425ac103e0d7ca52850654b55921\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8380779\nReviewed-by: Adam Arcaro \u003cadamta@google.com\u003e\nCommit-Queue: Adam Arcaro \u003cadamta@google.com\u003e\nAuto-Submit: Marc Treib \u003ctreib@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695449}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b0f14c87689361823983b97be352348d92a4419f\n"
    },
    {
      "commit": "d59ed8a5fc19d0f1a0cef4d9175b47b6596c3e0d",
      "tree": "7d2cff108b8aba897fd072e2a7224fe565ec2487",
      "parents": [
        "3c7d6d6b093bcfa5f5d1465b4b107a078ec475dc"
      ],
      "author": {
        "name": "Eric Ekey",
        "email": "ericekey@google.com",
        "time": "Thu Sep 10 14:40:02 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 14:51:20 2026"
      },
      "message": "[iOS][Aurora] Adjust MVT Height\n\nThis change reduces the spacing between the icons and titles of tiles in\nthe Most Visited collection by 2pt. This corrects the title spacing and\nthe height of the MVT container (106 -\u003e 104).\n\nBug: None\nChange-Id: I22d824e13189bb2fe11fdc6ede9daee7cda0f78d\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8372904\nReviewed-by: Chris Lu \u003cthegreenfrog@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695442}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 9d8f7a38f95d93384d4040fe53a06080eab6d589\n"
    },
    {
      "commit": "3c7d6d6b093bcfa5f5d1465b4b107a078ec475dc",
      "tree": "42d41df22538eb3adf041bbc8bf4f5484ab19c31",
      "parents": [
        "bcdf228a1466288e16a2e57b730ca3292ea2039a"
      ],
      "author": {
        "name": "Sourav",
        "email": "sinhasourav@google.com",
        "time": "Thu Sep 10 14:39:12 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 14:49:55 2026"
      },
      "message": "[iOS] Enforce SHA-256 format for favicon file keys\n\nVerifies that favicon file keys adhere to the 64-character hex digest\nformat produced by GetFaviconFileKey before fetching or saving favicons.\n\nBug: 513757840\nChange-Id: I47fb9ae169703bc2115f5fd107dc708f59de4206\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8376404\nCommit-Queue: Sourav Uttam Sinha \u003csinhasourav@google.com\u003e\nReviewed-by: Alexis Hétu \u003csugoi@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695441}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 3c08b52a99c1610c6882ddd1e9fbb6c128112298\n"
    },
    {
      "commit": "bcdf228a1466288e16a2e57b730ca3292ea2039a",
      "tree": "4fc8f8c23fc7c73fe7267a92eb43b687ba1a7712",
      "parents": [
        "6a2c2829610839d00b34d1fe085fdff2510a5e9a"
      ],
      "author": {
        "name": "Marc Treib",
        "email": "treib@chromium.org",
        "time": "Thu Sep 10 14:26:13 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 14:38:06 2026"
      },
      "message": "[iOS] Update tests to not create a FakeAuthenticationServiceDelegate\n\nAfter previous cleanups, the AuthenticationServiceDelegate interface is\nempty and unused. This CL updates tests to not specify it anymore, i.e.\nto call the parameter-less version of AuthenticationService::Initialize.\n\nThis CL covers the folder(s):\n[\u0027ios/chrome/browser/drive_file_picker\u0027, \u0027ios/chrome/browser/tips_notifications\u0027, \u0027ios/chrome/browser/account_picker\u0027, \u0027ios/chrome/browser/autofill\u0027, \u0027ios/chrome/browser/cobrowse\u0027, \u0027ios/chrome/browser/promos_manager\u0027, \u0027ios/chrome/browser/recent_tabs\u0027, \u0027ios/chrome/browser/welcome_back\u0027]\n\nThis CL was uploaded by git cl split.\n\nR\u003dtmartino@chromium.org\n\nBug: 407498240\nChange-Id: If6a2414a01ea586a04bcb1a4d37becfe74ac6313\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8379363\nCommit-Queue: Tommy Martino \u003ctmartino@chromium.org\u003e\nAuto-Submit: Marc Treib \u003ctreib@chromium.org\u003e\nReviewed-by: Tommy Martino \u003ctmartino@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695436}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f93d1c880ae7b2e609a77cf9f9a25862bda9fd13\n"
    },
    {
      "commit": "6a2c2829610839d00b34d1fe085fdff2510a5e9a",
      "tree": "b517192278506018046d8d7207d6deaccb142c2b",
      "parents": [
        "c847d4ffe68b248f1e0ed3b4347ee6bd2fe20086"
      ],
      "author": {
        "name": "Nicolas Ouellet-Payeur",
        "email": "nicolaso@chromium.org",
        "time": "Thu Sep 10 14:11:25 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 14:36:50 2026"
      },
      "message": "[saas] Implement SaasUsageReportingControllerFactoryIOS\n\nThis factory creates SaasUsageReportingController and injects the\nPrefServices and PrefURLListMatchers.\n\nBug: b:541312072\nChange-Id: I3e048d1777ca5e0812f74cd7d4b156a56a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8349792\nReviewed-by: Rohit Rao \u003crohitrao@chromium.org\u003e\nCommit-Queue: Nicolas Ouellet-Payeur \u003cnicolaso@chromium.org\u003e\nReviewed-by: Janek Zarzycki \u003cjanzarzycki@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695426}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: e1ab986008a92c5d7642def5680f76eea9e2213c\n"
    },
    {
      "commit": "c847d4ffe68b248f1e0ed3b4347ee6bd2fe20086",
      "tree": "dafbccc9b8fc783cadd20166660b3188c247e816",
      "parents": [
        "dae67deaccd778622096907b3ca9d7085c2d04d0"
      ],
      "author": {
        "name": "Cheick Cisse",
        "email": "cheickcisse@google.com",
        "time": "Thu Sep 10 13:57:31 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 14:35:46 2026"
      },
      "message": "[iOS] Add DefaultBrowserNonModalPromoStrings feature flag and strings\n\nThis CL introduces the `kDefaultBrowserNonModalPromoStrings` feature\nflag with two arms to test new title and subtitle strings for the\ndefault browser non-modal promo triggered after Omnibox URL copy/paste.\n\nLow-Coverage-Reason: TRIVIAL_CHANGE Flag and string wiring\nBug: 543380208\nChange-Id: I6eb84ca6f92968b77f760a2c47742103519720c1\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8379124\nReviewed-by: Pier-Alexandre Bouchard \u003cpabouchard@google.com\u003e\nCommit-Queue: Cheick Cisse \u003ccheickcisse@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695420}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 526899e2f50d02fde8bdb47a83e9bf5919499cee\n"
    },
    {
      "commit": "dae67deaccd778622096907b3ca9d7085c2d04d0",
      "tree": "87f4921d36eec3a40754fa723d4591712660c7ff",
      "parents": [
        "6012d9630e150c4488239fb56b249f032c1ad498"
      ],
      "author": {
        "name": "Alexandra Pereira",
        "email": "alexandrasp@google.com",
        "time": "Thu Sep 10 13:50:30 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 13:58:11 2026"
      },
      "message": "[iOS] Clear WebUI if navigation fails or leaves WebUI\n\nThis CL adds a check to ensure ClearWebUI() is called in\nOnNavigationFinished() when the navigation does not commit or commits to\na non WebUI URL. This ensures WebUI related objects, specifically\nWebUIIOSImpl and the Mojo facade are properly cleaned up.\n\nAdditionally, this removes a redundant ClearWebUI call that prematurely\nwiped WebUI on any back/forward tap, which is now covered by the new\ncall added in this CL.\n\nFixed: 553114676\nChange-Id: I6569b1548323b32c5e1f651038e893ac53f0bcfd\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8372982\nReviewed-by: Mike Dougherty \u003cmichaeldo@chromium.org\u003e\nCommit-Queue: Alexandra Pereira \u003calexandrasp@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1695416}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b21788e67d34569903e09a1fbd9d03d432de434b\n"
    },
    {
      "commit": "6012d9630e150c4488239fb56b249f032c1ad498",
      "tree": "bf1ac70d4c5a9ed7a2c7bb071777c057c9d54e4a",
      "parents": [
        "ab5291674e6c5f1b8deda515e477f518057e1671"
      ],
      "author": {
        "name": "Marc Treib",
        "email": "treib@chromium.org",
        "time": "Thu Sep 10 12:46:53 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 12:54:28 2026"
      },
      "message": "[iOS] Update tests to not create a FakeAuthenticationServiceDelegate\n\nAfter previous cleanups, the AuthenticationServiceDelegate interface is\nempty and unused. This CL updates tests to not specify it anymore, i.e.\nto call the parameter-less version of AuthenticationService::Initialize.\n\nThis CL covers the folder(s):\nios\n\nThis CL was uploaded by git cl split.\n\nR\u003dmarq@chromium.org\n\nBug: 407498240\nChange-Id: If9713b58362b71124a23365ccdee98489a7ed693\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8379851\nReviewed-by: Mark Cogan \u003cmarq@chromium.org\u003e\nAuto-Submit: Marc Treib \u003ctreib@chromium.org\u003e\nCommit-Queue: Mark Cogan \u003cmarq@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695379}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 1788fde1abe2f70da78d073c2830a618a57351a2\n"
    },
    {
      "commit": "ab5291674e6c5f1b8deda515e477f518057e1671",
      "tree": "2a6d2a46751847f27d9202c9164e2178130c047f",
      "parents": [
        "3ee27159f891f991c60a5c34478759e8d6df3ffc"
      ],
      "author": {
        "name": "Sylvain Defresne",
        "email": "sdefresne@chromium.org",
        "time": "Thu Sep 10 12:45:17 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Sep 10 12:53:23 2026"
      },
      "message": "[ios] Uniformize OmahaService initialisation\n\nIntroduce a new callback used to create the SharedURLLoaderFactory\nto uniformize its initialization between production code and unit\ntests.\n\nUsing network::PendingSharedURLLoaderFactory is not possible in the\ntests as even the network::WeakWrapperSharedURLLoaderFactory class\nwill create a new SharedURLLoaderFactory and capturing the requests\nis not possible.\n\nIn production a PendingSharedURLLoaderFactory will be owned by the\ncallback and used via network::SharedURLLoaderFactory::Create() but\nin tests it will be possible to return an existing instance.\n\nPass both the new callback and the UpgradeRecommendedCallback to the\nStartInternal() method and remove the helper methods used to set the\ncorresponding properties.\n\nBug: 555698908\nChange-Id: Ib0074e3b2485152f2deda02077e1432497d1dfaa\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8380776\nAuto-Submit: Sylvain Defresne \u003csdefresne@chromium.org\u003e\nReviewed-by: Mark Cogan \u003cmarq@chromium.org\u003e\nCommit-Queue: Mark Cogan \u003cmarq@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1695376}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 315d20008896d4120b5c800865f006853ea0e6eb\n"
    }
  ],
  "next": "3ee27159f891f991c60a5c34478759e8d6df3ffc"
}
