)]}'
{
  "log": [
    {
      "commit": "f61abdaf30c0403f421a6f44cac92b991b9229cc",
      "tree": "875a38983e66d69a5de812eef2b287afec83033e",
      "parents": [
        "609bcdfa6f870a7218aea4ff45cc46bc0351183a",
        "9f734abbfa09e4365075943e321f09060c99c178"
      ],
      "author": {
        "name": "Kean Mariotti",
        "email": "keanmariotti@google.com",
        "time": "Mon May 19 02:05:25 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 19 02:05:25 2025 -0700"
      },
      "message": "Merge \"viewcapture tracing: flag cleanup\" into main"
    },
    {
      "commit": "9f734abbfa09e4365075943e321f09060c99c178",
      "tree": "32fcf420ded4acdee82d9da9f531c3f9dcaf42b8",
      "parents": [
        "4fb8e634f42f7c697da3904ee87f1e0206361154"
      ],
      "author": {
        "name": "Kean Mariotti",
        "email": "keanmariotti@google.com",
        "time": "Sun May 18 13:22:07 2025 +0000"
      },
      "committer": {
        "name": "Kean Mariotti",
        "email": "keanmariotti@google.com",
        "time": "Sun May 18 13:37:14 2025 +0000"
      },
      "message": "viewcapture tracing: flag cleanup\n\nFlag: EXEMPT flag cleanup\nBug: 323166383\nTest: presubmit\nChange-Id: I170ae04a76210be9e76040b16b5768ae47910ac6\n"
    },
    {
      "commit": "609bcdfa6f870a7218aea4ff45cc46bc0351183a",
      "tree": "b3912d579ca1eeb5fb6c50956559f4523472ad6f",
      "parents": [
        "d4ba09a994522c3a9a6318c48d4995b90e078e33",
        "76675d9a4174eefb2c4b48fe3f36adf15a6c97ec"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri May 16 09:00:51 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 16 09:00:51 2025 -0700"
      },
      "message": "Merge \"Allow recording the spring state in tests\" into main"
    },
    {
      "commit": "76675d9a4174eefb2c4b48fe3f36adf15a6c97ec",
      "tree": "5e1ebf54770bddb2cf2a2f3e0cd48ffd1a20d410",
      "parents": [
        "0a819fd66b0e82dfe8bd2666902424c421daab9b"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri May 16 16:15:06 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri May 16 16:15:06 2025 +0200"
      },
      "message": "Allow recording the spring state in tests\n\nAs part of this work, extracted the capture in a MotionTest-idiomatic\nCaptureTimeSeriesFn. That allowed to fold the\n`semantics: List\u003cCapturedSemantics\u003c*\u003e\u003e` into the same capture function,\n\nBug: 379248269\nTest: existing unit tests\nFlag: EXEMPT TEST_ONLY\nChange-Id: I597fe2b79d379c6dfaa71df9ac437cbda3f1c637\n"
    },
    {
      "commit": "d4ba09a994522c3a9a6318c48d4995b90e078e33",
      "tree": "f2cbc5c351d4e3eee49487f4cbb01e40e1e518f6",
      "parents": [
        "912d5655288bbe4ab430650c7a1e9858bf5db2c0",
        "0a819fd66b0e82dfe8bd2666902424c421daab9b"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri May 16 04:02:21 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 16 04:02:21 2025 -0700"
      },
      "message": "Merge \"Rename constantValue* into fixedValue*\" into main"
    },
    {
      "commit": "912d5655288bbe4ab430650c7a1e9858bf5db2c0",
      "tree": "e2cc61cdb15ad51e9cd9189c93b8d57062924171",
      "parents": [
        "ff67aee7a73969e6f975dd25f5cafe40254a1bdc",
        "2b1c406bca92684e1ea782f3a038dcaf697b5329"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu May 15 19:01:47 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 15 19:01:47 2025 -0700"
      },
      "message": "Merge \"Fix per-display flags propagation in flexiglass\" into main"
    },
    {
      "commit": "ff67aee7a73969e6f975dd25f5cafe40254a1bdc",
      "tree": "9055098ec5e0af5d2e133e638827a721e6c57336",
      "parents": [
        "2dbd54def63a293acfe098076aa45fbff13e0be9",
        "636bdf19cd2d1c74f0b4bd99a5a744fbb808af3e"
      ],
      "author": {
        "name": "Ebru Kurnaz",
        "email": "ebrukurnaz@google.com",
        "time": "Thu May 15 09:44:20 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 15 09:44:20 2025 -0700"
      },
      "message": "Merge \"Add a new class to notify add/remove sys decor callbacks from wm\" into main"
    },
    {
      "commit": "0a819fd66b0e82dfe8bd2666902424c421daab9b",
      "tree": "5b1d5651cbbd8535820f4101ccbf2c7aed9cd794",
      "parents": [
        "2dbd54def63a293acfe098076aa45fbff13e0be9"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Thu May 15 15:11:55 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Thu May 15 15:11:55 2025 +0200"
      },
      "message": "Rename constantValue* into fixedValue*\n\nThese are used interchangeably, for readability we should only use one\nof the names.\n\nBug: 417698047\nTest: existing unit tests\nFlag: EXEMPT Strict mechanical refactor (pun intended :)\nChange-Id: If75cc560d90a016f2ec660c96f221ee893bf6adb\n"
    },
    {
      "commit": "2b1c406bca92684e1ea782f3a038dcaf697b5329",
      "tree": "2f7fc4a0c124f8007866c0a2d5adcb0f384ec317",
      "parents": [
        "da6cc4d5e4a5861bfd17c145c590abe14e8f9ba3"
      ],
      "author": {
        "name": "Nicolo\u0027 Mazzucato",
        "email": "nicomazz@google.com",
        "time": "Thu May 15 10:29:41 2025 +0000"
      },
      "committer": {
        "name": "Nicolo\u0027 Mazzucato",
        "email": "nicomazz@google.com",
        "time": "Thu May 15 10:29:41 2025 +0000"
      },
      "message": "Fix per-display flags propagation in flexiglass\n\nFlags were only kept up to date for the default display, causing elements relying on them to broken on external displays (e.g. taskbar visibility)\n\nBug: 362719719\nBug: 417921986\nTest: SceneContainerStartableTest\nFlag: com.android.systemui.shade_window_goes_around\nChange-Id: If769a4a26c7a0aff1e53f7d0b5e0c45b4f2be526\n"
    },
    {
      "commit": "2dbd54def63a293acfe098076aa45fbff13e0be9",
      "tree": "819fc0fad050ddeeaf46b70ff231ea6a3fb8d195",
      "parents": [
        "4fb8e634f42f7c697da3904ee87f1e0206361154"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed May 14 15:35:26 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Thu May 15 10:40:30 2025 +0200"
      },
      "message": "Nudge immediately when we reach a breakpoint\n\nWith the last change, the velocity might have been absorbed in\n`calculateUpdatedState` already, especially with a stiff spring. Now,\nfolding that together with the first delta animation nudge.\n\nBug: 416691631\nTest: Unit tests\nFlag: com.android.systemui.scene_container\nChange-Id: I7f11ea70f6eb71951335f9b100e46fba75e29b9a\n"
    },
    {
      "commit": "636bdf19cd2d1c74f0b4bd99a5a744fbb808af3e",
      "tree": "ce45507021c3a17344efce0256fcc75d4fba3b99",
      "parents": [
        "da6cc4d5e4a5861bfd17c145c590abe14e8f9ba3"
      ],
      "author": {
        "name": "Ebru Kurnaz",
        "email": "ebrukurnaz@google.com",
        "time": "Fri May 09 15:32:23 2025 +0000"
      },
      "committer": {
        "name": "Ebru Kurnaz",
        "email": "ebrukurnaz@google.com",
        "time": "Wed May 14 13:46:04 2025 +0000"
      },
      "message": "Add a new class to notify add/remove sys decor callbacks from wm\n\nBug: 412580790\nTest: DisplayRepositoryTest\nFlag: com.android.window.flags.enable_sys_decors_callbacks_via_wm\nChange-Id: I1f574479a19656d913bfe18094ebd054852c82f5\n"
    },
    {
      "commit": "4fb8e634f42f7c697da3904ee87f1e0206361154",
      "tree": "14d4a0395f5baf3a9e5f911c9c273e61090690c5",
      "parents": [
        "d9f1302b9edbccb72cc78454542085e7bc94b327"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Tue May 13 16:41:11 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed May 14 14:44:34 2025 +0200"
      },
      "message": "Allow MagneticEffect to be used in reverse as well\n\nBug: 406969900\nTest: Unit tests\nFlag: EXEMPT not yet used in production\nChange-Id: I0c69251a153b62557148a8245a2e18dd05a47d65\n"
    },
    {
      "commit": "d9f1302b9edbccb72cc78454542085e7bc94b327",
      "tree": "ea7d5d8b4446c814610baaf9ae01e3a4f5bfeb3a",
      "parents": [
        "da6cc4d5e4a5861bfd17c145c590abe14e8f9ba3"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Tue May 13 13:12:52 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed May 14 11:12:16 2025 +0200"
      },
      "message": "Implement support for before/after semantics and mappings.\n\nBug: 401500734\nTest: Unit tests\nFlag: EXEMPT not yet used in production\nChange-Id: I5413bca9ffacf6ed0997d714a6d5c4fe257dae3c\n"
    },
    {
      "commit": "da6cc4d5e4a5861bfd17c145c590abe14e8f9ba3",
      "tree": "147119468727657a94f55c8ef35bce8a1f66837a",
      "parents": [
        "cd9b58383016268a122a42212e95acfe99d0ad7b",
        "2a78028a5834288f5d381c6bb26696a28ab81b81"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Wed May 14 01:59:40 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 14 01:59:40 2025 -0700"
      },
      "message": "Merge \"Reapply \"[MM] Nudge immediately when we reach a breakpoint\" 1/2\" into main"
    },
    {
      "commit": "2a78028a5834288f5d381c6bb26696a28ab81b81",
      "tree": "988ba10ba2578bcbbb9bd7fb95b9afeea688e5ac",
      "parents": [
        "6800a830a6b435fa5154b4d596ad34a70ce69725"
      ],
      "author": {
        "name": "Omar Miatello",
        "email": "omarmt@google.com",
        "time": "Tue May 13 12:07:30 2025 +0000"
      },
      "committer": {
        "name": "Omar Miatello",
        "email": "omarmt@google.com",
        "time": "Tue May 13 12:15:05 2025 +0000"
      },
      "message": "Reapply \"[MM] Nudge immediately when we reach a breakpoint\" 1/2\n\nThis revert ag/33520309\nReason: Updated golden for ContentRevealTest\n\nTest: Rerun all mechanics tests\nTest: Rerun ContentRevealTest\nBug: 416691631\nBug: 417266157\nFlag: com.android.systemui.scene_container\nChange-Id: Iac9c6469180bc8f3775e63243be4693672b85c50\n"
    },
    {
      "commit": "cd9b58383016268a122a42212e95acfe99d0ad7b",
      "tree": "f016f257d2c5f44bb91bc33153807a46e640990d",
      "parents": [
        "6800a830a6b435fa5154b4d596ad34a70ce69725"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Tue May 13 02:03:07 2025 -0700"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Tue May 13 02:03:07 2025 -0700"
      },
      "message": "Adds Compose modules mechnics presubmit tests\n\nBug: 417266157\nFlag: EXEMPT TEST_ONLY\nTest: presubmit\nChange-Id: I64047bc8d6f106094b3878c2b3bd37dc79860d33\n"
    },
    {
      "commit": "6800a830a6b435fa5154b4d596ad34a70ce69725",
      "tree": "802bbfbd4a26933e1e795814102d39044f81e5e1",
      "parents": [
        "38733e8cc6e20c8c09f9fc775f87a15162587ae0",
        "ca037c0d6d68e6047b2cd9aead76b9c791f57fa8"
      ],
      "author": {
        "name": "Naresh Kumar Podishetty (xWF)",
        "email": "podishettyk@google.com",
        "time": "Tue May 13 01:34:37 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 13 01:34:37 2025 -0700"
      },
      "message": "Merge \"Revert \"[MM] Nudge immediately when we reach a breakpoint\"\" into main"
    },
    {
      "commit": "ca037c0d6d68e6047b2cd9aead76b9c791f57fa8",
      "tree": "de8aba30255fcf853e83a39113705454c2071598",
      "parents": [
        "386c486c39a776f48619a1eb3b10a87b7c74ad11"
      ],
      "author": {
        "name": "Naresh Kumar Podishetty (xWF)",
        "email": "podishettyk@google.com",
        "time": "Mon May 12 19:45:32 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 12 19:45:32 2025 -0700"
      },
      "message": "Revert \"[MM] Nudge immediately when we reach a breakpoint\"\n\nThis reverts commit 386c486c39a776f48619a1eb3b10a87b7c74ad11.\n\nReason for revert: \u003cDroid monitor: Likely culprit for b/417266157 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.\u003e\n\nBug: 417266157\nChange-Id: I500ac7792e861eefb32829afd5ef010321c57b88\n"
    },
    {
      "commit": "38733e8cc6e20c8c09f9fc775f87a15162587ae0",
      "tree": "988ba10ba2578bcbbb9bd7fb95b9afeea688e5ac",
      "parents": [
        "386c486c39a776f48619a1eb3b10a87b7c74ad11",
        "b3e893429454e2f8c6e6f6e020ab9c714c80ec28"
      ],
      "author": {
        "name": "Ebru Kurnaz",
        "email": "ebrukurnaz@google.com",
        "time": "Mon May 12 15:51:39 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 12 15:51:39 2025 -0700"
      },
      "message": "Merge \"Create displaylib DisplaysWithDecorationsRepository that uses WindowManager callback for add/remove system decorations.\" into main"
    },
    {
      "commit": "386c486c39a776f48619a1eb3b10a87b7c74ad11",
      "tree": "7aba42c2f45a35d7d0da1714e12802ad2ecdd092",
      "parents": [
        "a8085ae038d2134e8dab04162e7a45d68d263f83"
      ],
      "author": {
        "name": "Omar Miatello",
        "email": "omarmt@google.com",
        "time": "Fri May 09 13:07:06 2025 +0000"
      },
      "committer": {
        "name": "Omar Miatello",
        "email": "omarmt@google.com",
        "time": "Mon May 12 13:57:02 2025 +0000"
      },
      "message": "[MM] Nudge immediately when we reach a breakpoint\n\nTest: Rerun all mechanics tests\nBug: 416691631\nFlag: com.android.systemui.scene_container\nChange-Id: I745d57117e94e3808c29f16c231b801711b2ba4a\n"
    },
    {
      "commit": "a8085ae038d2134e8dab04162e7a45d68d263f83",
      "tree": "de8aba30255fcf853e83a39113705454c2071598",
      "parents": [
        "11fc2857d2e48d93444b936814179f165754d84f"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri May 09 15:29:56 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Mon May 12 09:53:35 2025 +0200"
      },
      "message": "Add overdrag effect\n\nBug: 401500734\nTest: Unit tests\nFlag: EXEMPT not yet used in production\nChange-Id: Ie4200a9f5122c329905feea73403b6b70b6b2cfa\n"
    },
    {
      "commit": "11fc2857d2e48d93444b936814179f165754d84f",
      "tree": "a47b59b8a5f838acde0e6ea5b27c7010045a8ed4",
      "parents": [
        "7947810ea242b25f4093e185430a41c9e8a9f2be"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri May 09 15:29:11 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Mon May 12 09:53:35 2025 +0200"
      },
      "message": "Refactor MotionSpecBuilder and Effects to allow directionality\n\nChanges the Effect API to require specifying the placements they\nsupport. During applying the effects, access to the desired placement\nis provided again.\n\nRewrote the placement code for simplicity.\n\nBug: 401500734\nTest: Unit tests\nFlag: EXEMPT not yet used in production\nChange-Id: Ib17c9f0527206c2af1b8128e128cebf23875b2bc\n"
    },
    {
      "commit": "7947810ea242b25f4093e185430a41c9e8a9f2be",
      "tree": "a5e4b2d89edc398c781bd356906d6132c742b822",
      "parents": [
        "bddb575229242483df961583cd0e3c5a1fecaa05"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri May 09 15:26:26 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Mon May 12 09:27:23 2025 +0200"
      },
      "message": "Testing utilities for verifying timeseries in code\n\nBug: 401500734\nTest: Unit tests\nFlag: TEST_ONLY\nChange-Id: I623f9d413d671e184dbcd0e49832b763cbac9f97\n"
    },
    {
      "commit": "bddb575229242483df961583cd0e3c5a1fecaa05",
      "tree": "a6cba2ba734a2d8fb7f3b367ccd3436e09ae0332",
      "parents": [
        "47cb56a5a6740d2979f63e944f7af058b5a007d2",
        "36cba118c5bffaa6c5592878f918d3cc65160854"
      ],
      "author": {
        "name": "Shamali Patwa",
        "email": "shamalip@google.com",
        "time": "Fri May 09 16:09:32 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 09 16:09:32 2025 -0700"
      },
      "message": "Merge \"Move widget picker directory to be under launcher3\" into main"
    },
    {
      "commit": "47cb56a5a6740d2979f63e944f7af058b5a007d2",
      "tree": "782bc019eabeff11c46ebc5539cc08b7b6f0d3a7",
      "parents": [
        "9705c430ee551826698520365162a95bf90018cb",
        "793d9772a92331110f226a99cb7fd861beecc119"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri May 09 12:54:17 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 09 12:54:17 2025 -0700"
      },
      "message": "Merge \"Cache snow accumulation\" into main"
    },
    {
      "commit": "9705c430ee551826698520365162a95bf90018cb",
      "tree": "8cc2f8372dfff8d0dec407eb0f7f5dfebdd85c9a",
      "parents": [
        "679332226a9023b0f2389f707823ea8f5a438555",
        "d13e70bd62cd1368084778d454bdffb7daecf61f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri May 09 11:35:58 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 09 11:35:58 2025 -0700"
      },
      "message": "Merge \"[MM] MotionSpecBuilder resets maxLimitSemantics during last iteration\" into main"
    },
    {
      "commit": "679332226a9023b0f2389f707823ea8f5a438555",
      "tree": "d9d460eacd17e760e019ae6cfbfd11f27f74ad9c",
      "parents": [
        "17c37a98a4644d0bc81fd7f52f7e03d9e6a8993c",
        "f9e5eb2888e88dab6b50a5b6d75f5468c5ef610e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri May 09 09:50:20 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 09 09:50:20 2025 -0700"
      },
      "message": "Merge \"Extract min/max breakpoint key, and add Breakpoint factory\" into main"
    },
    {
      "commit": "b3e893429454e2f8c6e6f6e020ab9c714c80ec28",
      "tree": "dfbc405366c970e9bc4df3aad63beffb2b2de086",
      "parents": [
        "17c37a98a4644d0bc81fd7f52f7e03d9e6a8993c"
      ],
      "author": {
        "name": "Ebru Kurnaz",
        "email": "ebrukurnaz@google.com",
        "time": "Wed Apr 30 10:38:28 2025 +0000"
      },
      "committer": {
        "name": "Ebru Kurnaz",
        "email": "ebrukurnaz@google.com",
        "time": "Fri May 09 15:36:17 2025 +0000"
      },
      "message": "Create displaylib DisplaysWithDecorationsRepository that uses WindowManager callback for add/remove system decorations.\n\nBug: 412580790\nTest: DisplayRepositoryTest\nFlag: com.android.window.flags.enable_sys_decors_callbacks_via_wm\nChange-Id: Iaec62a1de3b8f3b1581a04875b12e50966fad496\n"
    },
    {
      "commit": "f9e5eb2888e88dab6b50a5b6d75f5468c5ef610e",
      "tree": "58c5847aed71c4f64d359ea0181fb754d055cdb6",
      "parents": [
        "2acb85fa8293377f9867fb7cbd1234e15c1181a8"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri May 09 15:25:28 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri May 09 15:25:28 2025 +0200"
      },
      "message": "Extract min/max breakpoint key, and add Breakpoint factory\n\nThis ensures the Breakpoint.min/maxLimit are always the same objects.\n\nBug: 401500734\nTest: Unit tests\nFlag: EXEMPT Strict mechanical refactor\nChange-Id: I3b420b31ce32ae62aaccfcc8180978f3b122f417\n"
    },
    {
      "commit": "36cba118c5bffaa6c5592878f918d3cc65160854",
      "tree": "3e21baa06b1641ff8891651d0dd114ed1f678955",
      "parents": [
        "946917482d84f0cb2b73039d10c6db0607191ecc"
      ],
      "author": {
        "name": "Shamali P",
        "email": "shamalip@google.com",
        "time": "Fri May 09 12:54:48 2025 +0000"
      },
      "committer": {
        "name": "Shamali P",
        "email": "shamalip@google.com",
        "time": "Fri May 09 12:57:12 2025 +0000"
      },
      "message": "Move widget picker directory to be under launcher3\n\nBug: 408283627\nFlag: EXEMPT independent module\nTest: Unit tests\nChange-Id: I5b35684b4010e87814d3f44f07e2adccc2c62a01\n"
    },
    {
      "commit": "17c37a98a4644d0bc81fd7f52f7e03d9e6a8993c",
      "tree": "fc510130f1b298b688db9e21fe08430e02241d7d",
      "parents": [
        "2acb85fa8293377f9867fb7cbd1234e15c1181a8",
        "8a542dc57e3d3ed622efc20b81b0bb23ba302082"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri May 09 03:45:37 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 09 03:45:37 2025 -0700"
      },
      "message": "Merge \"Cleanup displaylib tests\" into main"
    },
    {
      "commit": "793d9772a92331110f226a99cb7fd861beecc119",
      "tree": "b06322cf744f1bb73d224201fb39feeb979f5fff",
      "parents": [
        "10e8d60cee1d94f266531ee4b9181ef475b2ed48"
      ],
      "author": {
        "name": "Sherry Zhou",
        "email": "yuandizhou@google.com",
        "time": "Thu May 08 23:02:57 2025 +0000"
      },
      "committer": {
        "name": "Sherry Zhou",
        "email": "yuandizhou@google.com",
        "time": "Fri May 09 02:10:05 2025 +0000"
      },
      "message": "Cache snow accumulation\n\nPreviously, we only precalculate foreground outline, and in this change,\nwe calculate detailed snow accumulation with fluffy noise, and use R\nchannel as a throttler to react to intensity change.\n\nIt will save ~10% GPU power\n\nBug: 393240440\nTest: manual test, attached video in bug thread\nFlag: EXEMPT, Magic Portrait only\n\nChange-Id: Ie31259f58f8443122bc630cf411f3b491ca566cc\n"
    },
    {
      "commit": "2acb85fa8293377f9867fb7cbd1234e15c1181a8",
      "tree": "ce26949e4f2a559f77d781b3fc3ab9422d4227cb",
      "parents": [
        "20e1042d2bf1ff6ff75a0d7bdb025dccfabb12b5",
        "4e2331ebd910e48bdb61ad18d11a832dc1af09aa"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu May 08 12:06:04 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 08 12:06:04 2025 -0700"
      },
      "message": "Merge \"[MM] Add mechanics-compose module 2/2\" into main"
    },
    {
      "commit": "20e1042d2bf1ff6ff75a0d7bdb025dccfabb12b5",
      "tree": "65890a31da5937f8b1a2b959018a941a9c7417f9",
      "parents": [
        "9a1b9bbb8d68696fc19a0201321f0fc8ccf1c2cb",
        "e1c1d5c8c8839e2f0db3d0c18d29ff3de8cb148a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu May 08 12:05:56 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 08 12:05:56 2025 -0700"
      },
      "message": "Merge \"[MM] Nudge spring only if there was a jump (discontinuity)\" into main"
    },
    {
      "commit": "d13e70bd62cd1368084778d454bdffb7daecf61f",
      "tree": "9f6e6122889b65d55474cc710fc11f8df5289738",
      "parents": [
        "4e2331ebd910e48bdb61ad18d11a832dc1af09aa"
      ],
      "author": {
        "name": "Omar Miatello",
        "email": "omarmt@google.com",
        "time": "Wed May 07 16:11:21 2025 +0000"
      },
      "committer": {
        "name": "Omar Miatello",
        "email": "omarmt@google.com",
        "time": "Thu May 08 15:52:04 2025 +0000"
      },
      "message": "[MM] MotionSpecBuilder resets maxLimitSemantics during last iteration\n\nMotionSpecBuilder now resets maxLimitSemantics before applying the last\neffect.\n\nTest: atest MotionSpecBuilderTest\nBug: 410524175\nFlag: com.android.systemui.scene_container\nChange-Id: I12d38f0649b619fae4b56c8ffde36a8c5efce418\n"
    },
    {
      "commit": "4e2331ebd910e48bdb61ad18d11a832dc1af09aa",
      "tree": "57a2b922d6715ba41fb1116f4dacba1a9b65b211",
      "parents": [
        "e1c1d5c8c8839e2f0db3d0c18d29ff3de8cb148a"
      ],
      "author": {
        "name": "Omar Miatello",
        "email": "omarmt@google.com",
        "time": "Mon Apr 14 15:37:58 2025 +0000"
      },
      "committer": {
        "name": "Omar Miatello",
        "email": "omarmt@google.com",
        "time": "Thu May 08 15:52:01 2025 +0000"
      },
      "message": "[MM] Add mechanics-compose module 2/2\n\nNew module for Compose specific features\n\nTest: test_gradle_build.sh\nBug: 410524175\nFlag: com.android.systemui.scene_container\nChange-Id: I94256911e0349e73a3d7ff399400b2833467a36f\n"
    },
    {
      "commit": "8a542dc57e3d3ed622efc20b81b0bb23ba302082",
      "tree": "41cb691549a624c941fb98253d3f7bd11270e104",
      "parents": [
        "946917482d84f0cb2b73039d10c6db0607191ecc"
      ],
      "author": {
        "name": "Nicolo\u0027 Mazzucato",
        "email": "nicomazz@google.com",
        "time": "Thu May 08 09:38:20 2025 +0000"
      },
      "committer": {
        "name": "Nicolo\u0027 Mazzucato",
        "email": "nicomazz@google.com",
        "time": "Thu May 08 09:38:46 2025 +0000"
      },
      "message": "Cleanup displaylib tests\n\n- Moves fakes from systemui to displaylib\n- Makes DisplayRepositoryTest use kosmos for deps\n- Adds docs to the DisplayRepositoryTest in display lib referring to the systemui test class\n- Makes the choice to duplicate pairwiseBy deliberate\n\nBug: 362719719\nBug: 401305290\nTest: DisplayRepositoryTest\nFlag: NONE - Just a cleanup of tests\nChange-Id: I98be434639d2749646d6156a83094da039130e05\n"
    },
    {
      "commit": "e1c1d5c8c8839e2f0db3d0c18d29ff3de8cb148a",
      "tree": "f4967cdf11045cacc170f83db790c19e1198a4c0",
      "parents": [
        "cf7b2e2f7c6e44cb046687da9808493bf455a2b3"
      ],
      "author": {
        "name": "Omar Miatello",
        "email": "omarmt@google.com",
        "time": "Wed May 07 15:12:59 2025 +0000"
      },
      "committer": {
        "name": "Omar Miatello",
        "email": "omarmt@google.com",
        "time": "Thu May 08 08:59:54 2025 +0000"
      },
      "message": "[MM] Nudge spring only if there was a jump (discontinuity)\n\nWhen an unstable motion value reaches a breakpoint with a continuation\nfunction (there is no jump), we should following the target output\nrather than adding the velocity.\n\nScreenshot: go/416249374#comment2\n\nTest: atest MotionValueTest\nBug: 416249374\nFlag: com.android.systemui.scene_container\nChange-Id: Ic5e47365a8ee97b1f49098ec00ccac9263816932\n"
    },
    {
      "commit": "9a1b9bbb8d68696fc19a0201321f0fc8ccf1c2cb",
      "tree": "7ad1903ac5643c3bc3a4ee0d9687964ed112feee",
      "parents": [
        "dd2a90446314b3392d442d77a2aa4013b4923bd5",
        "59c47a2805d72956715f8dd5b1384de8303e0ccc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue May 06 09:07:25 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 06 09:07:25 2025 -0700"
      },
      "message": "Merge \"Log Set of listener callbacks\" into main"
    },
    {
      "commit": "59c47a2805d72956715f8dd5b1384de8303e0ccc",
      "tree": "bc53990136f69e8a8f4e406f363d9eec15e2933d",
      "parents": [
        "3e86d18585e2aa819c6d0451f65c9c2b0f0592ea"
      ],
      "author": {
        "name": "Beverly",
        "email": "beverlyt@google.com",
        "time": "Mon May 05 14:02:28 2025 +0000"
      },
      "committer": {
        "name": "Beverly Tai",
        "email": "beverlyt@google.com",
        "time": "Mon May 05 12:12:43 2025 -0700"
      },
      "message": "Log Set of listener callbacks\n\nTest: builds\nBug: 394230633\nFlag: EXEMPT bugfix\nChange-Id: I4eab603240c82fe2e263dac8217727f05c3be1ed\n"
    },
    {
      "commit": "dd2a90446314b3392d442d77a2aa4013b4923bd5",
      "tree": "826702aa188bc448f10383dadc7f81fc5aa1d2a8",
      "parents": [
        "946917482d84f0cb2b73039d10c6db0607191ecc"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Mon May 05 13:31:44 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Mon May 05 13:31:44 2025 +0200"
      },
      "message": "Make mechanics tests depend on mechanics lib directly\n\nBug: 240432457\nTest: atest mechanics_tests\nFlag: EXEMPT build config clean up\nChange-Id: Icd61a6e1ecb232eed7c88ffc3e25d62d61ef5820\n"
    },
    {
      "commit": "946917482d84f0cb2b73039d10c6db0607191ecc",
      "tree": "d406fab11f626025a39f57304d84fadbc6892e44",
      "parents": [
        "3e86d18585e2aa819c6d0451f65c9c2b0f0592ea",
        "633d730bbfdd928fbe33a2457d04c429b9e687aa"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri May 02 13:58:10 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 02 13:58:10 2025 -0700"
      },
      "message": "Merge \"Modify PowerSaveController to support adding and removing listeners out of constructor\" into main"
    },
    {
      "commit": "3e86d18585e2aa819c6d0451f65c9c2b0f0592ea",
      "tree": "3daf1f10b7ef5f32bcf307caa579fec78c5e200f",
      "parents": [
        "10e8d60cee1d94f266531ee4b9181ef475b2ed48",
        "1276a2ff868cc7d90e60e60774131ebdcabf16a4"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri May 02 12:34:47 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 02 12:34:47 2025 -0700"
      },
      "message": "Merge \"Lower min sdk version for mechanics library to make it compatible with Launcher\" into main"
    },
    {
      "commit": "633d730bbfdd928fbe33a2457d04c429b9e687aa",
      "tree": "6dd58bcc579a43612b93cd704ab43dbd2207a9b2",
      "parents": [
        "10e8d60cee1d94f266531ee4b9181ef475b2ed48"
      ],
      "author": {
        "name": "Sherry Zhou",
        "email": "yuandizhou@google.com",
        "time": "Thu May 01 23:06:41 2025 +0000"
      },
      "committer": {
        "name": "Sherry Zhou",
        "email": "yuandizhou@google.com",
        "time": "Fri May 02 19:23:59 2025 +0000"
      },
      "message": "Modify PowerSaveController to support adding and removing listeners out of constructor\n\nBug: 414646532\nFlag: EXEMPT, add methods\nTest: manual test and atest EngineWeatherViewModelForAppliedWallpaperTest\n\nChange-Id: I1a4167aa8e753c266127e0c86a88f97c51530190\n"
    },
    {
      "commit": "10e8d60cee1d94f266531ee4b9181ef475b2ed48",
      "tree": "501baf6f4dd028b7085cab4ca4d982e14f100903",
      "parents": [
        "c1a2201464ca2234db6b88f74c3be5ad2c9fdc66",
        "4ae0c3fb6f8f307d328c13d2d10f446fc67f3acf"
      ],
      "author": {
        "name": "Sherry Zhou",
        "email": "yuandizhou@google.com",
        "time": "Wed Apr 30 09:46:20 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 30 09:46:20 2025 -0700"
      },
      "message": "Merge \"Add tolerance to FPSThrottler to avoid skipped frame when surface frame rate matches FPS limit\" into main"
    },
    {
      "commit": "c1a2201464ca2234db6b88f74c3be5ad2c9fdc66",
      "tree": "53ea4bcc6d3c44b1f6e36012e9c4424f686fd25d",
      "parents": [
        "21e72d19b25c9077fd92b957888a2f808ae4314e"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 30 13:12:46 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 30 13:33:37 2025 +0200"
      },
      "message": "Add ViewMotionBuilderContext (and material spring definitions)\n\nExposes the standard / expressive motion theme springs, by copying the\ndefinitions from the compose world.\n\nAdded a test to guarantee the tokens remain in sync with what Material\npublishes through Android.\n\nBug: 389081766\nTest: ViewMotionBuilderContextTest\nFlag: EXEMPT not yet used\nChange-Id: I60a88905f8c13805cea7ecde78367aac4aa4199d\n"
    },
    {
      "commit": "1276a2ff868cc7d90e60e60774131ebdcabf16a4",
      "tree": "810459e8889d6dbd04b57cdd23a76796dc9a98d7",
      "parents": [
        "cf7b2e2f7c6e44cb046687da9808493bf455a2b3"
      ],
      "author": {
        "name": "Pat Manning",
        "email": "patmanning@google.com",
        "time": "Wed Apr 30 11:11:18 2025 +0100"
      },
      "committer": {
        "name": "Pat Manning",
        "email": "patmanning@google.com",
        "time": "Wed Apr 30 11:11:18 2025 +0100"
      },
      "message": "Lower min sdk version for mechanics library to make it compatible with Launcher\n\nFix: 389081766\nTest: Manual.\nFlag: com.android.launcher3.enable_expressive_dismiss_task_motion\nChange-Id: I31339b3adea29405ce5749de6b2ca15d5a725ff5\n"
    },
    {
      "commit": "4ae0c3fb6f8f307d328c13d2d10f446fc67f3acf",
      "tree": "4e876df9f78b2cfa648fbcf44b180da5b59e60e8",
      "parents": [
        "cf7b2e2f7c6e44cb046687da9808493bf455a2b3"
      ],
      "author": {
        "name": "Sherry Zhou",
        "email": "yuandizhou@google.com",
        "time": "Tue Apr 29 00:38:47 2025 +0000"
      },
      "committer": {
        "name": "Sherry Zhou",
        "email": "yuandizhou@google.com",
        "time": "Wed Apr 30 01:12:35 2025 +0000"
      },
      "message": "Add tolerance to FPSThrottler to avoid skipped frame when surface frame rate matches FPS limit\n\nBug: 413729750\nTest: perfetto\nFlag: EXEMPT, adding tolerance\n\nChange-Id: Ia37108ca127d6a4e4c1a29e4090def506d30ccc2\n"
    },
    {
      "commit": "21e72d19b25c9077fd92b957888a2f808ae4314e",
      "tree": "82b702312f2640f9a2cd937dae964fe14fe5dd11",
      "parents": [
        "cf7b2e2f7c6e44cb046687da9808493bf455a2b3"
      ],
      "author": {
        "name": "Shamali Patwa",
        "email": "shamalip@google.com",
        "time": "Tue Apr 29 16:16:57 2025 -0700"
      },
      "committer": {
        "name": "Shamali Patwa",
        "email": "shamalip@google.com",
        "time": "Tue Apr 29 16:16:57 2025 -0700"
      },
      "message": "Add a bottom sheet with title and description on top.\n\nActs as a common structure that can be used across all three types of widget pickers.\n- full catalog -\u003e full expanded\n- single app catalog / pin widget -\u003e wraps the content until full size\n\nIn case of extra tall heights, height of sheet is capped at 2/3 size.\n\nBug: 408283627\nTest: On device; an end to end screenshot test will provide automation coverage\nFlag: EXEMPT new lib\nChange-Id: If605104bfcc096de3f04558a818e4fec1d1666ed\n"
    },
    {
      "commit": "cf7b2e2f7c6e44cb046687da9808493bf455a2b3",
      "tree": "41f2a78a6f604dba980f997456b66ad0c4aa4b45",
      "parents": [
        "92333ef4f1b95b13435751b6b281c00c5f762481",
        "c8633482b5979a43dba13433bdee812807d26191"
      ],
      "author": {
        "name": "Juan Sebastian Martinez",
        "email": "juansmartinez@google.com",
        "time": "Mon Apr 28 06:24:04 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 28 06:24:04 2025 -0700"
      },
      "message": "Merge \"[SysUI][Floaty] Add haptic effect flag.\" into main"
    },
    {
      "commit": "92333ef4f1b95b13435751b6b281c00c5f762481",
      "tree": "f5859d941da13648b58b1b4165778911e92c894d",
      "parents": [
        "5c532ab44da57205a1e76f911700dc3952ee1ea8",
        "881aebfcbb6f84dbd511a51cba904d517150fd64"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Mon Apr 28 05:32:45 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 28 05:32:45 2025 -0700"
      },
      "message": "Merge \"Adding wm-cf tests to mechanics presubmit\" into main"
    },
    {
      "commit": "5c532ab44da57205a1e76f911700dc3952ee1ea8",
      "tree": "ce9c77b3f62bc8fbd9edd16d9428628b2cdd7285",
      "parents": [
        "68a2c201f9e350fb0ce2e7b67307e6849244fa8f",
        "b5c56845fabbdf82935947696fd5841a5eed46ed"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Mon Apr 28 05:32:43 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 28 05:32:43 2025 -0700"
      },
      "message": "Merge \"Add SysUI tests to presubmit\" into main"
    },
    {
      "commit": "881aebfcbb6f84dbd511a51cba904d517150fd64",
      "tree": "14d733be15d998aa05ec2312c3855e104b6027aa",
      "parents": [
        "b5c56845fabbdf82935947696fd5841a5eed46ed"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Mon Apr 28 04:35:53 2025 -0700"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Mon Apr 28 04:35:53 2025 -0700"
      },
      "message": "Adding wm-cf tests to mechanics presubmit\n\nThis is another attempt on ag/33012141\n\nFlag: TEST_ONLY\nBug: 379248269\nBug: 411073293\nChange-Id: Ib80b433f8f102a6e1b386a70e4b2c7ac71b8e3fd\n"
    },
    {
      "commit": "b5c56845fabbdf82935947696fd5841a5eed46ed",
      "tree": "b1bd5e88af71720f62844e5c226e551980659245",
      "parents": [
        "3815892f05e82fe1c45f0f2b07690768c07faea7"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Mon Apr 28 04:35:18 2025 -0700"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Mon Apr 28 04:35:18 2025 -0700"
      },
      "message": "Add SysUI tests to presubmit\n\nThis rolls forward only the SysUI part or the change.\n\nWMShell will be adressed in a separate followup CL\n\n\nFlag: TEST_ONLY\nBug: 379248269\nChange-Id: I1cbf0a8fa66f7cce04bd3f10d8e42678b578b08b\n"
    },
    {
      "commit": "68a2c201f9e350fb0ce2e7b67307e6849244fa8f",
      "tree": "8a46f1ed023076a8c9953fae4ce288631bc61ae9",
      "parents": [
        "acff6f40ec5b52c41d002898a186fca5d154bbca",
        "c60c7355a6ef02cb23120c2be2352d42d9ad9385"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Mon Apr 28 03:47:38 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 28 03:47:38 2025 -0700"
      },
      "message": "Merge changes from topics \"directional_builder\", \"remove_fluent_builder\" into main\n\n* changes:\n  Remove FluentSpecBuilder\n  Add `identity` mapping to `DirectionalBuilderScope`\n  Make buildDirectionalMotionSpec match the style of `motionSpec` builder\n"
    },
    {
      "commit": "c8633482b5979a43dba13433bdee812807d26191",
      "tree": "32a26010e0c40eed8c5132d19e21e7b0fe090303",
      "parents": [
        "6d08892bc9a534c3f96c69b1393b32c97341de15"
      ],
      "author": {
        "name": "Juan Sebastian Martinez",
        "email": "juansmartinez@google.com",
        "time": "Sat Apr 26 11:32:35 2025 -0700"
      },
      "committer": {
        "name": "Juan Sebastian Martinez",
        "email": "juansmartinez@google.com",
        "time": "Sat Apr 26 14:57:36 2025 -0700"
      },
      "message": "[SysUI][Floaty] Add haptic effect flag.\n\nAdding a shared flag to control the haptic invocation effect separately.\n\nFlag: NONE adding new flag\nBug: 412325043\nTest: presubmit\nChange-Id: Ieeb8fc86b7a3fe1942e82fd6962b1c89f4cd70a7\n"
    },
    {
      "commit": "c60c7355a6ef02cb23120c2be2352d42d9ad9385",
      "tree": "fc0b98015e8d7f835cd8ebebaee3a52c44504991",
      "parents": [
        "064e7215d552bd109f30a022176fc7e5d015583e"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Thu Apr 24 16:58:56 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri Apr 25 11:56:48 2025 +0200"
      },
      "message": "Remove FluentSpecBuilder\n\nMigrate all references `directionalMotionSpec`. This is mostly used\nin test currently. The VerticalExpandContainerSpec usage is guarded by\nthe STL flag.\n\nBug: 406734758\nTest: Existing unit tests\nFlag: com.android.systemui.scene_container\nChange-Id: Ib441d5aeda8132d3c553a6ca541a82b2f400df21\n"
    },
    {
      "commit": "064e7215d552bd109f30a022176fc7e5d015583e",
      "tree": "f7fff3dd026b9cec1714cd90ace7d4cd5951a4c7",
      "parents": [
        "d639c1e44ca3df3709922602613b130720bf36ee"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri Apr 25 10:11:58 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri Apr 25 11:56:45 2025 +0200"
      },
      "message": "Add `identity` mapping to `DirectionalBuilderScope`\n\nThis is a common usecase for spatial effects. This will simplify\ndeleting the FluentBuilder in the next CL\n\nBug: 406734758\nTest: DirectionalBuilderImplTest\nFlag: com.android.systemui.scene_container\nChange-Id: Ide47b5a53f636cea1abb1ea5b08b178760c57e3b\n"
    },
    {
      "commit": "d639c1e44ca3df3709922602613b130720bf36ee",
      "tree": "40871621437f9c467267735b256a7c14b6d9efb0",
      "parents": [
        "917d8ee9e250756ed39108c333e2969474e761cd"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri Apr 25 10:33:05 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Fri Apr 25 11:23:14 2025 +0200"
      },
      "message": "Make buildDirectionalMotionSpec match the style of `motionSpec` builder\n\n- Move to the builder sub-package\n- create spatial/effects specific variants on MotionBuilderContext\n- remove the `build` from the name\n\nBug: 406734758\nTest: Existing unit tests\nFlag: com.android.systemui.scene_container\nChange-Id: Id36082ac52f4b1f9765dce354f62edd880f261ab\n"
    },
    {
      "commit": "acff6f40ec5b52c41d002898a186fca5d154bbca",
      "tree": "7eaa1a199a323bf69ea28d265649e3e7874c3c4d",
      "parents": [
        "072ec7cd436b12bc49fd5195d9338aada6436a0c",
        "644927b964ebae173d987f038ab957ab5f507288"
      ],
      "author": {
        "name": "Cameron Yee",
        "email": "cameronyee@google.com",
        "time": "Thu Apr 24 15:58:56 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 24 15:58:56 2025 -0700"
      },
      "message": "Merge \"Cloudy weather v1.0\" into main"
    },
    {
      "commit": "644927b964ebae173d987f038ab957ab5f507288",
      "tree": "3d992ddc3fb745bfbdd8e0883af2dc7fd9214ca7",
      "parents": [
        "6d08892bc9a534c3f96c69b1393b32c97341de15"
      ],
      "author": {
        "name": "Michel Comin Escude",
        "email": "michelcomin@google.com",
        "time": "Tue Nov 05 14:04:37 2024 -0800"
      },
      "committer": {
        "name": "Cameron",
        "email": "cameronyee@google.com",
        "time": "Thu Apr 24 21:24:50 2025 +0000"
      },
      "message": "Cloudy weather v1.0\n\nBug: 409834554\nTest: manual\nFlag: build.RELEASE_PACKAGE_MAGIC_PORTRAIT_WALLPAPERS\n\nChange-Id: Iada02d43664df3c448223f342e65c052e55ec77f\n"
    },
    {
      "commit": "072ec7cd436b12bc49fd5195d9338aada6436a0c",
      "tree": "58d1d523ac2ec50381d4813e889a82b313043748",
      "parents": [
        "917d8ee9e250756ed39108c333e2969474e761cd"
      ],
      "author": {
        "name": "Sunny Goyal",
        "email": "sunnygoyal@google.com",
        "time": "Thu Apr 24 11:14:08 2025 -0700"
      },
      "committer": {
        "name": "Sunny Goyal",
        "email": "sunnygoyal@google.com",
        "time": "Thu Apr 24 11:14:18 2025 -0700"
      },
      "message": "Adding missing aconfig flags\n\nBug: 413397835\nFlag: EXEMPT gradle\nTest: Verified mac build\nChange-Id: I15d4863644334af49f956d41a6669cb6f8448de6\n"
    },
    {
      "commit": "917d8ee9e250756ed39108c333e2969474e761cd",
      "tree": "0d24b111d71b756560b319c9cf98f6b741815354",
      "parents": [
        "bed8baaee3ac20c5ddda0f513d3b111b38ae014f",
        "e1e21b93b4ee6ad8c4d62db436a3e5958f8b357e"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Thu Apr 24 05:12:13 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 24 05:12:13 2025 -0700"
      },
      "message": "Merge changes I9cde0e6d,Ibb63bee5 into main\n\n* changes:\n  Make debug printing more useful\n  Implement reusable `MagneticDetach` effect\n"
    },
    {
      "commit": "e1e21b93b4ee6ad8c4d62db436a3e5958f8b357e",
      "tree": "f1c20eff4ee744298cd024cf166e16f2c795cebe",
      "parents": [
        "26104a85f22897626cdd6764b7eb383981b69082"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Tue Apr 22 16:41:16 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Thu Apr 24 12:15:13 2025 +0200"
      },
      "message": "Make debug printing more useful\n\nFlag: EXEMPT Not used in production\nBug: 391553479\nTest: Manual, inspected value during debugging\nChange-Id: I9cde0e6d18cf6604f6869e23df6bddf9bbca17d3\n"
    },
    {
      "commit": "26104a85f22897626cdd6764b7eb383981b69082",
      "tree": "6dc034583a160af0c2f829e12b0f30fc2df8f469",
      "parents": [
        "2c9cd8b16a87321ffc42f703ee2b46303ea68452"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Tue Apr 22 16:39:08 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Thu Apr 24 12:15:13 2025 +0200"
      },
      "message": "Implement reusable `MagneticDetach` effect\n\nTest: MagneticDetachTest\nFlag: EXEMPT Not yet used\nBug: 406969900\nChange-Id: Ibb63bee5ead4f8746a0fcc62df78af321fa98f03\n"
    },
    {
      "commit": "bed8baaee3ac20c5ddda0f513d3b111b38ae014f",
      "tree": "fb808a056f3298659c507b85950e4d9cb308ccfb",
      "parents": [
        "e03ed4287ac3cef8e2d2534d30de704136359a88",
        "e24e7f0a4f770a06c6113609817058d728ce479b"
      ],
      "author": {
        "name": "Shamali Patwa",
        "email": "shamalip@google.com",
        "time": "Wed Apr 23 12:35:02 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 23 12:35:02 2025 -0700"
      },
      "message": "Merge \"Update golden images (auto-generated from Scuba): invocation I33900010389739419\" into main"
    },
    {
      "commit": "e03ed4287ac3cef8e2d2534d30de704136359a88",
      "tree": "7378e21296b79ef2d69443622a1537610ac4ed8f",
      "parents": [
        "13425c543057868b0cb108e423a5136a6367b8a7",
        "b2da81a53a68cb6a387c092f0f26317e1319e333"
      ],
      "author": {
        "name": "Shamali Patwa",
        "email": "shamalip@google.com",
        "time": "Wed Apr 23 12:35:02 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 23 12:35:02 2025 -0700"
      },
      "message": "Merge \"Add a scrollable floating toolbar to display the featured / browse tabs\" into main"
    },
    {
      "commit": "13425c543057868b0cb108e423a5136a6367b8a7",
      "tree": "110ad847805a3a229e3618c3169ee113568caa6f",
      "parents": [
        "247f51f11854fb47adf9a863d15082d660850219",
        "d4cd80c07ac0ce6d40ee47a9b61f1e122c201421"
      ],
      "author": {
        "name": "Jeremy Sim",
        "email": "jeremysim@google.com",
        "time": "Wed Apr 23 11:45:57 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 23 11:45:57 2025 -0700"
      },
      "message": "Merge \"Add some @Jvm annotations for GestureContext and MotionValue\" into main"
    },
    {
      "commit": "b2da81a53a68cb6a387c092f0f26317e1319e333",
      "tree": "8f0cc5903908edd6f0eb6141fa13dbc8686ffbe6",
      "parents": [
        "6d08892bc9a534c3f96c69b1393b32c97341de15"
      ],
      "author": {
        "name": "Shamali Patwa",
        "email": "shamalip@google.com",
        "time": "Wed Apr 23 10:16:53 2025 -0700"
      },
      "committer": {
        "name": "Shamali Patwa",
        "email": "shamalip@google.com",
        "time": "Wed Apr 23 10:16:53 2025 -0700"
      },
      "message": "Add a scrollable floating toolbar to display the featured / browse tabs\n\n- Scrollable such that the selected tab is brought to center of visible area\n- Supports longer titles (See b/408470352 for conversation with material3)\n- Selected tab show prefix icon\n- Wraps content when tabs are small\n- At max goes 348dp wide\n\nBug: 408283627\nTest: Screenshot test\nFlag: EXEMPT new library\nChange-Id: I886e43fb8fda351ecb7e6acd6699eabd28a560df\n"
    },
    {
      "commit": "247f51f11854fb47adf9a863d15082d660850219",
      "tree": "6851354d140b55f500ec989ae65e3e8c060607d9",
      "parents": [
        "2c9cd8b16a87321ffc42f703ee2b46303ea68452",
        "ff6f95519c59b938cd5223e24b21569dfd9bc6a5"
      ],
      "author": {
        "name": "Andrew Xu",
        "email": "andrewxu@google.com",
        "time": "Wed Apr 23 09:26:16 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 23 09:26:16 2025 -0700"
      },
      "message": "Merge \"Fix disappearance of the QS overlay contents\" into main"
    },
    {
      "commit": "2c9cd8b16a87321ffc42f703ee2b46303ea68452",
      "tree": "ef01e9d14b4ca1e15de67996419f488c16ee02e7",
      "parents": [
        "3c812619bd9981139192fbc5aab19b5f08b75df8"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Tue Apr 22 10:31:01 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 23 15:46:44 2025 +0200"
      },
      "message": "use `runMonotonicClockTest` in `ComposeMotionValueToolkit`\n\n- This significantly speeds up tests, compared to launching a compose\n  activity for every test.\n- The duplicate last frame is removed, requiring a golden update\n- Compose and View based versions do now create the exact same goldens.\n\nTest: Existing unit test\nFlag: EXEMPT TEST_ONLY\nBug: 409930448\nChange-Id: Ia416f9528254073fe61906762adbccabd73b7608\n"
    },
    {
      "commit": "3c812619bd9981139192fbc5aab19b5f08b75df8",
      "tree": "ff3eab309d2fb5a4077d4891da5287db90ba2da7",
      "parents": [
        "86c41ff7eaa08ff2ec5f1c4111c4789ea97c331f"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Thu Apr 17 15:49:19 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 23 15:46:43 2025 +0200"
      },
      "message": "Common `MotionValueToolkit` for compose- and view-based MotionValues\n\n- The [ViewMotionValueToolkit] migrates away from using the ActivityScenarioRule, making tests much faster to exectue\n- The output is shifted one frame earlier, matching what the compose version does (required golden updates)\n\nTest: Existing unit test\nFlag: EXEMPT TEST_ONLY\nBug: 409930448\nChange-Id: I502490258d6e191cb18ec17ffbe53ab85fc54001\n"
    },
    {
      "commit": "86c41ff7eaa08ff2ec5f1c4111c4789ea97c331f",
      "tree": "c4c5ee52040e5b600e6878245a2a9ea9aa76b0b0",
      "parents": [
        "4b6c572846c911257d0c09bf07c4dbfe352dcbf0"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Thu Apr 17 09:46:01 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 23 15:46:43 2025 +0200"
      },
      "message": "Move mechanics test utilities in the new testing library\n\nTest: Existing unit test\nFlag: EXEMPT TEST_ONLY\nBug: 409930448\nChange-Id: Id8161d7c03f64b19339b0e3b2e214c0eb17bdd3e\n"
    },
    {
      "commit": "4b6c572846c911257d0c09bf07c4dbfe352dcbf0",
      "tree": "11c65f6d371fd76ffd69e509d6c7ae8c752b65c9",
      "parents": [
        "a2d9f56dbe3f1de619626e52de37c752bd22a0b2"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 16 16:29:54 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 23 15:46:43 2025 +0200"
      },
      "message": "`MotionSpecBuilder` to allow composing motion specs from behaviors.\n\nTest: MotionSpecBuilderTest.kt\nFlag: EXEMPT not yet used\nBug: 401500734\nChange-Id: I761996a99d100c048f344ffff75cea64968664e0\n"
    },
    {
      "commit": "ff6f95519c59b938cd5223e24b21569dfd9bc6a5",
      "tree": "db728777b92bded92678fdc0bec47914b293134b",
      "parents": [
        "c7caa5a9f8ba4bb5f10b5cbfa1d9861ad14a2f2c"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 23 12:51:28 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 23 04:17:44 2025 -0700"
      },
      "message": "Fix disappearance of the QS overlay contents\n\nThe issue was caused by a wrong use of `layer.record()`, since this does\nnot track the reads\n\nTest: Manual\nFlag: com.android.systemui.scene_container\nBug: 409621970\nChange-Id: I95e37d6d20acae4f6de4264ce04b7dc87be4353f\n"
    },
    {
      "commit": "a2d9f56dbe3f1de619626e52de37c752bd22a0b2",
      "tree": "560bca5413038972accba378f4608c23bc712eef",
      "parents": [
        "56c286567ef1d95883bed4b490c8b6b69ac87024",
        "4925b3f81d1699b5554919e2253acf2f31f190cf"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 23 04:02:40 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 23 04:02:40 2025 -0700"
      },
      "message": "Merge changes from topic \"motion_builder_context\" into main\n\n* changes:\n  Add `MotionBuilderContext` to encapsulate density and motion scheme.\n  Refactor `DirectionalMotionSpecBuilder.kt` into reusable targets\n"
    },
    {
      "commit": "56c286567ef1d95883bed4b490c8b6b69ac87024",
      "tree": "c8c143744a531823984029aa9e058bb97e7bf401",
      "parents": [
        "c7caa5a9f8ba4bb5f10b5cbfa1d9861ad14a2f2c",
        "3815892f05e82fe1c45f0f2b07690768c07faea7"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 23 00:08:56 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 23 00:08:56 2025 -0700"
      },
      "message": "Merge \"Revert \"Add sysui and WM shell tests to presubmit\"\" into main"
    },
    {
      "commit": "3815892f05e82fe1c45f0f2b07690768c07faea7",
      "tree": "294e831861a5b94ec9a1e5d1986bdd318c9c1cd7",
      "parents": [
        "34a28168e3e6b18cbd198f8c41022212b6b9a292"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Tue Apr 22 23:13:22 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 22 23:13:22 2025 -0700"
      },
      "message": "Revert \"Add sysui and WM shell tests to presubmit\"\n\nThis reverts commit 34a28168e3e6b18cbd198f8c41022212b6b9a292.\n\nReason for revert: b/411073293\n\nBug: 379248269\nBug: 411073293\nChange-Id: I5bbab28045bb764515acd0b7adef99a83914a5b7\n"
    },
    {
      "commit": "4925b3f81d1699b5554919e2253acf2f31f190cf",
      "tree": "ec227ba85436b525d563ddc16a71ff72df1154d4",
      "parents": [
        "512af2a159895b5b68a6ec6677438227cedd9979"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 16 11:48:18 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 23 08:07:29 2025 +0200"
      },
      "message": "Add `MotionBuilderContext` to encapsulate density and motion scheme.\n\nThese are commonly used when creating a concrete spec.\n\n- Provides a `FakeMotionSpecBuilderContext` for tests that do not rely\n  on the up to date material tokens, but need a \"reasonable\" defauly\n- Introduce a \"mechanics-testing\" library, which can be used for tests\n  of mechanics clients.\n\nTest: Testing library\nFlag: EXEMPT not used yet\nBug: 401500734\nBug: 409930448\nChange-Id: I821aa4164095064b71ed3fc2fcda496e22771817\n"
    },
    {
      "commit": "512af2a159895b5b68a6ec6677438227cedd9979",
      "tree": "83f6fbd88d0b32f968623e2e1c8b61c9a3e3fd35",
      "parents": [
        "c7caa5a9f8ba4bb5f10b5cbfa1d9861ad14a2f2c"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 16 11:06:43 2025 +0200"
      },
      "committer": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Wed Apr 23 08:07:28 2025 +0200"
      },
      "message": "Refactor `DirectionalMotionSpecBuilder.kt` into reusable targets\n\n- Moving builder code into a new `builder` sub package\n- Extracted `DirectionalMotionSpecBuilder` in a DirectionalBuilderScope\n- Extracted the implementation into a internal `DirectionalBuilderImpl`\n\nThis is done in preparation for reusing the DirectionalBuilderScope in\nthe new `MotionSpecBuilder`.\n\nTest: Existing unit tests\nFlag: EXEMPT refactor\nBug: 401500734\nChange-Id: I5d23f341a182d65e193a064f15f9a78b10248998\n"
    },
    {
      "commit": "c7caa5a9f8ba4bb5f10b5cbfa1d9861ad14a2f2c",
      "tree": "a75e9b991818839fb20cae368687ec23578d5384",
      "parents": [
        "8cdea58730f9f0c2d6a15a3d83cbf634b5e7b11f",
        "bf9e231a6b14a0b81d264e389e9c98f24e94a4af"
      ],
      "author": {
        "name": "Liam Lee Pong Lam",
        "email": "iamiam@google.com",
        "time": "Tue Apr 22 10:45:12 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 22 10:45:12 2025 -0700"
      },
      "message": "Merge \"Remove flag smartspace_remoteviews_intent_handler\" into main"
    },
    {
      "commit": "8cdea58730f9f0c2d6a15a3d83cbf634b5e7b11f",
      "tree": "1cd0735a46d5276e04c649bbebd1ac19fe4fd05d",
      "parents": [
        "6d08892bc9a534c3f96c69b1393b32c97341de15",
        "afbded284f90f397a813a7f57427745242a7975a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue Apr 22 03:31:57 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 22 03:31:57 2025 -0700"
      },
      "message": "Merge \"viewcapture: fix race condition\" into main"
    },
    {
      "commit": "afbded284f90f397a813a7f57427745242a7975a",
      "tree": "ee4d947a00d1914341928944578da1bb73d69764",
      "parents": [
        "868534d256b787e5cfc31779bc4df47e1b2ef440"
      ],
      "author": {
        "name": "Kean Mariotti",
        "email": "keanmariotti@google.com",
        "time": "Tue Apr 22 06:35:29 2025 +0000"
      },
      "committer": {
        "name": "Kean Mariotti",
        "email": "keanmariotti@google.com",
        "time": "Tue Apr 22 09:03:45 2025 +0000"
      },
      "message": "viewcapture: fix race condition\n\nonTrimMemory() could modify mFrameTimesNanosBg and mNodesBg\n(set new arrays with length \u003d 0) while they were being concurrently\naccessed by copyCleanViewsFromLastFrameBg().\n\nThis CL fixes the issues with:\n1. AtomicReferences wrapping the mFrameTimeNanosBg and mNodesBg arrays.\n2. A check in copyCleanViewsFromLastFrameBg() to make sure the arrays\n   have size !\u003d 0 before using them.\n\nFix: 409559758\nFlag: EXEMPT bugfix\nTest: presubmit\nChange-Id: If7103e352883908351fddb2616ac69c5a2b5871a\n"
    },
    {
      "commit": "e24e7f0a4f770a06c6113609817058d728ce479b",
      "tree": "2ed7818039e8f1bc06b43cbcd605282cb66d1263",
      "parents": [
        "6d08892bc9a534c3f96c69b1393b32c97341de15"
      ],
      "author": {
        "name": "Shamali Patwa",
        "email": "shamalip@google.com",
        "time": "Mon Apr 21 18:20:28 2025 -0700"
      },
      "committer": {
        "name": "Shamali Patwa",
        "email": "shamalip@google.com",
        "time": "Mon Apr 21 18:21:42 2025 -0700"
      },
      "message": "Update golden images (auto-generated from Scuba): invocation I33900010389739419\n\nScreenshots for ag/33175475\n\nBug: 408283627\nFlag: TEST_ONLY\nTest: atest MyRoboTests\nChange-Id: Ib71c5d011f1541ef6e5aff99423e715b4e592cf3\n"
    },
    {
      "commit": "6d08892bc9a534c3f96c69b1393b32c97341de15",
      "tree": "b40a79fe2a77193e3ace06821f996ff54c18e21c",
      "parents": [
        "5d8b0d5121baf3e2ed96c60b885e4ce29c5c1537",
        "0ba85b90eeaccf652a67d956c34b5e0f44a2f05d"
      ],
      "author": {
        "name": "Marcelo Arteiro",
        "email": "arteiro@google.com",
        "time": "Thu Apr 17 06:06:39 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 17 06:06:39 2025 -0700"
      },
      "message": "Merge \"[DO NOT REVERT] Updates Material Color Library\" into main"
    },
    {
      "commit": "0ba85b90eeaccf652a67d956c34b5e0f44a2f05d",
      "tree": "8273e08f10e1041e13ec9f263c134db382f33f37",
      "parents": [
        "ed20edd6f8d5a38f8eb3cd6ba977e204b13880d2"
      ],
      "author": {
        "name": "Marcelo Arteiro",
        "email": "arteiro@google.com",
        "time": "Thu Mar 27 17:05:52 2025 +0000"
      },
      "committer": {
        "name": "Marcelo Arteiro",
        "email": "arteiro@google.com",
        "time": "Thu Apr 17 05:18:51 2025 -0700"
      },
      "message": "[DO NOT REVERT] Updates Material Color Library\n\nFollowing 2025 Specifications\n - updates Variant\n - adds a few tokens\n - Removes deprecated Fidelity attribute\n\n\nObs: Do not automatically revet. If this Cl breaks please read go/color-update before reverting.\n\nBug: 394371316\nBug: 347286986\nTest: Presubmit\nFlag: android.os.material_colors_2025_03\n\nChange-Id: I2ee6368c48c167003ceef102ffac7897b88469aa\n"
    },
    {
      "commit": "5d8b0d5121baf3e2ed96c60b885e4ce29c5c1537",
      "tree": "9cd0f3aaae876b640b5d6b152c772a68f092f39a",
      "parents": [
        "dd822a5d9466fd721ed66e394c826022dd8b2144",
        "64d32960caaa2f60de07b9cc6b8863f31bb5319d"
      ],
      "author": {
        "name": "Jeff DeCew",
        "email": "jeffdq@google.com",
        "time": "Wed Apr 16 18:16:17 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 16 18:16:17 2025 -0700"
      },
      "message": "Merge \"Make shouldForceThemeIcon a param in MonoIconThemeController\" into main"
    },
    {
      "commit": "dd822a5d9466fd721ed66e394c826022dd8b2144",
      "tree": "22a55a1316b13098dcba8120055c0fd261441ca3",
      "parents": [
        "98908b4653087dae325484a674e2b1d783f5b37b",
        "ab27076581cf1bc37e7bd3e2ff69944a206e44f0"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Wed Apr 16 14:21:10 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 16 14:21:10 2025 -0700"
      },
      "message": "Merge \"Fix race from DisplayRepository.getDisplay\" into main"
    },
    {
      "commit": "bf9e231a6b14a0b81d264e389e9c98f24e94a4af",
      "tree": "986ca328fa1065fddbe55b44fe6fb43ae9a0a861",
      "parents": [
        "b164d52bf50ce6bd6bb72df4df4b8e070851f5f1"
      ],
      "author": {
        "name": "Liam, Lee Pong Lam",
        "email": "iamiam@google.com",
        "time": "Wed Apr 16 19:54:39 2025 +0000"
      },
      "committer": {
        "name": "Liam, Lee Pong Lam",
        "email": "iamiam@google.com",
        "time": "Wed Apr 16 21:05:11 2025 +0000"
      },
      "message": "Remove flag smartspace_remoteviews_intent_handler\n\nBug: 410100291\nTest: unit tests\nFlag: EXEMPT cleanup\n\nChange-Id: I01e25696f845f4b3ada170a4b3fedbc0edcc82d4\n"
    },
    {
      "commit": "98908b4653087dae325484a674e2b1d783f5b37b",
      "tree": "8583805fe058ffa92f8499ea72d72defa8684c29",
      "parents": [
        "b164d52bf50ce6bd6bb72df4df4b8e070851f5f1"
      ],
      "author": {
        "name": "Liran Binyamin",
        "email": "liranb@google.com",
        "time": "Tue Apr 15 16:11:14 2025 -0400"
      },
      "committer": {
        "name": "Liran Binyamin",
        "email": "liranb@google.com",
        "time": "Tue Apr 15 16:27:05 2025 -0400"
      },
      "message": "Fix black bubble icon\n\nFallback on the AdaptiveIconDrawable\u0027s draw method when there are\nno background and foreground drawables.\n\nFlag: EXEMPT bug fix\nFixes: 409932325\nTest: manual\n       - create bubble\n       - mark conversation as important\n       - observe bubble icon\nChange-Id: I415b5865a6f3fc89693f976094e41114aa02a6c3\n"
    },
    {
      "commit": "64d32960caaa2f60de07b9cc6b8863f31bb5319d",
      "tree": "a33b9599a81120fe990e234442cd8f30a099a7ff",
      "parents": [
        "76ac1cf858ba1862e2aa4525279c3a71a92a85db"
      ],
      "author": {
        "name": "Julia Tuttle",
        "email": "juliatuttle@google.com",
        "time": "Wed Mar 26 12:51:38 2025 -0400"
      },
      "committer": {
        "name": "Ioana Alexandru",
        "email": "aioana@google.com",
        "time": "Tue Apr 15 22:25:32 2025 +0200"
      },
      "message": "Make shouldForceThemeIcon a param in MonoIconThemeController\n\nThis allows us to more easily customize this behavior based on the use\ncase.\n\nBug: 406507218\nTest: manual\nFlag: EXEMPT minor change\nChange-Id: Idb22a8a8bf723a7e6803886a1a4b45869219964d\n"
    },
    {
      "commit": "b164d52bf50ce6bd6bb72df4df4b8e070851f5f1",
      "tree": "f7320636cd1fba717ce814fba1a5c8b7a05ce079",
      "parents": [
        "7b4c1e2deb8ca954b876ae20b9b51627bc0bec7a",
        "dc47878f3080323bf18aa9e9cd1000385cf3db79"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue Apr 15 12:01:18 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 15 12:01:18 2025 -0700"
      },
      "message": "Merge \"Fix sun effect is too bright and parallax translation is not accurate\" into main"
    },
    {
      "commit": "ab27076581cf1bc37e7bd3e2ff69944a206e44f0",
      "tree": "34f7f6d7516b1d13448ea7f947afd6c658a5255c",
      "parents": [
        "d19e7b4c05694249de37c23b7df92111e64d2d14"
      ],
      "author": {
        "name": "Nicolo\u0027 Mazzucato",
        "email": "nicomazz@google.com",
        "time": "Tue Apr 15 08:33:11 2025 +0000"
      },
      "committer": {
        "name": "Nicolo\u0027 Mazzucato",
        "email": "nicomazz@google.com",
        "time": "Tue Apr 15 08:33:11 2025 +0000"
      },
      "message": "Fix race from DisplayRepository.getDisplay\n\nBefore this cl getDisplay(id) was guaranteed to not cause any binder call, as the mapping between displayId and Display in DisplayRepository was done in the background.\n\nHowever, this was causing getDisplay(id) to possibly return null after a display was added, in the case the binder call to get the display instance was in flight while getDisplay was called.\n\nThis cl regretfully makes getDisplay return the cached Display instance if available, or makes it trigger a binder call to get the Display if we know its id was added already. While this might cause regressions, it\u0027s necessary to ensure correctness. Anyway, the binder call shouldn\u0027t happen more than once per display id, so I don\u0027t expect the impact of this to be that high.\n\nA new method with the old non-blocking behaviour has been added: getCachedDisplay.\n\nBug: 362719719\nBug: 410580872\nTest: DisplayRepositoryTest\nFlag: NONE - small performance bugfix\nChange-Id: Icf2397daa604aa5f72f1962c7531130ffa634d97\n"
    },
    {
      "commit": "dc47878f3080323bf18aa9e9cd1000385cf3db79",
      "tree": "42e3efce0a148080bf488d33f1434f2a65e5b083",
      "parents": [
        "2a810456fd1ed38ee092fa51e988b5e2e2a02110"
      ],
      "author": {
        "name": "Sherry Zhou",
        "email": "yuandizhou@google.com",
        "time": "Tue Apr 08 23:24:21 2025 +0000"
      },
      "committer": {
        "name": "Sherry Zhou",
        "email": "yuandizhou@google.com",
        "time": "Tue Apr 15 04:52:01 2025 +0000"
      },
      "message": "Fix sun effect is too bright and parallax translation is not accurate\n\nBug: 409297176\nFlag: EXEMPT, Magic Portrait only\nTest: manual test\n\nChange-Id: Iab9fdd71a314d179226cf4abf2d6129ab92719d7\n"
    },
    {
      "commit": "7b4c1e2deb8ca954b876ae20b9b51627bc0bec7a",
      "tree": "3264d59d4fd556c163ba74e53987d1272eb59589",
      "parents": [
        "76ac1cf858ba1862e2aa4525279c3a71a92a85db"
      ],
      "author": {
        "name": "Charlie Anderson",
        "email": "charlander@google.com",
        "time": "Wed Feb 19 20:07:52 2025 +0000"
      },
      "committer": {
        "name": "Charlie Anderson",
        "email": "charlander@google.com",
        "time": "Mon Apr 14 19:02:49 2025 -0700"
      },
      "message": "Use BitmapShader to anti-alias shaped icons\n\nBug: 402202632\nTest: manually changing shapes, image tests\nFlag: com.android.launcher3.enable_launcher_icon_shapes\n\nChange-Id: I52b1147c105259d94f5aa7c18e0748be07e471f8\n"
    },
    {
      "commit": "76ac1cf858ba1862e2aa4525279c3a71a92a85db",
      "tree": "45616bffcd41002c9626726c41bfe5e339008e1d",
      "parents": [
        "ff6fbd8927251b5833a42560a7a49370f215b45a",
        "b4ab76ebca75ba383ffed265a512875ed1888855"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Mon Apr 14 11:57:11 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 14 11:57:11 2025 -0700"
      },
      "message": "Merge \"Add a way to disable animations in FastBitmapDrawable\" into main"
    },
    {
      "commit": "ff6fbd8927251b5833a42560a7a49370f215b45a",
      "tree": "9df8c626724209f7de5e66ed6ab72c89a8fd689c",
      "parents": [
        "12ae322dcfeb417afd43b073ae38b2cf721513ac",
        "66dce63aaad3a3a2c77818655dd8a784fad8ae90"
      ],
      "author": {
        "name": "Shamali Patwa",
        "email": "shamalip@google.com",
        "time": "Mon Apr 14 11:13:52 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 14 11:13:52 2025 -0700"
      },
      "message": "Merge changes from topic \"picker-ref-mod\" into main\n\n* changes:\n  Add initial set of owners for widgetpickerlib\n  Add repository interfaces describing the data needs of widget picker.\n  Define shared data types representing the data needs of widget picker\n  Add widgetpickerlib as a separate library hosting widget picker code\n"
    },
    {
      "commit": "b4ab76ebca75ba383ffed265a512875ed1888855",
      "tree": "7350451012f6dd96ceec809142a84f85313a758a",
      "parents": [
        "783e666bb865d01fab536fe0f8a60cea6ed7d349"
      ],
      "author": {
        "name": "Ioana Alexandru",
        "email": "aioana@google.com",
        "time": "Mon Apr 14 16:25:04 2025 +0200"
      },
      "committer": {
        "name": "Ioana Alexandru",
        "email": "aioana@google.com",
        "time": "Mon Apr 14 16:25:04 2025 +0200"
      },
      "message": "Add a way to disable animations in FastBitmapDrawable\n\nWe\u0027re using this drawable in Notifications, but we don\u0027t actually need\nthe animation.\n\nBug: 409889803\nTest: manual\nFlag: EXEMPT trivial change\nChange-Id: I569c283ecf8b444a359f3f0b20571f3807852640\n"
    },
    {
      "commit": "12ae322dcfeb417afd43b073ae38b2cf721513ac",
      "tree": "d5a9f80feaa70d4dc1e53c7158109ad4a4a2c93c",
      "parents": [
        "ece2bee8e99342c172498c8d9961bd6c6a8c9511",
        "34a28168e3e6b18cbd198f8c41022212b6b9a292"
      ],
      "author": {
        "name": "Mike Schneider",
        "email": "michschn@google.com",
        "time": "Mon Apr 14 02:28:11 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 14 02:28:11 2025 -0700"
      },
      "message": "Merge \"Add sysui and WM shell tests to presubmit\" into main"
    },
    {
      "commit": "ece2bee8e99342c172498c8d9961bd6c6a8c9511",
      "tree": "c00138448eed677b316df12cac0ff68852934a07",
      "parents": [
        "aa543bdb763b711e048d93592983b23713016819",
        "de26e7fcbce50b6543eab48653ff4cd5fc95daab"
      ],
      "author": {
        "name": "Charles Chen",
        "email": "charlesccchen@google.com",
        "time": "Fri Apr 11 08:42:55 2025 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 11 08:42:55 2025 -0700"
      },
      "message": "Merge \"Implement ViewCaptureAwareWm with wrapper\" into main"
    }
  ],
  "next": "aa543bdb763b711e048d93592983b23713016819"
}
