{
  "commits": {
    "7912588": {
      "author": "Sangwhan Moon",
      "avatar": "https://lh6.googleusercontent.com/-VgTsB23Ypf4/AAAAAAAAAAI/AAAAAAAAAAA/SPE0vVVG1FI/s120-p/photo.jpg",
      "cl": "7912588",
      "clUrl": "https://chromium-review.googlesource.com/c/7912588",
      "description": "AVFoundation invokes OnPhotoTaken and OnPhotoError on an arbitrary\nbackground queue. VideoCaptureDeviceApple::OnPhotoTaken was previously\nexecuting std::move(photo_callback_).Run(...) directly on that\nbackground thread, which causes threading violations and potential\nuse-after-free/double-free issues if the VideoCaptureDeviceApple\ninstance is destroyed concurrently, or if photo_callback_ is accessed\nwhile being modified on the main task runner.\n\nBug: 516987782\nChange-Id: Ibefa689f22116a4e5e3d89da7a3476af36c55251\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7912588\nReviewed-by: Ilya Nikolaevskiy \u003cilnik@chromium.org\u003e\nCommit-Queue: Sangwhan Moon \u003csxm@google.com\u003e\nAuto-Submit: Sangwhan Moon \u003csxm@google.com\u003e\nReviewed-by: Ted (Chromium) Meyer \u003ctmathmeyer@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1656796}",
      "email": "sxm@google.com",
      "hash": "b2c70fcd2ebf3fef59465251277e6105c9f5f5a3",
      "subject": "[mac] Fix use-after-free in VideoCaptureDeviceApple Mojo callback"
    },
    "8028017": {
      "author": "James Cook",
      "avatar": "https://lh4.googleusercontent.com/-qikRA8xqB3U/AAAAAAAAAAI/AAAAAAAAAAA/JBUbB9n7c4s/s120-p/photo.jpg",
      "cl": "8028017",
      "clUrl": "https://chromium-review.googlesource.com/c/8028017",
      "description": "This puts the references to the files closer to the files themselves.\nIt also decreases the size of the chrome/test/BUILD.gn monolith.\n\nAX-Relnotes: n/a.\nBug: 521960574\nChange-Id: I875adabd3cf1378f3d5acc562677fa393c0bb4b3\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8028017\nReviewed-by: Achuith Bhandarkar \u003cachuith@chromium.org\u003e\nCommit-Queue: James Cook \u003cjamescook@chromium.org\u003e\nReviewed-by: Mitsuru Oshima \u003coshima@chromium.org\u003e\nReviewed-by: Greg Thompson \u003cgrt@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1656845}",
      "email": "jamescook@chromium.org",
      "hash": "fd5ddf2f859679a8bfbfe95a20f707c5e0127b8b",
      "subject": "build: Move crosier test support files to crosier/BUILD.gn"
    },
    "8031176": {
      "author": "Justin Novosad",
      "avatar": "https://lh4.googleusercontent.com/-IdOVg4I9TBI/AAAAAAAAAAI/AAAAAAAAAAA/c1fB7KgCpIU/s120-p/photo.jpg",
      "cl": "8031176",
      "clUrl": "https://chromium-review.googlesource.com/c/8031176",
      "description": "When a webpage or conversational feature requests speech recognition or\nmedia capture permissions, denying or dismissing Chrome's permission\noverlay dialog previously executed WebKit's completion handler\nsynchronously inside the UI dismissal callback (e.g., within\nOverlayCallbackManagerImpl::ExecuteCompletionCallbacks).\nWhen invoked synchronously upon denial, WebKit's\nSpeechRecognitionPermissionManager immediately calls\ncompleteCurrentRequest() followed by startNextRequest(). If a\npage or conversational surface repeatedly requests permission,\nsynchronous completion causes completeCurrentRequest() and\nstartNextRequest() to ping-pong indefinitely on the same call stack,\naccumulating stack frames and crashing with a stack overflow.\n\nThis CL asynchronously decouples permission resolution across the iOS\npermission pipeline:\n1. In PermissionsTabHelper::HandlePermissionDialogResponse, the user's\n   overlay decision (Grant/Deny) is posted to the sequence task runner\n   via PostTask rather than executing synchronously on the animation\n   dismissal stack.\n2. In CRWMediaCapturePermissionRequest::handleDecision, the WKWebView\n   decision handler is similarly dispatched asynchronously to the main\n   task runner.\n\nEither of these two changes would be sufficient to fix the bug. Doing both provides defense-in-depth.\n\nAdded EarlGrey regression test:\nPermissionsTestCase/testMicrophonePermissionRecursionCrashRegression\nwith accompanying test page microphone_recursion.html.\n\nBug: 529634846\nChange-Id: I32d5e7897cdfb3070cf0a974246a6f62a28bfc62\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8031176\nReviewed-by: Gauthier Ambard \u003cgambard@chromium.org\u003e\nCommit-Queue: Justin Novosad \u003cjunov@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1656758}",
      "email": "junov@chromium.org",
      "hash": "132dc7162a554b981141dd4ce424657bf85ad6c7",
      "subject": "[iOS] Asynchronously decouple WebKit permission completion callbacks"
    },
    "8032656": {
      "author": "Danilo Tedeschi",
      "avatar": "https://lh4.googleusercontent.com/-o60aWRQQunI/AAAAAAAAAAI/AAAAAAAAAAA/EywYd35zkfY/s120-p/photo.jpg",
      "cl": "8032656",
      "clUrl": "https://chromium-review.googlesource.com/c/8032656",
      "description": "This was to avoid setting icu default.\n\nChange-Id: Ia9d68ce552885cb5f16915eb4601565f229b8dd0\nBug: 515536912\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8032656\nReviewed-by: Manish Goregaokar \u003cmanishearth@google.com\u003e\nCommit-Queue: Manish Goregaokar \u003cmanishearth@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1656782}",
      "email": "danft@google.com",
      "hash": "a40b53b3dea0b720ffec11e69bee1fb76fe82de9",
      "subject": "Add DateTimeFormatter::Format that takes LanguageTag"
    },
    "8037589": {
      "author": "Frédéric Wang Nélar",
      "avatar": "https://lh4.googleusercontent.com/-6kiUg2jQnds/AAAAAAAAAAI/AAAAAAAAAAA/k5ZOWta-8t0/s120-p/photo.jpg",
      "cl": "8037589",
      "clUrl": "https://chromium-review.googlesource.com/c/8037589",
      "description": "Bug: 522338661, 40255884\nChange-Id: If0589213c4d1fd6e9e2bd24c3150e497ce5451c6\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8037589\nCommit-Queue: Frédéric Wang Nélar \u003cfwang@igalia.com\u003e\nReviewed-by: Patrick Meenan \u003cpmeenan@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1656788}",
      "email": "fwang@igalia.com",
      "hash": "12ca094981d4a17ec8fab90e8cb7e76d2e9aff8a",
      "subject": "[compression dictionary] Add WPT test to check fetch timing for \u003clink\u003e element with rel=\"compression-dictionary\" dynamically set."
    },
    "8038316": {
      "author": "pinpoint-worker",
      "avatar": "https://lh4.googleusercontent.com/-VSmT6IeFjkg/AAAAAAAAAAI/AAAAAAAAAAA/H7d9JAkL0Ig/s120-p/photo.jpg",
      "cl": "8038316",
      "clUrl": "https://chromium-review.googlesource.com/c/8038316",
      "description": "No-try: true\nChange-Id: I13a22864e41c6232ff6180f4bdf84140160875fd\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8038316\nAuto-Submit: pinpoint-worker \u003cpinpoint-worker@skia-infra-corp.iam.gserviceaccount.com\u003e\nCommit-Queue: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nBot-Commit: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1656755}",
      "email": "pinpoint-worker@skia-infra-corp.iam.gserviceaccount.com",
      "hash": "62582f815929381407530162fe646ce633933e06",
      "subject": "Update CBB autoroll for the builds refs"
    },
    "8040644": {
      "author": "chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com",
      "avatar": "https://lh6.googleusercontent.com/-bmjmM3wy1aI/AAAAAAAAAAI/AAAAAAAAAAA/ZO8sFsZRTr4/s120-p/photo.jpg",
      "cl": "8040644",
      "clUrl": "https://chromium-review.googlesource.com/c/8040644",
      "description": "* This is an automated release commit.\n* Do not revert without consulting chrome-pmo@google.com.\nNOAUTOREVERT=true\n\nChange-Id: I8f025a7882c02eb92efc3f3514bb4da96788640e\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8040644\nBot-Commit: chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com \u003cchrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1656775}",
      "email": "chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com",
      "hash": "bbf749389620ec6572c20304ed506574b38aad0a",
      "subject": "Updating trunk VERSION from 7930.0 to 7931.0"
    },
    "8040969": {
      "author": "chromeos-ci-prod@chromeos-bot.iam.gserviceaccount.com",
      "avatar": "https://lh3.googleusercontent.com/-XWAR0jsIGjI/AAAAAAAAAAI/AAAAAAAAAAA/NEHPkbym-aA/s120-p/photo.jpg",
      "cl": "8040969",
      "clUrl": "https://chromium-review.googlesource.com/c/8040969",
      "description": "CrOS Changes (16740.0.0-1078552 -\u003e 16740.0.0-1078565):\n- External: http://go/cros-changes/85858..85871?ext=true\n- Internal: http://go/cros-changes/119958..119971\n\nUploaded by https://ci.chromium.org/b/8677245292272153841\n\nCQ_INCLUDE_TRYBOTS=luci.chrome.try:chromeos-betty-chrome\nCQ_INCLUDE_TRYBOTS=luci.chrome.try:chromeos-brya-chrome\nCQ_INCLUDE_TRYBOTS=luci.chrome.try:chromeos-jacuzzi-chrome\nCQ_INCLUDE_TRYBOTS=luci.chrome.try:chromeos-reven-chrome\nCQ_INCLUDE_TRYBOTS=luci.chrome.try:chromeos-trogdor-chrome\nCQ_INCLUDE_TRYBOTS=luci.chrome.try:chromeos-volteer-chrome\n\nCrOS-LKGM: 16740.0.0-1078565\nMerge-Approval-Bypass: Automated LKGM update\nCr-Original-Build-Id: 8677245292272153841\nCrOS-External-Manifest-Position: 85871\nCrOS-Internal-Manifest-Position: 119971\nChange-Id: Ica2b4e5276d447a728c932b9d804256636f03bca\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8040969\nCommit-Queue: chromeos-ci-prod@chromeos-bot.iam.gserviceaccount.com \u003cchromeos-ci-prod@chromeos-bot.iam.gserviceaccount.com\u003e\nBot-Commit: chromeos-ci-prod@chromeos-bot.iam.gserviceaccount.com \u003cchromeos-ci-prod@chromeos-bot.iam.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1656790}",
      "email": "chromeos-ci-prod@chromeos-bot.iam.gserviceaccount.com",
      "hash": "52f8d32d73e9f095c978c2e885349f3a249e903f",
      "subject": "Automated Commit: LKGM 16740.0.0-1078565 for chromeos."
    },
    "8041102": {
      "author": "Foromo Daniel Soromou",
      "avatar": "https://lh6.googleusercontent.com/-6o9sWTbhXuE/AAAAAAAAAAI/AAAAAAAAAAA/ml9-F5KUmvc/s120-p/photo.jpg",
      "cl": "8041102",
      "clUrl": "https://chromium-review.googlesource.com/c/8041102",
      "description": "See: http://screencast/cast/NTc2OTY3MTM4NjA3MTA0MHw5ZGE3OTQ1Ny05Mg\nBug: 454597786\nChange-Id: Idff1246a7ba11f1e61ccd1caf2d37306fbe03852\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8041102\nReviewed-by: Kaan Alsan \u003calsan@chromium.org\u003e\nCommit-Queue: Foromo Daniel Soromou \u003ckoretadaniel@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1656770}",
      "email": "koretadaniel@chromium.org",
      "hash": "16d9c9003426bdf994cd07c99acc49df64806bd1",
      "subject": "Update visual guided setter arrow color to be dynamic"
    },
    "8041383": {
      "author": "Chrome Release Translations",
      "avatar": "https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAAAAAAAAAI/AAAAAAAAAAA/4252rscbv5M/s120/photo.jpg",
      "cl": "8041383",
      "clUrl": "https://chromium-review.googlesource.com/c/8041383",
      "description": "Binary-Size: Size increase is unavoidable\nChange-Id: I908452db79c301ae01cc2418c52320e2c11f29e5\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8041383\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\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\nCr-Commit-Position: refs/heads/main@{#1656823}",
      "email": "mdb.chrome-release-translation-dump@google.com",
      "hash": "af98801304699d1e59c49eb431082e289522248f",
      "subject": "Updating XTBs based on .GRDs from branch main"
    },
    "8041385": {
      "author": "PKI Metadata Updates Bot",
      "avatar": "https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAAAAAAAAAI/AAAAAAAAAAA/4252rscbv5M/s120/photo.jpg",
      "cl": "8041385",
      "clUrl": "https://chromium-review.googlesource.com/c/8041385",
      "description": "Automatic update for 2026-07-04 UTC\n\nMerge-Approval-Bypass: pki-metadata-updater\nChange-Id: I64fe68e33db61b1b473313f943e9c74a3654e0a2\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8041385\nCommit-Queue: PKI Metadata Updates Bot \u003cmdb.chrome-pki-metadata-release-jobs@google.com\u003e\nBot-Commit: PKI Metadata Updates Bot \u003cmdb.chrome-pki-metadata-release-jobs@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1656829}",
      "email": "mdb.chrome-pki-metadata-release-jobs@google.com",
      "hash": "3d352584e057465a34ff1d0a2780ba745cd4573b",
      "subject": "[CT] Automatic update from google3"
    },
    "8042000": {
      "author": "chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com",
      "avatar": "https://lh6.googleusercontent.com/-bmjmM3wy1aI/AAAAAAAAAAI/AAAAAAAAAAA/ZO8sFsZRTr4/s120-p/photo.jpg",
      "cl": "8042000",
      "clUrl": "https://chromium-review.googlesource.com/c/8042000",
      "description": "* This is an automated release commit.\n* Do not revert without consulting chrome-pmo@google.com.\nNOAUTOREVERT=true\n\nChange-Id: I334fd843d8a9c551d4410926ae9c86ad570a71da\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8042000\nBot-Commit: chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com \u003cchrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com\u003e\nCr-Commit-Position: refs/heads/main@{#1656822}",
      "email": "chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com",
      "hash": "a4d74b9c5ffe59d4a94bcbf3118e75409de51c35",
      "subject": "Updating trunk VERSION from 7931.0 to 7932.0"
    }
  },
  "date": "2026-07-04",
  "days": 1,
  "generatedAt": "2026-07-04T22:05:39Z",
  "markdown": "## Highlights\n- **Security** macOS video capture now posts photo callbacks back to the right sequence to avoid a Mojo-adjacent use-after-free and thread-safety hazard in `VideoCaptureDeviceApple`. [CL 7912588](https://chromium-review.googlesource.com/c/7912588) [bug 516987782](https://issues.chromium.org/issues/516987782)\n- **Mobile** iOS permission handling now breaks a synchronous WebKit callback loop that could recurse until stack overflow when pages repeatedly request mic or capture access. [CL 8031176](https://chromium-review.googlesource.com/c/8031176) [bug 529634846](https://issues.chromium.org/issues/529634846)\n- **Web Platform** Compression Dictionary gets stronger interop coverage with a new WPT that checks fetch timing when `rel=\"compression-dictionary\"` is applied dynamically to a `\u003clink\u003e` element. [CL 8037589](https://chromium-review.googlesource.com/c/8037589) [bug 522338661](https://issues.chromium.org/issues/522338661)\n- **Rendering** `DateTimeFormatter` can now format directly from a `LanguageTag`, cutting dependence on mutating ICU global defaults and making locale-sensitive formatting cleaner. [CL 8032656](https://chromium-review.googlesource.com/c/8032656) [bug 515536912](https://issues.chromium.org/issues/515536912)\n- **UI** The visual guided setter arrow now uses dynamic coloring, so the affordance tracks theme context instead of a fixed color choice. [CL 8041102](https://chromium-review.googlesource.com/c/8041102) [bug 454597786](https://issues.chromium.org/issues/454597786)\n- **Build** Crosier test support files moved into `crosier/BUILD.gn`, trimming `chrome/test/BUILD.gn` and putting ownership closer to the code under test. [CL 8028017](https://chromium-review.googlesource.com/c/8028017) [bug 521960574](https://issues.chromium.org/issues/521960574)\n\n## What landed by area\n\n### Media and capture\n- **Security** macOS camera capture fixes a background-thread callback path that could race destruction and touch moved state, closing off a use-after-free class bug. [CL 7912588](https://chromium-review.googlesource.com/c/7912588) [bug 516987782](https://issues.chromium.org/issues/516987782)\n\n### iOS\n- **Mobile** iOS WebKit permission completions are now dispatched asynchronously so deny and dismiss flows do not recurse through the permission pipeline on one stack. [CL 8031176](https://chromium-review.googlesource.com/c/8031176) [bug 529634846](https://issues.chromium.org/issues/529634846)\n\n### Web Platform\n- **Web Platform** Added WPT coverage for dynamic `rel=\"compression-dictionary\"` updates on `\u003clink\u003e`, specifically validating fetch timing behavior that sites can observe. [CL 8037589](https://chromium-review.googlesource.com/c/8037589) [bug 522338661](https://issues.chromium.org/issues/522338661)\n\n### Internationalization and formatting\n- **Rendering** `DateTimeFormatter::Format` now accepts `LanguageTag`, giving callers a direct locale path without swapping ICU process-wide defaults first. [CL 8032656](https://chromium-review.googlesource.com/c/8032656) [bug 515536912](https://issues.chromium.org/issues/515536912)\n\n### UI and visuals\n- **UI** Visual guided setter arrow color is now dynamic, improving theme adaptability for that onboarding or guidance surface. [CL 8041102](https://chromium-review.googlesource.com/c/8041102) [bug 454597786](https://issues.chromium.org/issues/454597786)\n\n### Build and test infrastructure\n- **Build** Crosier test support assets moved into `crosier/BUILD.gn`, continuing the slow cleanup of oversized test GN files and making the test graph easier to navigate. [CL 8028017](https://chromium-review.googlesource.com/c/8028017) [bug 521960574](https://issues.chromium.org/issues/521960574)",
  "repo": "chromium",
  "repoDisplay": "Chromium",
  "rollGroups": [
    {
      "name": "Chrome Mac Arm PGO Profile",
      "count": 12
    },
    {
      "name": "Chrome Win32 PGO Profile",
      "count": 8
    },
    {
      "name": "Chrome Win64 PGO Profile",
      "count": 6
    },
    {
      "name": "Perfetto Trace Processor Linux",
      "count": 4
    },
    {
      "name": "Chrome Win ARM64 PGO Profile",
      "count": 4
    },
    {
      "name": "Chrome Linux PGO Profile",
      "count": 3
    },
    {
      "name": "Chrome Android Desktop x64 PGO",
      "count": 3
    },
    {
      "name": "Perfetto Trace Processor Win",
      "count": 3
    },
    {
      "name": "Chrome Mac PGO Profile",
      "count": 3
    },
    {
      "name": "Other",
      "count": 2
    },
    {
      "name": "vulkan-deps from ff9ff829b7c4 to bb655ad91bcc",
      "count": 1
    },
    {
      "name": "Media App from cqcMk-fldslMwLQmt...",
      "count": 1
    },
    {
      "name": "Help App from YHlzYEy_nDV8R0hYy...",
      "count": 1
    },
    {
      "name": "clank/internal/apps from d7565bbc2981 to 50009154e3bd",
      "count": 1
    },
    {
      "name": "clank/internal/apps from ac52881f5fc8 to d7565bbc2981",
      "count": 1
    },
    {
      "name": "ChromeOS Arm AFDO profile",
      "count": 1
    },
    {
      "name": "ios_internal from 49dec3227287 to af9060a76ea2",
      "count": 1
    },
    {
      "name": "androidx from c1lBY1V6U5CG_Rloj... to scBmwqjSCrzbag27L...",
      "count": 1
    },
    {
      "name": "llvm-libc from 7f0fcd04f999 to 84d9106abcfd",
      "count": 1
    },
    {
      "name": "Perfetto Trace Processor Linux ARM",
      "count": 1
    },
    {
      "name": "Perfetto Trace Processor Mac ARM64",
      "count": 1
    },
    {
      "name": "ChromeOS Atom AFDO profile",
      "count": 1
    },
    {
      "name": "ChromeOS Bigcore AFDO profile",
      "count": 1
    },
    {
      "name": "Perfetto from e730ddd2d9d4 to c80447207ce7",
      "count": 1
    },
    {
      "name": "androidx from cA38QpLEHRemv_kJY... to c1lBY1V6U5CG_Rloj...",
      "count": 1
    },
    {
      "name": "Dawn from efb0be23a361 to 8888b75ecc0e",
      "count": 1
    },
    {
      "name": "Skia from 8c5eb079d335 to 26571da5c5dc",
      "count": 1
    },
    {
      "name": "Perfetto from c80447207ce7 to 1c27245e7413",
      "count": 1
    },
    {
      "name": "clank/internal/apps from 50009154e3bd to b496d6d3c5cc",
      "count": 1
    },
    {
      "name": "Crossbench from 3c4411f0bddd to fff225dda4c5",
      "count": 1
    },
    {
      "name": "androidx from scBmwqjSCrzbag27L... to urjMhAn_r7mO1QRmC...",
      "count": 1
    },
    {
      "name": "vulkan-deps from bb655ad91bcc to 6ba8766f7481",
      "count": 1
    },
    {
      "name": "Perfetto Trace Processor Linux ARM64",
      "count": 1
    },
    {
      "name": "clank/internal/apps from 411a5a60a3e3 to 9298f9e0598b",
      "count": 1
    },
    {
      "name": "Arm AFDO from 152.0.7924.0_pre1655270_rc-r1-merged",
      "count": 1
    },
    {
      "name": "ANGLE from ea467c307853 to c053bf85793b",
      "count": 1
    },
    {
      "name": "ios_internal from af9060a76ea2 to b9de4dc45af2",
      "count": 1
    },
    {
      "name": "Chromium Variations from TO2_zGkEL0QxdTBop...",
      "count": 1
    },
    {
      "name": "Projector App from 6hzy5Mu9yKbnqhtnX...",
      "count": 1
    },
    {
      "name": "Boca Receiver App from xkqE7JKtCdJunQdpL...",
      "count": 1
    },
    {
      "name": "ios_internal from 61845868795a to d0b46e8955e2",
      "count": 1
    },
    {
      "name": "clank/internal/apps from 35e37745e18c to 411a5a60a3e3",
      "count": 1
    },
    {
      "name": "Boca App from YtNwx_F_vHYV5iF2j...",
      "count": 1
    },
    {
      "name": "vulkan-deps from 6ba8766f7481 to 2eb9e2c66a25",
      "count": 1
    },
    {
      "name": "ios_internal from b9de4dc45af2 to 4ee76c4f4aeb",
      "count": 1
    },
    {
      "name": "clank/internal/apps from 9298f9e0598b to ac52881f5fc8",
      "count": 1
    },
    {
      "name": "ios_internal from d0b46e8955e2 to 49dec3227287",
      "count": 1
    }
  ],
  "since": "2026-07-04",
  "totals": {
    "commits": 97,
    "features": 12,
    "rolls": 85
  },
  "until": "2026-07-04"
}