)]}'
{
  "log": [
    {
      "commit": "bb8dd8131ed10e05eb04459f537ffd17adbe4c75",
      "tree": "705f97ec386b407aa388e8b9ba46cb09d9f3ee0c",
      "parents": [
        "85ccfbdb4f09b90bc1d7171ac77c979e9b299e2e",
        "70813c6f5864352463db00cf3aa661b80969f7c9"
      ],
      "author": {
        "name": "Hsin-chen Chuang",
        "email": "chharry@chromium.org",
        "time": "Wed Jun 24 04:43:43 2026"
      },
      "committer": {
        "name": "Hsin-chen Chuang",
        "email": "chharry@chromium.org",
        "time": "Fri Jun 26 06:01:43 2026"
      },
      "message": "Merge 70813c6f5864352463db00cf3aa661b80969f7c9 (26Q1-release) from android17-release into main\n\nThis is the last snapshot for 26Q1-release. See: https://googleplex-android-review.git.corp.google.com/q/project:platform/packages/modules/Bluetooth+branch:26Q1-release+status:merged\n\nBUG\u003db:527278558\nTEST\u003dbluetooth_AdapterQuickHealth.AVL.all_floss\nTEST\u003dbluetooth_AdapterQuickHealth.AVL.all_floss.unstable_aflags\n\nCq-Depend: chromium:8008688\nCq-Depend: chromium:8010089\nChange-Id: I7a081b2403f6fabd848b8ba52df558e32554c24b\n"
    },
    {
      "commit": "85ccfbdb4f09b90bc1d7171ac77c979e9b299e2e",
      "tree": "37f289ae885c2556126b82a0b3804b5c4e3be858",
      "parents": [
        "30bd37269d873111fec870dcdca4dba256d3022b"
      ],
      "author": {
        "name": "Hsin-chen Chuang",
        "email": "chharry@chromium.org",
        "time": "Wed Feb 11 03:37:41 2026"
      },
      "committer": {
        "name": "Hsin-chen Chuang",
        "email": "chharry@chromium.org",
        "time": "Thu Feb 12 10:46:35 2026"
      },
      "message": "Totally sync with android16-qpr2-release\n\nSomehow there\u0027s still divergence after merged. Converging as long as it\nbuilds and looks harmless.\n\nBUG\u003db:478740843\nTEST\u003dbluetooth_AdapterQuickHealth.AVL.all_floss\nTEST\u003dbluetooth_AdapterQuickHealth.AVL.all_floss.unstable_aflags\n\nChange-Id: Ib087e020baf0c6640980613d183862495675d43a\n"
    },
    {
      "commit": "30bd37269d873111fec870dcdca4dba256d3022b",
      "tree": "439884e0f72224c082fe3b62d3d5f39ce699ede7",
      "parents": [
        "c255efa21f24886136ea800957c769d5540ee82e",
        "5323f31677c7dfa04de2e6e9fce1012ef4edaff2"
      ],
      "author": {
        "name": "Hsin-chen Chuang",
        "email": "chharry@chromium.org",
        "time": "Wed Feb 11 03:25:45 2026"
      },
      "committer": {
        "name": "Hsin-chen Chuang",
        "email": "chharry@chromium.org",
        "time": "Thu Feb 12 10:46:26 2026"
      },
      "message": "Merge AOSP android16-qpr2-release into main\n\nBUG\u003db:478740843\nTEST\u003dbluetooth_AdapterQuickHealth.AVL.all_floss\nTEST\u003dbluetooth_AdapterQuickHealth.AVL.all_floss.unstable_aflags\n\nCq-Depend: chromium:7570310\nCq-Depend: chromium:7569708\nChange-Id: I5cc92ba66ddb27829c722e67e08ddf4b96e61064\n"
    },
    {
      "commit": "70813c6f5864352463db00cf3aa661b80969f7c9",
      "tree": "e01fbfec4c3b285ef34d5555dc4b11a7427f3a01",
      "parents": [
        "f4f2f473f26aaedb0901475dd62819ba1300d16a"
      ],
      "author": {
        "name": "Rongxuan Liu",
        "email": "rongxuan@google.com",
        "time": "Mon Dec 08 19:39:13 2025"
      },
      "committer": {
        "name": "Rongxuan Liu",
        "email": "rongxuan@google.com",
        "time": "Mon Dec 08 19:39:13 2025"
      },
      "message": "Add new owner to Bluetooth\n\nTest: mmm packages/modules/Bluetooth\nFlag: EXEMPT DOCS_ONLY\nBug: 428057931\nChange-Id: Ic8dd2e2dbf17118d3ea8b3f370c4a8c5514b4216"
    },
    {
      "commit": "f4f2f473f26aaedb0901475dd62819ba1300d16a",
      "tree": "6061a4452ce92fb435e7f8f0c2fe1799f900d866",
      "parents": [
        "ea712cee25c35514ee3b352995e62a1ffb8ff84b",
        "a2711b63147a4b2c2686de16eccff75bbeb78d2a"
      ],
      "author": {
        "name": "Mahammed Hashish Darga",
        "email": "hashish@google.com",
        "time": "Mon Dec 08 17:29:01 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 08 17:29:01 2025"
      },
      "message": "Merge \"Refactor `ControllerImpl`: Remove duplicate field and enhance assertions for debugging.\" into main"
    },
    {
      "commit": "ea712cee25c35514ee3b352995e62a1ffb8ff84b",
      "tree": "eab65700299206ff0bc30f266f8a88be739be0d0",
      "parents": [
        "cec0bf524662394ee8351e967c911fb23a17ea47",
        "8c9387427cd83850579296fc06de87e5729920aa"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Mon Dec 08 12:59:29 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 08 12:59:29 2025"
      },
      "message": "Merge \"Update the version of protobuf in tradefed config\" into main"
    },
    {
      "commit": "cec0bf524662394ee8351e967c911fb23a17ea47",
      "tree": "c94312b7b5e2bb92ebf407a455048755710a8c9c",
      "parents": [
        "5d238bd077d17ff1f53985eef31e8608261665ff",
        "184cd7addb7306f6abbe8152f2c7b008325c0a5d"
      ],
      "author": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Mon Dec 08 09:58:17 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 08 09:58:17 2025"
      },
      "message": "Merge changes I6a6a6964,I6a6a6964 into main\n\n* changes:\n  Delete dead code around keystore factoryReset\n  Delete dead code around native factoryReset\n"
    },
    {
      "commit": "8c9387427cd83850579296fc06de87e5729920aa",
      "tree": "0c91ac1ea47c0b8d9361bc51c2fec296ed49acc6",
      "parents": [
        "6204d1f1afd92abecb9f54b2af04d20389947797"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Mon Dec 08 09:30:03 2025"
      },
      "committer": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Mon Dec 08 09:43:15 2025"
      },
      "message": "Update the version of protobuf in tradefed config\n\nThe major version must match the version used in the tree\nto generate the grpc modules. Ideally the same module\nwould be packaged in the test launcher but that is unfortunately\nnot possible at the moment due to the way PTS tests are written\n\nBug: 465828243\nFlag: EXEMPT TEST_ONLY\nTest: atest pts-bot\nChange-Id: Iaf77499ee88b9381efce0657b2352dd36a572d4e\n"
    },
    {
      "commit": "5d238bd077d17ff1f53985eef31e8608261665ff",
      "tree": "dc338c4b486f9ee44c969fc1db54b438efa00a75",
      "parents": [
        "7743c8aee0edf7bdec55f14af7022e12418516b2",
        "e3bd32f32c7c10582367c457d2e982f55e5710e4"
      ],
      "author": {
        "name": "Archie Pusaka",
        "email": "apusaka@google.com",
        "time": "Mon Dec 08 09:42:07 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 08 09:42:07 2025"
      },
      "message": "Merge \"btif_hh: instantiate incoming_connection_timer lazily\" into main"
    },
    {
      "commit": "7743c8aee0edf7bdec55f14af7022e12418516b2",
      "tree": "f31cc1690766b70861c24027ef70ed6f23798fae",
      "parents": [
        "48e9463fa1897af084870f83500f1d08b4a7d705",
        "bbecc3117ebe25c2ac1322bd398e55a2c9e886d4"
      ],
      "author": {
        "name": "Jakub Rotkiewicz (xWF)",
        "email": "rotkiewicz@google.com",
        "time": "Mon Dec 08 09:29:03 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 08 09:29:03 2025"
      },
      "message": "Merge changes I9181118a,Ie60750e7 into main\n\n* changes:\n  ActiveDeviceManager: remove unused function\n  ActiveDeviceManager: remove redundant setHearingAidActiveDevice function\n"
    },
    {
      "commit": "48e9463fa1897af084870f83500f1d08b4a7d705",
      "tree": "407dce8f7b7c50853f419b0eeb0d686e7380cc25",
      "parents": [
        "890cb0b160b5cc5872f11be28a5acc6d8bc9f669",
        "8ee86e1a3a43d027e9fe7feae8fc5bd2cd5e065b"
      ],
      "author": {
        "name": "Jakub Rotkiewicz (xWF)",
        "email": "rotkiewicz@google.com",
        "time": "Mon Dec 08 09:27:52 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 08 09:27:52 2025"
      },
      "message": "Merge \"ActiveDeviceManager: remove redundant setLeAudioActiveDevice function\" into main"
    },
    {
      "commit": "890cb0b160b5cc5872f11be28a5acc6d8bc9f669",
      "tree": "99235d07b0d5769991ea72531144e6272ed681e2",
      "parents": [
        "c1ffe020eb14baf13ba0c77affd5eeb9f87d55be",
        "ae68af05d5c14d3dc56543afd92374bba2b79b7c"
      ],
      "author": {
        "name": "Jakub Rotkiewicz (xWF)",
        "email": "rotkiewicz@google.com",
        "time": "Mon Dec 08 09:27:34 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 08 09:27:34 2025"
      },
      "message": "Merge \"ActiveDeviceManager: remove redundant setA2dpActiveDevice function\" into main"
    },
    {
      "commit": "c1ffe020eb14baf13ba0c77affd5eeb9f87d55be",
      "tree": "df38aac2084d7d124ef04769041210d3185636df",
      "parents": [
        "f89d1f7cb80bb427477124b9ff5ce2c17afdfa37",
        "3fe30c561dce9ee6537664e88d40ab1ee0e576e5"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Mon Dec 08 09:17:01 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 08 09:17:01 2025"
      },
      "message": "Merge \"interop_config: Pass RawAddress parameters by value\" into main"
    },
    {
      "commit": "f89d1f7cb80bb427477124b9ff5ce2c17afdfa37",
      "tree": "8d4767f18f41561bb8e62857e409938bddb033d2",
      "parents": [
        "e9755a13c581fcefd7a6ecec23275608bb0dfa15",
        "840f6b34128cc7650494d58b0bd895b2a2a872f6"
      ],
      "author": {
        "name": "Archie Pusaka",
        "email": "apusaka@google.com",
        "time": "Mon Dec 08 02:41:31 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 08 02:41:31 2025"
      },
      "message": "Merge \"Add hid_propagate_idle_handshake flag\" into main"
    },
    {
      "commit": "e9755a13c581fcefd7a6ecec23275608bb0dfa15",
      "tree": "e964721460dfcfc6616a720654f0ee4f34f81073",
      "parents": [
        "e23d327d734e8f258cfb5ad942f676fdd2cf6259",
        "abdaf0098ef2dd45d4a0d99a1d1f115e97960287"
      ],
      "author": {
        "name": "Kevin Liu",
        "email": "congxiliu@google.com",
        "time": "Sat Dec 06 20:04:00 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 06 20:04:00 2025"
      },
      "message": "Merge \"Add tests for device-specific notification contentIntent\" into main"
    },
    {
      "commit": "e23d327d734e8f258cfb5ad942f676fdd2cf6259",
      "tree": "8c24038c8284ea5a67264b04c350144e5f41ef55",
      "parents": [
        "4604be38d8f3a8d2a49a2958a65db379fe9564fb",
        "c69a5640b82c769c34096331fa1f611e5e372878"
      ],
      "author": {
        "name": "Kevin Liu",
        "email": "congxiliu@google.com",
        "time": "Sat Dec 06 19:58:56 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 06 19:58:56 2025"
      },
      "message": "Merge \"Update onDelete test to verify wake lock message\" into main"
    },
    {
      "commit": "4604be38d8f3a8d2a49a2958a65db379fe9564fb",
      "tree": "4483c83a9fd46dc5ea81509733cab3ca0e71eb21",
      "parents": [
        "bcc241cc4c1792727bd97651cb07d9bee26d0dcc",
        "8296d55eb0e1ccafe9a36c3ebb19b7afe772e63e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Sat Dec 06 06:17:45 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 06 06:17:45 2025"
      },
      "message": "Merge \"Do not call PrepareToRotateAddress when RPA offloading\" into main"
    },
    {
      "commit": "bcc241cc4c1792727bd97651cb07d9bee26d0dcc",
      "tree": "45164d58459ff185c1138f9cac11e94f18411a60",
      "parents": [
        "981576c626924ac03606068f5c5dca49222d3432",
        "1377be68cb594294872746c86baf4917fe8c65dc"
      ],
      "author": {
        "name": "Rongxuan Liu",
        "email": "rongxuan@google.com",
        "time": "Fri Dec 05 22:16:56 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 22:16:56 2025"
      },
      "message": "Merge \"ADM: suspend fallback mechanism during active device change\" into main"
    },
    {
      "commit": "981576c626924ac03606068f5c5dca49222d3432",
      "tree": "be3716fa1fec5a6223ad6192e39c9df400ee5687",
      "parents": [
        "07d0842f7083d9491929286c2e36fa342e09a3ad",
        "704a62b774552750e7a8b24124a01944e70030d1"
      ],
      "author": {
        "name": "Bhakthavatsala Raghavendra",
        "email": "bhaktha@google.com",
        "time": "Fri Dec 05 22:12:38 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 22:12:38 2025"
      },
      "message": "Merge \"Add flag for address mapping logic in lecoc\" into main"
    },
    {
      "commit": "07d0842f7083d9491929286c2e36fa342e09a3ad",
      "tree": "2895fe55534ef871b9c9fb60b5d3ec4b0104a30b",
      "parents": [
        "968964bcaf58fc66d88662e01da9f44a2282dc5e",
        "e45b0c828a0d1a05aabfa4f67056e638e07a2f03"
      ],
      "author": {
        "name": "Ang Li",
        "email": "ihcinihsdk@google.com",
        "time": "Fri Dec 05 22:08:49 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 22:08:49 2025"
      },
      "message": "Merge \"Add test for head tracker authorization on policy change\" into main"
    },
    {
      "commit": "968964bcaf58fc66d88662e01da9f44a2282dc5e",
      "tree": "8c54692d9fa2e2d20b4dbf96fbbb8d97069a70ae",
      "parents": [
        "15021b8e4714aa82a6feda4761b609fec5e14f83",
        "aeeb46ebad0aa135f46db6e9b70d70df8c8c9c28"
      ],
      "author": {
        "name": "Jayden Kim",
        "email": "jaydenk@google.com",
        "time": "Fri Dec 05 21:09:45 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 21:09:45 2025"
      },
      "message": "Merge \"stack.cc: keep low power processor modules not pointers to modules\" into main"
    },
    {
      "commit": "15021b8e4714aa82a6feda4761b609fec5e14f83",
      "tree": "57efd0e8a00b9889a82b5e4f49f84fec59beac3c",
      "parents": [
        "1b5eba071218492af0a398da7bb6641ac610457c",
        "cfb6f397d1495f707efcb654486d5e0bf6a9d091"
      ],
      "author": {
        "name": "Ang Li",
        "email": "ihcinihsdk@google.com",
        "time": "Fri Dec 05 21:05:01 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 21:05:01 2025"
      },
      "message": "Merge \"Add test for unsupported audio config in A2dpTransport\" into main"
    },
    {
      "commit": "1b5eba071218492af0a398da7bb6641ac610457c",
      "tree": "d0282cc8c1b79c0b9cdf5b5aac567757d95716f0",
      "parents": [
        "8e47d3d764c430169134badbcb415827457d3341"
      ],
      "author": {
        "name": "AI test gen",
        "email": "mdb.ai-test-generation-team@google.com",
        "time": "Mon Nov 24 14:05:41 2025"
      },
      "committer": {
        "name": "AI test gen",
        "email": "mdb.ai-test-generation-team@google.com",
        "time": "Fri Dec 05 21:02:40 2025"
      },
      "message": "Add tests for unexpected event handling in Connecting state\n\nThis change adds unit tests to the HeadsetStateMachine to improve coverage for compatibility handlers. Some remote devices may send AT commands, such as call control or volume changes, before the Service Level Connection (SLC) is fully established.\n\nThe new tests verify that the state machine correctly handles these unexpected events while in the Connecting state, ensuring that call control commands are processed and volume changes are ignored. This confirms that these compatibility paths function as expected.\n\n\n\nThis CL is generated by AI, please check the comments for more details.\n\nThe purpose of this change is to increase test coverage for the code affected by the source change that you recently reviewed or merged: I4d27d333b3f7d4b8f0ae551d77039a884b492ecc\n\nTest: abtd test passed go/forrest-run/L06100030043250697\nBug: 431235865 (Umbrella)\nFlag: TEST_ONLY\nOFF_PEAK_PRESUBMIT: true\n\n\n\nChange-Id: I92ef6ecc886638b980044a2b1b714571ef5c9a05\n"
    },
    {
      "commit": "8e47d3d764c430169134badbcb415827457d3341",
      "tree": "1a0fb5dd5400ef58bb7dae0c357dd890e01b82f6",
      "parents": [
        "aee97c464dcd90bdad4a281a9d15dd9d21519405",
        "3543d2bd00d31124652a3a771d46e819329e251f"
      ],
      "author": {
        "name": "Ang Li",
        "email": "ihcinihsdk@google.com",
        "time": "Fri Dec 05 21:01:10 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 21:01:10 2025"
      },
      "message": "Merge \"Add test for bind timeout recovery backoff\" into main"
    },
    {
      "commit": "aee97c464dcd90bdad4a281a9d15dd9d21519405",
      "tree": "d1fa59dc8c38f530eb648c4987cbaf13e8738cf7",
      "parents": [
        "496fa4603acc395a3f8d43e5fa8124a7f48b6eec",
        "20987277161cdb7e17b51f697aa8c0e9de631796"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 20:33:15 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 20:33:15 2025"
      },
      "message": "Merge \"Properly name death tests\" into main"
    },
    {
      "commit": "496fa4603acc395a3f8d43e5fa8124a7f48b6eec",
      "tree": "826f7643cec2c78fba4c4faa3f9636f7fb25b8df",
      "parents": [
        "6cea75f42dc6f56d6f0914eb2ce31f55f862b28d",
        "27cfd7f621fe11323e8e383cb49474cedde8902f"
      ],
      "author": {
        "name": "Ang Li",
        "email": "ihcinihsdk@google.com",
        "time": "Fri Dec 05 20:09:13 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 20:09:13 2025"
      },
      "message": "Merge \"Add tests for registerHciVendorSpecificCallback validation\" into main"
    },
    {
      "commit": "6cea75f42dc6f56d6f0914eb2ce31f55f862b28d",
      "tree": "fe1d62b4c42cac8cbd9f3c2325e7d589257bafbb",
      "parents": [
        "8b6d58295bc0ac5f0c2e3aca1ca60cbc6e5bf3e8",
        "b759cff8cbe08e08d7a48bbfbfbab28cdd84e277"
      ],
      "author": {
        "name": "Sarvesh Kalwit",
        "email": "sarveshkalwit@google.com",
        "time": "Fri Dec 05 19:27:01 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 19:27:01 2025"
      },
      "message": "Merge changes I6c5fc0ac,I3ebd61ef into main\n\n* changes:\n  Implement the Rust AVRCP FFI layer\n  Implement the Rust SDP FFI layer\n"
    },
    {
      "commit": "aeeb46ebad0aa135f46db6e9b70d70df8c8c9c28",
      "tree": "baaff3900d31944e6b6c26fdf644470e642fed11",
      "parents": [
        "70415c05a23d317e500acd1cd1ebe075515ed121"
      ],
      "author": {
        "name": "Jayden Kim",
        "email": "jaydenk@google.com",
        "time": "Fri Dec 05 19:08:39 2025"
      },
      "committer": {
        "name": "Jayden Kim",
        "email": "jaydenk@google.com",
        "time": "Fri Dec 05 19:14:08 2025"
      },
      "message": "stack.cc: keep low power processor modules not pointers to modules\n\nFlag: EXEMPT PURE_REFACTOR\nBug: 463068880\nTest: m com.google.android.bt\nChange-Id: I4c387e825d3ec01d6aab4309cdbf6f732db1429d\n"
    },
    {
      "commit": "3543d2bd00d31124652a3a771d46e819329e251f",
      "tree": "214aab257a5c7cfb0257b725707ccb738ae2f097",
      "parents": [
        "8b6d58295bc0ac5f0c2e3aca1ca60cbc6e5bf3e8"
      ],
      "author": {
        "name": "AI test gen",
        "email": "mdb.ai-test-generation-team@google.com",
        "time": "Mon Nov 24 13:13:20 2025"
      },
      "committer": {
        "name": "Ang Li",
        "email": "ihcinihsdk@google.com",
        "time": "Fri Dec 05 18:58:35 2025"
      },
      "message": "Add test for bind timeout recovery backoff\n\nAdd a test to verify the recovery behavior following a Bluetooth service bind timeout.\n\nThis test ensures that the backoff delay for restarting the service after a bind timeout is significantly longer than the delay for a standard service crash. This longer delay helps prevent rapid restart loops in cases where the binding failure is persistent.\n\nThis CL is generated by AI, please check the comments for more details.\n\nThe purpose of this change is to increase test coverage for the code affected by the source change that you recently reviewed or merged: I6a6a69640fe4fa6031d30621a3b9cf5d33e3869e\n\nTest: abtd test passed go/forrest-run/L48800030043204554\nBug: 431235865 (Umbrella)\nFlag: TEST_ONLY\nOFF_PEAK_PRESUBMIT: true\n\nChange-Id: I0be3e8c19db3f1130dbbc408230cebc1a77ed407\n"
    },
    {
      "commit": "184cd7addb7306f6abbe8152f2c7b008325c0a5d",
      "tree": "8c7e12eb547668132c6a29bcfdb3d7df51f0328e",
      "parents": [
        "40f03315370e702ff7738f79147bac2672235977"
      ],
      "author": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Fri Dec 05 18:19:40 2025"
      },
      "committer": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Fri Dec 05 18:50:46 2025"
      },
      "message": "Delete dead code around keystore factoryReset\n\nThe factoryReset operation is done in java in AdapterService.java\nexclusively and the keystore code path is dead code\n\nBug: 465334745\nTest: atest BluetoothJavaTests\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: I6a6a6964876cc4b4278e67de85806666de6060f3\n"
    },
    {
      "commit": "40f03315370e702ff7738f79147bac2672235977",
      "tree": "d1a88ea88da6024f80447f45cf5c480a3f0d4d45",
      "parents": [
        "141e796d2f55cf3a5f5903663b5a9fb6b6e6e963"
      ],
      "author": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Fri Dec 05 18:12:17 2025"
      },
      "committer": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Fri Dec 05 18:50:46 2025"
      },
      "message": "Delete dead code around native factoryReset\n\nThe factoryReset operation is done in java in AdapterService.java\nexclusively and the native code of it is never called (and not needed\nanymore)\n\nBug: 465334745\nTest: mmm packages/modules/Bluetooth\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: I6a6a69640b89a11becab02657bfef007ca7ec497\n"
    },
    {
      "commit": "1377be68cb594294872746c86baf4917fe8c65dc",
      "tree": "581a73fe2d8aec351f5f2975337afb3c76f6db2e",
      "parents": [
        "8b6d58295bc0ac5f0c2e3aca1ca60cbc6e5bf3e8"
      ],
      "author": {
        "name": "Krzysztof Kopyscinski",
        "email": "kopyscinski@google.com",
        "time": "Tue Sep 23 11:39:55 2025"
      },
      "committer": {
        "name": "Krzysztof Kopyscinski (xWF)",
        "email": "kopyscinski@google.com",
        "time": "Fri Dec 05 18:42:01 2025"
      },
      "message": "ADM: suspend fallback mechanism during active device change\n\nThis patch fixes behavior with multiple (3 and more) connected devices:\n- devices A, B and C are connected, device A is active, C is a fallback\n  device\n- device B is being set as active\n- device A disconnects\n- device B becomes active\n- device C becomes active, device B becomes inactive\nAfter this patch, device C won\u0027t become active.\n\nBug: 436138071\nBug: 457352062\nBug: 446848896\nTest: atest ActiveDeviceManagerTest\nFlag: com.android.bluetooth.flags.adm_suspend_fallback_during_change\nChange-Id: Ia73e4f73c19dc448ce50e593f66c7b83b7156b5c\n"
    },
    {
      "commit": "8b6d58295bc0ac5f0c2e3aca1ca60cbc6e5bf3e8",
      "tree": "5a5f6edb7c2a5dcc6d3e7ea858772afe62055584",
      "parents": [
        "2f6a61501d44630a36a573df1a9fb233f1e595c7",
        "4c57ab08d72097e4759442a5c60ae37e4734f019"
      ],
      "author": {
        "name": "Srini S",
        "email": "ssrinivaz@google.com",
        "time": "Fri Dec 05 17:59:46 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 17:59:46 2025"
      },
      "message": "Merge \"Update the GVAS Service UUID for Voice Assistant Profile\" into main"
    },
    {
      "commit": "2f6a61501d44630a36a573df1a9fb233f1e595c7",
      "tree": "937543747fb38a271ee3304937c0205a47365fd2",
      "parents": [
        "3187ab5ebad5ae5f981d8519b5fa9b69f44e63d4",
        "d0f277d4d4ca541c8a1bcb812155da00d1da1e92"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 17:29:01 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 17:29:01 2025"
      },
      "message": "Merge \"Revert \"Remove venv usage in virtual Avatar and BBT\"\" into main"
    },
    {
      "commit": "3187ab5ebad5ae5f981d8519b5fa9b69f44e63d4",
      "tree": "c71983605a5bf87a188e0c318999c2bf37ec1d7e",
      "parents": [
        "1b029fef68a2f8c0b6074fa1902d5a7e40735622",
        "5798de4effe2f726b9406580312ae3163b2c1743"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 17:09:49 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 17:09:49 2025"
      },
      "message": "Merge changes Iaaa5403e,Ic60b2f4e,Ifb25bbcd into main\n\n* changes:\n  Move `hasDisavowedLocationForScan` test to `UtilTest.kt`\n  Migrate `hasDisavowedLocationForScan` to Util.kt\n  Add unit test for Utils.hasDisavowedLocationForScan\n"
    },
    {
      "commit": "1b029fef68a2f8c0b6074fa1902d5a7e40735622",
      "tree": "cb58fc1302e0e43b029bd7a0919ce4309a01947e",
      "parents": [
        "7cd4d10f77c4aece34385a83ea4d5d667328c46a",
        "0ef3d216809ec807426274b842abd9c8cad51f1d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 16:59:41 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 16:59:41 2025"
      },
      "message": "Merge \"flags: Add support_native_pa_callback\" into main"
    },
    {
      "commit": "7cd4d10f77c4aece34385a83ea4d5d667328c46a",
      "tree": "e024fe9d86d71fbb6ae1f8d61f6cf0d3d94f8c42",
      "parents": [
        "41809157a7d63c0827927fbbee9a21318dd495e8",
        "dd3e7de8f6753d33e317a90c441dfbf3b0de18df"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 16:23:57 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 16:23:57 2025"
      },
      "message": "Merge changes Ia55090be,I86caeed7 into main\n\n* changes:\n  Convert DistanceMeasurementManagerTest to Kotlin\n  Rename {DistanceMeasurementManagerTest.java \u003d\u003e ...ManagerTest.kt}\n"
    },
    {
      "commit": "41809157a7d63c0827927fbbee9a21318dd495e8",
      "tree": "a2a2658868c900d48552594eb322932eb41c738c",
      "parents": [
        "0450afb2c5045917f18c786132adae768dbfa625",
        "5abbdf069f3756c79a823ba04a9c9401215a8857"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Fri Dec 05 16:23:49 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 16:23:49 2025"
      },
      "message": "Merge \"jni: Implement helper addressToJString\" into main"
    },
    {
      "commit": "3fe30c561dce9ee6537664e88d40ab1ee0e576e5",
      "tree": "6ca34630b00899f63ed07da19b46c0bf76be1af9",
      "parents": [
        "5abbdf069f3756c79a823ba04a9c9401215a8857"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Thu Nov 27 12:21:53 2025"
      },
      "committer": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Fri Dec 05 16:13:50 2025"
      },
      "message": "interop_config: Pass RawAddress parameters by value\n\nBug: 424272093\nTest: m com.android.bt\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: I6ad1f1feb871460df34136b2d503c98160578978\n"
    },
    {
      "commit": "20987277161cdb7e17b51f697aa8c0e9de631796",
      "tree": "2cae6786f4488ad4262126911453b0de558fd3bc",
      "parents": [
        "141e796d2f55cf3a5f5903663b5a9fb6b6e6e963"
      ],
      "author": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Tue Nov 11 00:42:19 2025"
      },
      "committer": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Fri Dec 05 16:12:53 2025"
      },
      "message": "Properly name death tests\n\nSee go/gunitadvanced#death-test-naming\n\nTest: atest bluetooth_vc_test\nTest: atest bluetooth_has_test\nFlag: EXEMPT TEST_ONLY\nBug: 458082753\nChange-Id: Ida986823d5d4f18210e96afc6e3b53fcab653a79\n"
    },
    {
      "commit": "5abbdf069f3756c79a823ba04a9c9401215a8857",
      "tree": "8a7f41edb0354f3ac83eb6b059a6758f13a0006d",
      "parents": [
        "6204d1f1afd92abecb9f54b2af04d20389947797"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Thu Nov 27 09:25:47 2025"
      },
      "committer": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Fri Dec 05 16:11:57 2025"
      },
      "message": "jni: Implement helper addressToJString\n\nConverts a RawAddress value to a Java jstring scoped\nlocal reference.\n\nBug: 424272093\nTest: m com.android.bt\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: I5069c80ad38ce7e3ad508254525ae5ebe81e8a93\n"
    },
    {
      "commit": "0450afb2c5045917f18c786132adae768dbfa625",
      "tree": "c9f93beaa61065c02683bf94f3e278a44265eb73",
      "parents": [
        "6204d1f1afd92abecb9f54b2af04d20389947797",
        "384d27245f5ea568713b63351c465b614d3dcc4e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 16:11:43 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 16:11:43 2025"
      },
      "message": "Merge \"fix multiple invalid uses of `optional`s\" into main"
    },
    {
      "commit": "d0f277d4d4ca541c8a1bcb812155da00d1da1e92",
      "tree": "7f33efde55dbcac9dc6f417b9a04112a37135fc2",
      "parents": [
        "b6d97d6d5ba156647c6a68cb1a79f03c6311e5f5"
      ],
      "author": {
        "name": "Josh Wu",
        "email": "joshwu@google.com",
        "time": "Fri Dec 05 15:46:05 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 15:46:05 2025"
      },
      "message": "Revert \"Remove venv usage in virtual Avatar and BBT\"\n\nThis reverts commit b6d97d6d5ba156647c6a68cb1a79f03c6311e5f5.\n\nReason for revert: \"Unable to list tests from the python binary\"\n\nBug: 466178850\nChange-Id: I89f4f08e2f1eebd8fb293b929903cbafe0aed214\n"
    },
    {
      "commit": "6204d1f1afd92abecb9f54b2af04d20389947797",
      "tree": "c713496c970d37a5658263536bbdd72c070216e7",
      "parents": [
        "ab368b12ea8a9c596a4b5936dea2acc9547e2691",
        "3ef413f3b810b6bdb6a417ef8941894e0550dbd5"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Fri Dec 05 14:45:52 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 14:45:52 2025"
      },
      "message": "Merge changes Id3bc390d,Ib128e940,I4ec628ca into main\n\n* changes:\n  stack/a2dp: Remove all SourceCodecIndexXXX / SinkCodecIndexXXX functions\n  stack/a2dp: Remove all CodecIndexStrXXX functions\n  stack/a2dp: Remove all CodecNameXXX functions\n"
    },
    {
      "commit": "ab368b12ea8a9c596a4b5936dea2acc9547e2691",
      "tree": "ae83e0685bdc57bd90dce273707f47a0d7489479",
      "parents": [
        "f39580663c99db01885db9cc3112e42c6cbf9bcd",
        "ad99ff462dda6b22cb1815111cde4352b336b5f8"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Fri Dec 05 14:44:47 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 14:44:47 2025"
      },
      "message": "Merge \"btm_sec: Remove unnecessary RawAddress allocation\" into main"
    },
    {
      "commit": "f39580663c99db01885db9cc3112e42c6cbf9bcd",
      "tree": "982271c23b6666ea01bd33dd0e732b86693134c5",
      "parents": [
        "265588c8721590a9ee49c66c64094963c798e674",
        "84c91681163f5457264e182c385633d18ce7e763"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 14:43:27 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 14:43:27 2025"
      },
      "message": "Merge \"A2dp/HeadsetService: skip auto-connect fallback for devices\" into main"
    },
    {
      "commit": "265588c8721590a9ee49c66c64094963c798e674",
      "tree": "2e12f846644af72e783aa3e18a768d52945d22cb",
      "parents": [
        "eb75c5bd180e49e6891a7dea577b9c23e58d2c57",
        "b6d97d6d5ba156647c6a68cb1a79f03c6311e5f5"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 14:40:28 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 14:40:28 2025"
      },
      "message": "Merge \"Remove venv usage in virtual Avatar and BBT\" into main"
    },
    {
      "commit": "eb75c5bd180e49e6891a7dea577b9c23e58d2c57",
      "tree": "73231c3be3f1fca58c144697aa00ebd4e2e1b6aa",
      "parents": [
        "141e796d2f55cf3a5f5903663b5a9fb6b6e6e963",
        "35dba25926319a3e3730be3b798dc2c4aa31d2e5"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 14:28:10 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 14:28:10 2025"
      },
      "message": "Merge \"Update the flag check for the audio manager api\" into main"
    },
    {
      "commit": "141e796d2f55cf3a5f5903663b5a9fb6b6e6e963",
      "tree": "3e436336dfe249f18616f85d4769afe6306d9f3a",
      "parents": [
        "9d60517efea8455dde52d606ddb22de515ea4a22",
        "a637a70713da789eee8d0058a94b0ef8ac7b804a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 14:13:43 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 14:13:43 2025"
      },
      "message": "Merge \"SystemServer: Huge increase of start timeout when booting\" into main"
    },
    {
      "commit": "9d60517efea8455dde52d606ddb22de515ea4a22",
      "tree": "cb8850e94a7473be178bcc967ad8f76a8f97a677",
      "parents": [
        "9b556f432a0267dea3ceae999c340d5cef74cf32",
        "d7c6965e915813d11a68d702ed0837dee3f60216"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 14:08:31 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 14:08:31 2025"
      },
      "message": "Merge \"Promote some crash debug log as error\" into main"
    },
    {
      "commit": "9b556f432a0267dea3ceae999c340d5cef74cf32",
      "tree": "5ef900d6b5fecc2572f61cf1e6e8fdd5e1772e44",
      "parents": [
        "68d6c76ae6cc89cf1517753b67e299eddd28bed4",
        "8abccd44ae3a491307201207d7f3a1eefc9baa30"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 13:25:53 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 13:25:53 2025"
      },
      "message": "Merge \"Allow 3p app to get uuids when turnin on\" into main"
    },
    {
      "commit": "a637a70713da789eee8d0058a94b0ef8ac7b804a",
      "tree": "df7f9f9eff2f3807362e64ce3c5abd6ab9dd81da",
      "parents": [
        "117fb1d127a80c0395e8e16593a6b5dad7ad60b7"
      ],
      "author": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Wed Dec 03 10:51:47 2025"
      },
      "committer": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Fri Dec 05 12:35:20 2025"
      },
      "message": "SystemServer: Huge increase of start timeout when booting\n\nWhen the device boot, the system server has an high cpu usage and can\neasily throttle. Implement a work around in the code to artifically bump\nthe bluetooth start timeout while the BOOT_COMPLETED phase hasn\u0027t been\nreached yet\n\nTest: atest ServiceBluetoothTests\nFlag: EXEMPT BUGFIX\nBug: 463771626\nChange-Id: I6a6a6964584f8bf2b650fbf03b2aae7af08d4b7a\n"
    },
    {
      "commit": "8296d55eb0e1ccafe9a36c3ebb19b7afe772e63e",
      "tree": "04f3febe219f54332411e4d6052bc71323277d7f",
      "parents": [
        "68d6c76ae6cc89cf1517753b67e299eddd28bed4"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Dec 05 09:55:23 2025"
      },
      "committer": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Dec 05 09:55:23 2025"
      },
      "message": "Do not call PrepareToRotateAddress when RPA offloading\n\nBug: 465648419\nBug: 462281358 \nBug: 450826003 \nTest: atest bluetooth_test_gd_unit --host \nFlag: com.android.bluetooth.flags.rotate_address_when_connected\nChange-Id: Ib5a6e19d3ab4a4a31b6307909f04979383ac3e0e"
    },
    {
      "commit": "68d6c76ae6cc89cf1517753b67e299eddd28bed4",
      "tree": "6101090290c932d2e87fe197baaecee8f33a687d",
      "parents": [
        "0ac3ce6f250e8c2ee1e058a8aabaa3c131a56627",
        "3e87922b8d66483a63d943813ab736eabc5f58dd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Dec 05 08:15:26 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 08:15:26 2025"
      },
      "message": "Merge changes from topic \"btm_broadcast_sink_support\" into main\n\n* changes:\n  btm: handle race condition in BIG sync termination\n  btm: Add support for BIG synchronization\n  btm: Improve dump function in btm_iso_impl.h\n  btm: Refactor BIG Source event handling\n  btm: Use empty() for ISO stream map checks\n  hcic: Add support for BIG Create and Terminate Sync\n"
    },
    {
      "commit": "b6d97d6d5ba156647c6a68cb1a79f03c6311e5f5",
      "tree": "129dc308de22d01e0c0627adad3ed69292203b54",
      "parents": [
        "696656118083ae53226cfe593ee2f5d27a91c356"
      ],
      "author": {
        "name": "Josh Wu",
        "email": "joshwu@google.com",
        "time": "Fri Dec 05 06:12:57 2025"
      },
      "committer": {
        "name": "Josh Wu",
        "email": "joshwu@google.com",
        "time": "Fri Dec 05 06:27:52 2025"
      },
      "message": "Remove venv usage in virtual Avatar and BBT\n\nUsing embedded launcher can prevent potential breakage caused by\nTradefed docker.\nCryptography is now optional, and numpy usage is replaced with\nbuiltin math.\n\nFlag: EXEMPT TEST_ONLY\nBug: 466178850\nTest: atest avatar\nChange-Id: I29951bf8084e27af3504e17e0017004b0e3d5ea2\n"
    },
    {
      "commit": "0ac3ce6f250e8c2ee1e058a8aabaa3c131a56627",
      "tree": "fa2951a00728a94bd16a5e8dd411a59fa84854c1",
      "parents": [
        "1a9c56baaa6efe70bdd7f5792776ebf294a9e13c",
        "17d904eb94a65bb372a8e6fdad1de811d6abdad7"
      ],
      "author": {
        "name": "Ang Li",
        "email": "ihcinihsdk@google.com",
        "time": "Fri Dec 05 01:06:18 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 01:06:18 2025"
      },
      "message": "Merge \"Add tests for audio policy metadata in BluetoothStorageManager\" into main"
    },
    {
      "commit": "1a9c56baaa6efe70bdd7f5792776ebf294a9e13c",
      "tree": "a7117a14500d0019e995859c65c04935f45e871c",
      "parents": [
        "0ec5b105216737fdaf84bd5c380720f9123bc706",
        "5b5f751e976dbd405c7a9b6fff370317ebd30518"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu Dec 04 23:13:02 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 04 23:13:02 2025"
      },
      "message": "Merge \"Remove callback to AHAL and fix logic error with reporting the sco connection failure\" into main"
    },
    {
      "commit": "b759cff8cbe08e08d7a48bbfbfbab28cdd84e277",
      "tree": "a5b10d31e2491969543a695a8f08657d29db9a1b",
      "parents": [
        "662787f938c363bb28fcc04a9c6517c1d3508624"
      ],
      "author": {
        "name": "Sarvesh Kalwit",
        "email": "sarveshkalwit@google.com",
        "time": "Thu Dec 04 01:05:27 2025"
      },
      "committer": {
        "name": "Sarvesh Kalwit",
        "email": "sarveshkalwit@google.com",
        "time": "Thu Dec 04 22:42:45 2025"
      },
      "message": "Implement the Rust AVRCP FFI layer\n\nBug: 447518723\nTest: mmma packages/modules/Bluetooth\nTest: cros_sdk emerge-$BOARD floss-upstream\nFlag: NONE FLOSS\nChange-Id: I6c5fc0ac9e7e166464446d84c49549521cfe5dfb\n"
    },
    {
      "commit": "662787f938c363bb28fcc04a9c6517c1d3508624",
      "tree": "24e0d07626db6caeba156793dd5ef813cb6ff806",
      "parents": [
        "0ec5b105216737fdaf84bd5c380720f9123bc706"
      ],
      "author": {
        "name": "Sarvesh Kalwit",
        "email": "sarveshkalwit@google.com",
        "time": "Wed Dec 03 01:43:31 2025"
      },
      "committer": {
        "name": "Sarvesh Kalwit",
        "email": "sarveshkalwit@google.com",
        "time": "Thu Dec 04 22:42:37 2025"
      },
      "message": "Implement the Rust SDP FFI layer\n\nBug: 447518723\nTest: mmma packages/modules/Bluetooth\nTest: cros_sdk emerge-$BOARD floss-upstream\nFlag: NONE FLOSS\nChange-Id: I3ebd61efbf320174ad4d19b27d3e0b0b5f4f1064\n"
    },
    {
      "commit": "0ec5b105216737fdaf84bd5c380720f9123bc706",
      "tree": "8e3445f786f2b7ec7f44c204fc723e08ed9b3f4a",
      "parents": [
        "90f13828a858e2b969871a6bf9fefcfaf6198721",
        "872bc47c1499dd108a055d8f56a299f597cbdd4c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu Dec 04 20:24:19 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 04 20:24:19 2025"
      },
      "message": "Merge \"Add support for Bluetooth Audio HAL AIDL V5 and V6\" into main"
    },
    {
      "commit": "384d27245f5ea568713b63351c465b614d3dcc4e",
      "tree": "53ea215fab51eaebf750970a4ada37cd9034e83e",
      "parents": [
        "039dd08f679ff6c32ad60c54fcd1421118c90525"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Thu Dec 04 19:36:10 2025"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Thu Dec 04 20:01:41 2025"
      },
      "message": "fix multiple invalid uses of `optional`s\n\nIt\u0027s undefined behavior to access an empty optional; libcxx hardening\nturns this into a crash. This CL fixes code to not access empty\noptionals.\n\nBug: 465498284\nTest: m bluetooth-test-audio-hal-aidl-leaudio-utils \u0026\u0026 ran them\nFlag: EXEMPT BUGFIX\nChange-Id: Ife027b27b97a097b45c279c94bdd83d126a85ca2\n"
    },
    {
      "commit": "17d904eb94a65bb372a8e6fdad1de811d6abdad7",
      "tree": "d42c5f98c34c4fe6ad405475de6bbe2a59d7770c",
      "parents": [
        "90f13828a858e2b969871a6bf9fefcfaf6198721"
      ],
      "author": {
        "name": "AI test gen",
        "email": "mdb.ai-test-generation-team@google.com",
        "time": "Sat Nov 08 20:57:20 2025"
      },
      "committer": {
        "name": "Ang Li",
        "email": "ihcinihsdk@google.com",
        "time": "Thu Dec 04 18:05:58 2025"
      },
      "message": "Add tests for audio policy metadata in BluetoothStorageManager\n\nAdd unit tests for the audio policy metadata handling in BluetoothStorageManager. These tests validate the primary functionality of setting and retrieving a custom audio policy for a device.\n\nAdditionally, the tests cover edge cases to ensure the system behaves gracefully, such as returning a default policy when a device is not found in storage or when it lacks specific HFP settings. This improves test coverage and robustness for audio policy management.\n\nThis CL is generated by AI, please check the comments for more details.\n\nTest: ATP tests passed http://go/forrest-run/L71200030036597608\nTest: atest BluetoothJavaUnitTests\nBug: 431235865 (Umbrella)\nFlag: TEST_ONLY\n\nChange-Id: I27c63470a1e24deb0ee53372d6956160c974faf5\n"
    },
    {
      "commit": "d7c6965e915813d11a68d702ed0837dee3f60216",
      "tree": "60032036c9d8a4dff609aaff3e4794f9a592642c",
      "parents": [
        "117fb1d127a80c0395e8e16593a6b5dad7ad60b7"
      ],
      "author": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Thu Nov 13 21:46:01 2025"
      },
      "committer": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Thu Dec 04 16:36:19 2025"
      },
      "message": "Promote some crash debug log as error\n\nBug: 311772251\nFlag: EXEMPT PURE_REFACTOR\nTest: m .\nChange-Id: I0fc4ce50e562b2bb091079d3ffcdb60f864392a5\n"
    },
    {
      "commit": "bbecc3117ebe25c2ac1322bd398e55a2c9e886d4",
      "tree": "55daa65ed98974843bee19b2a24f1c888097477b",
      "parents": [
        "1d63fdb01e4a7b63b930133e23b30ec27f0a0c63"
      ],
      "author": {
        "name": "Jakub Rotkiewicz",
        "email": "rotkiewicz@google.com",
        "time": "Tue Dec 02 13:38:45 2025"
      },
      "committer": {
        "name": "Jakub Rotkiewicz",
        "email": "rotkiewicz@google.com",
        "time": "Thu Dec 04 15:28:27 2025"
      },
      "message": "ActiveDeviceManager: remove unused function\n\nBug: 329809288\nFlag: EXEMPT PURE_REFACTOR\nTest: atest ActiveDeviceManagerTest\nChange-Id: I9181118a8fba5e4445695ffe7918ebf7a234413c\n"
    },
    {
      "commit": "8ee86e1a3a43d027e9fe7feae8fc5bd2cd5e065b",
      "tree": "d69e6f8b0935c753355fc461a06f2c516895af62",
      "parents": [
        "ae68af05d5c14d3dc56543afd92374bba2b79b7c"
      ],
      "author": {
        "name": "Jakub Rotkiewicz",
        "email": "rotkiewicz@google.com",
        "time": "Wed Dec 03 08:28:22 2025"
      },
      "committer": {
        "name": "Jakub Rotkiewicz",
        "email": "rotkiewicz@google.com",
        "time": "Thu Dec 04 15:28:26 2025"
      },
      "message": "ActiveDeviceManager: remove redundant setLeAudioActiveDevice function\n\nBug: 329809288\nFlag: EXEMPT PURE_REFACTOR\nTest: atest ActiveDeviceManagerTest\nChange-Id: If3d4ec244e925aa896117d6fa39f95801dc1b79c\n"
    },
    {
      "commit": "1d63fdb01e4a7b63b930133e23b30ec27f0a0c63",
      "tree": "4b78beccc0f8390050483168ce6a92023d22c593",
      "parents": [
        "8ee86e1a3a43d027e9fe7feae8fc5bd2cd5e065b"
      ],
      "author": {
        "name": "Jakub Rotkiewicz",
        "email": "rotkiewicz@google.com",
        "time": "Wed Dec 03 09:14:28 2025"
      },
      "committer": {
        "name": "Jakub Rotkiewicz",
        "email": "rotkiewicz@google.com",
        "time": "Thu Dec 04 15:28:26 2025"
      },
      "message": "ActiveDeviceManager: remove redundant setHearingAidActiveDevice function\n\nBug: 329809288\nFlag: EXEMPT PURE_REFACTOR\nTest: atest ActiveDeviceManagerTest\nChange-Id: Ie60750e7bc05669aa26ec7126784e174cf64cff7\n"
    },
    {
      "commit": "ae68af05d5c14d3dc56543afd92374bba2b79b7c",
      "tree": "559c631af52a1622a4731edb93a36492b6c35842",
      "parents": [
        "b5f082956383aac7ea53ad3af3145c37fbad71a4"
      ],
      "author": {
        "name": "Jakub Rotkiewicz",
        "email": "rotkiewicz@google.com",
        "time": "Tue Dec 02 13:35:22 2025"
      },
      "committer": {
        "name": "Jakub Rotkiewicz",
        "email": "rotkiewicz@google.com",
        "time": "Thu Dec 04 15:28:25 2025"
      },
      "message": "ActiveDeviceManager: remove redundant setA2dpActiveDevice function\n\nBug: 329809288\nFlag: EXEMPT PURE_REFACTOR\nTest: atest ActiveDeviceManagerTest\nChange-Id: I6d28c7ab9d00ece048b4f0d2fae5243224642b8e\n"
    },
    {
      "commit": "90f13828a858e2b969871a6bf9fefcfaf6198721",
      "tree": "39b1cfe90783980ffdfc0717ffdc6d456f3b8ae2",
      "parents": [
        "8bb2e7d2168d48cf0c53ebb25192ca79d785ae75",
        "d2500b2157806f5ffc1ed8edea8d080172e47964"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu Dec 04 13:40:35 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 04 13:40:35 2025"
      },
      "message": "Merge \"Revert \"26Q1|M02 OWNER freeze window\"\" into main"
    },
    {
      "commit": "d2500b2157806f5ffc1ed8edea8d080172e47964",
      "tree": "1e80b72a4c2ee0abffb741410db5e14e9421216e",
      "parents": [
        "c551e53f26e9903eca409fb6ed2942904094603c"
      ],
      "author": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Thu Dec 04 11:14:39 2025"
      },
      "committer": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Thu Dec 04 11:37:26 2025"
      },
      "message": "Revert \"26Q1|M02 OWNER freeze window\"\n\nThis reverts commit 063c5c399b71034cbe6309326db3de3335815331.\n\nReason for revert: Re-open Bluetooth repository for M05 changes\n\nFlag: EXEMPT HOST_MODE\nBug: 464061450\nFix: 464061450\nTest: m .\nBug: 443313840\nChange-Id: I6a47a12ef31b8a926997e1c5277f771910437b32\n"
    },
    {
      "commit": "704a62b774552750e7a8b24124a01944e70030d1",
      "tree": "2280067526b0293dbcdde119eaf83ff8e7c468a7",
      "parents": [
        "8bb2e7d2168d48cf0c53ebb25192ca79d785ae75"
      ],
      "author": {
        "name": "Bhakthavatsala Raghavendra",
        "email": "bhaktha@google.com",
        "time": "Thu Dec 04 00:47:02 2025"
      },
      "committer": {
        "name": "Bhakthavatsala Raghavendra",
        "email": "bhaktha@google.com",
        "time": "Thu Dec 04 01:43:24 2025"
      },
      "message": "Add flag for address mapping logic in lecoc\n\nBug: 465859619\nBug: 315241296\nFlag: com.android.bluetooth.flags.add_address_mapping_for_lecoc\nTest: mmm packages/module/Bluetooth\nChange-Id: I5ab5cfdeff7e792f776060feac2d73adb500e916\n"
    },
    {
      "commit": "3e87922b8d66483a63d943813ab736eabc5f58dd",
      "tree": "13dd1dc28182529190b9e9a455afa64806618706",
      "parents": [
        "b370255ab09779ac242edfd7a8f0d34489814b47"
      ],
      "author": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Wed Oct 22 07:32:22 2025"
      },
      "committer": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Thu Dec 04 00:37:56 2025"
      },
      "message": "btm: handle race condition in BIG sync termination\n\nThis change handles a race condition that occurs when `BigTerminateSync`\nis called while a `BigCreateSync` operation is still pending.\n\nPreviously, if a terminate command was issued before the sync was fully\nestablished, the stack could enter an inconsistent state, potentially\nleaking resources or propagating incorrect event statuses.\n\nThe fix introduces a \"cancel transaction\" mechanism. When this race\ncondition is detected, the transaction waits for both the\n`HCI_BLE_BIG_SYNC_EST_EVT` and the `HCI_BLE_BIG_TERM_SYNC_CMPL_EVT`\nevents from the controller. Once both are received, it resolves the\nstate by:\n1.  Always reporting a successful termination to the upper layers,\n    ensuring a consistent final state.\n2.  Cleaning up the internal group and stream data structures.\n\nBug: 452185775\nBug: 452185663\nTest: atest net_test_btm_iso\nFlag: com.android.bluetooth.flags.btm_broadcast_sink_support\nChange-Id: Icb42389563afb6ac6dede9a58f62434d7a56026f\n"
    },
    {
      "commit": "b370255ab09779ac242edfd7a8f0d34489814b47",
      "tree": "6a9a6f359c492a23b82f00bfb5ce426de1837d65",
      "parents": [
        "8868b8aacd3b61c39627df1da9505bec11c45842"
      ],
      "author": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Thu Oct 16 10:52:43 2025"
      },
      "committer": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Thu Dec 04 00:37:56 2025"
      },
      "message": "btm: Add support for BIG synchronization\n\nThis change introduces the functionality for a device to synchronize to\na BIG.\n\n- Implements the `create_big_sync` and `terminate_big_sync` functions in\n  the ISO manager to allow clients to start and stop synchronization\n  with a BIG.\n- Adds HCI event handlers for `BIG_Sync_Established` and `BIG_Sync_Lost`\n  events to manage the lifecycle of a BIG synchronization.\n- Modifies the ISO data handling path (`handle_iso_data`) to\n  differentiate between CIS and BIS packets, routing BIS data to the\n  appropriate `OnBisEvent` callback.\n\nBug: 452185775\nBug: 452185663\nTest: atest net_test_btm_iso\nTest: verified on broadcast sink/source, and unicast.\nFlag: com.android.bluetooth.flags.btm_broadcast_sink_support\nChange-Id: Ib68f86632a53bb9851b72386e87199678e45d261\n"
    },
    {
      "commit": "8868b8aacd3b61c39627df1da9505bec11c45842",
      "tree": "be0062bf23aa85d9216e0336026cd05c09e807b9",
      "parents": [
        "823dd56c476c6fa9848a8c641b7a458e4bc11b1c"
      ],
      "author": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Mon Nov 03 06:46:33 2025"
      },
      "committer": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Thu Dec 04 00:37:56 2025"
      },
      "message": "btm: Improve dump function in btm_iso_impl.h\n\nThe dump function contained duplicated code for logging CIG, BIG source\ninformation. This made the function verbose and harder to maintain.\n\nThis change refactors the function by extracting the common logic into a\nnew helper function, `dump_iso_group`. The main `dump` function\nis updated to call this helper, resulting in cleaner and more concise\ncode.\n\nAdditionally, missing newline characters in dprintf calls were fixed to\nimprove the readability of the dump output.\n\nBug: 452185663\nTest: mmm packages/modules/Bluetooth\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: Ib52c036d3765431f67b153d10e563f3c5529856c\n"
    },
    {
      "commit": "823dd56c476c6fa9848a8c641b7a458e4bc11b1c",
      "tree": "e33b9a7687d707857c89e0e7d24aee55f4e16772",
      "parents": [
        "9da9c1e026ae317b5d90366afae490b501516e37"
      ],
      "author": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Mon Nov 03 05:16:17 2025"
      },
      "committer": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Thu Dec 04 00:37:26 2025"
      },
      "message": "btm: Refactor BIG Source event handling\n\nThis change refactors the handling of BIG Source events to improve\nclarity and type safety. This is also a preparatory change for a later\nBroadcast Sink implementation.\n\nBug: 452185663\nTest: mmm packages/modules/Bluetooth\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: I3642a10651bf5fe07f1ae86d534d8e91da0942d7\n"
    },
    {
      "commit": "9da9c1e026ae317b5d90366afae490b501516e37",
      "tree": "68504364ff2a28cecf6c048895023eb28834da6c",
      "parents": [
        "74f5723d6c0e770077ba650587fe6d51b0e10da8"
      ],
      "author": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Mon Nov 03 02:31:42 2025"
      },
      "committer": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Thu Dec 04 00:35:46 2025"
      },
      "message": "btm: Use empty() for ISO stream map checks\n\nUsing .empty() is generally more efficient and idiomatic for checking if\na container is empty in C++.\n\nBug: 452185663\nTest: mmm packages/modules/Bluetooth\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: I8eb70cfce907d7423288b7a0fb2f54fb05aa688e\n"
    },
    {
      "commit": "74f5723d6c0e770077ba650587fe6d51b0e10da8",
      "tree": "bef61815c779712a653ec32cd856298d37be4179",
      "parents": [
        "8bb2e7d2168d48cf0c53ebb25192ca79d785ae75"
      ],
      "author": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Thu Oct 16 07:28:51 2025"
      },
      "committer": {
        "name": "shihchienc",
        "email": "shihchienc@google.com",
        "time": "Thu Dec 04 00:35:46 2025"
      },
      "message": "hcic: Add support for BIG Create and Terminate Sync\n\nThis change introduces the HCI commands for BIG_Create_Sync and\nBIG_Terminate_Sync.\n\nIt includes:\n- Implementation of the HCI commands in hciblecmds.cc\n- Header definitions in hcimsgs.h\n- Mock implementations for testing in mock_hcic_layer.cc\n\nBug: 452185775\nBug: 452185663\nTest: mmm packages/modules/Bluetooth\nFlag: com.android.bluetooth.flags.btm_broadcast_sink_support\nChange-Id: I7076c46306f1e28fea649b502cfa81a48780656b\n"
    },
    {
      "commit": "8bb2e7d2168d48cf0c53ebb25192ca79d785ae75",
      "tree": "68a33176c7d2af5290eb5bc9fb757a455b517ee8",
      "parents": [
        "70415c05a23d317e500acd1cd1ebe075515ed121"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Wed Dec 03 13:21:30 2025"
      },
      "committer": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Wed Dec 03 15:15:30 2025"
      },
      "message": "pts: Relax the checks for MMI 2001\n\nInteraction instruction:\n    Please verify the passKey is correct: \u003cpasskey\u003e\n\nPreviously the passKey was hardcoded at 0000 based on the\nvalue that RootCanal was using. Of course the passkey is not\nalways 0 and the MMI must accept any value.\n\nBug: 445820921\nTest: atest pts-bot:SM\nFlag: EXEMPT TEST_ONLY\nChange-Id: Ifbe375039d1c4829e45e1aea438540ddf31c2d97\n"
    },
    {
      "commit": "3ef413f3b810b6bdb6a417ef8941894e0550dbd5",
      "tree": "f4e85d8fc91b5f80b37ecd125b8958f456982ac4",
      "parents": [
        "9de543111042ab03a8cf93ae72eb18b3a3625b2f"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Wed Dec 03 07:48:27 2025"
      },
      "committer": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Wed Dec 03 14:40:49 2025"
      },
      "message": "stack/a2dp: Remove all SourceCodecIndexXXX / SinkCodecIndexXXX functions\n\nInline the codec index values into the functions A2DP_SourceCodecIndex\nand A2DP_SinkCodecIndex instead.\n\nBug: 465696574\nTest: m com.android.bt\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: Id3bc390dc0f0535af121a0207361461712f867ac\n"
    },
    {
      "commit": "9de543111042ab03a8cf93ae72eb18b3a3625b2f",
      "tree": "b4600cb35e5c47fd24d19aeb0a7e508d8a69203a",
      "parents": [
        "6734ded25c0b25848d85ac67014d13fd4833565b"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Wed Dec 03 06:58:18 2025"
      },
      "committer": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Wed Dec 03 14:40:49 2025"
      },
      "message": "stack/a2dp: Remove all CodecIndexStrXXX functions\n\nInline the strings into the function A2DP_CodecIndexStr\ninstead. NB: This method is only used for internal debugging,\nchanging the output slightly is not an issue.\n\nBug: 465696574\nTest: m com.android.bt\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: Ib128e94075bf56dd29da1105e9ef17d472e7100e\n"
    },
    {
      "commit": "6734ded25c0b25848d85ac67014d13fd4833565b",
      "tree": "f75edf9e5e283ac20424ab3a973341c8672ca712",
      "parents": [
        "00bfab06f8dc1a3cfe983ce82a1a47bc2ebc6ba4"
      ],
      "author": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Wed Dec 03 06:40:53 2025"
      },
      "committer": {
        "name": "Henri Chataing",
        "email": "henrichataing@google.com",
        "time": "Wed Dec 03 14:40:49 2025"
      },
      "message": "stack/a2dp: Remove all CodecNameXXX functions\n\nImplement A2DP_CodecName using bluetooth::a2dp::ParseCodecId\ninstead. NB: This method is only used for internal debugging,\nchanging the output slightly is not an issue.\n\nBug: 465696574\nTest: m com.android.bt\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: I4ec628ca1aa777d4434dd8bf9c48e3936cc9a323\n"
    },
    {
      "commit": "872bc47c1499dd108a055d8f56a299f597cbdd4c",
      "tree": "1857d57ce6faa46560f2d0f6a5958c3ed4d250d9",
      "parents": [
        "70415c05a23d317e500acd1cd1ebe075515ed121"
      ],
      "author": {
        "name": "Alice Kuo",
        "email": "aliceypkuo@google.com",
        "time": "Wed Dec 03 11:02:55 2025"
      },
      "committer": {
        "name": "Alice Kuo",
        "email": "aliceypkuo@google.com",
        "time": "Wed Dec 03 11:08:01 2025"
      },
      "message": "Add support for Bluetooth Audio HAL AIDL V5 and V6\n\nIntroduce definitions for Bluetooth Audio HAL AIDL versions 5 and 6.\nAdd `SupportsIsoParameterUpdate` to `LeAudioHalVerifier`, enabled\nonly for AIDL V6 and above. Update unit tests and mocks to cover\nthe new versions and API.\n\nBug: 445860433\nBug: 450606834\nTest: atest bluetooth_audio_hal_version_test\nFlag: com.android.bluetooth.flags.core_ipu_support\nChange-Id: Ide764222f599a3aa463953d1fc8d3ba8b10f51f4\n"
    },
    {
      "commit": "70415c05a23d317e500acd1cd1ebe075515ed121",
      "tree": "dd41d4e5e24ec94b1858ba16bc5041e368d1f55a",
      "parents": [
        "c551e53f26e9903eca409fb6ed2942904094603c",
        "5584fb45d80f3c0696acb7431459d71f37564481"
      ],
      "author": {
        "name": "Himanshu Rohilla",
        "email": "rohillah@google.com",
        "time": "Wed Dec 03 10:33:43 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 03 10:33:43 2025"
      },
      "message": "Merge \"Fix incorrect encr_enable relay between events\" into main"
    },
    {
      "commit": "8abccd44ae3a491307201207d7f3a1eefc9baa30",
      "tree": "49763cd3b7aa411631a9115ce79af2e4b072beee",
      "parents": [
        "5590f5276bfd3744154baf51f8c38be5b118e8a1"
      ],
      "author": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Tue Dec 02 17:24:26 2025"
      },
      "committer": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Wed Dec 03 09:31:18 2025"
      },
      "message": "Allow 3p app to get uuids when turnin on\n\nBefore reaching STATE_ON, the bluetooth need to load the bonded devices\nfrom storage. This will trigger intents to 3p apps that can then ask for\nprecision about thoses devices.\ngetUuidsList is one of those methods that we should open for user during\nturning on.\n\nBug: 460335219\nTest: m .\nFlag: EXEMPT BUGFIX\nChange-Id: I6a6a6964215a02cc0c60ca01dd5da82d766bd8c5\n"
    },
    {
      "commit": "c551e53f26e9903eca409fb6ed2942904094603c",
      "tree": "3f2417acd1c1a13595f2bf041b89a5ee017a48c9",
      "parents": [
        "d6fb165b513358253340c7f59622affe0777d0f7",
        "02602f44f9400442ed899cc1923815e93083a3b2"
      ],
      "author": {
        "name": "Sharjeel Khan",
        "email": "sharjeelkhan@google.com",
        "time": "Wed Dec 03 01:58:59 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 03 01:58:59 2025"
      },
      "message": "Merge \"Revert \"Temporarily turn off CFI for tests\"\" into main"
    },
    {
      "commit": "5b5f751e976dbd405c7a9b6fff370317ebd30518",
      "tree": "ad1f8a097fbf6f2472ebedde7f64dc9c4f3dc944",
      "parents": [
        "c05e6edea6fbf08bbfbaaa09c72cf955e23ddd59"
      ],
      "author": {
        "name": "Aarthi Balachander",
        "email": "aarthibc@google.com",
        "time": "Mon Dec 01 21:04:08 2025"
      },
      "committer": {
        "name": "Aarthi Balachander",
        "email": "aarthibc@google.com",
        "time": "Tue Dec 02 18:20:38 2025"
      },
      "message": "Remove callback to AHAL and fix logic error with reporting the sco connection failure\n\nBug: 454472562\nBug: 265057196\nTest: m com.android.bt\nFlag: android.media.audio.sco_managed_by_audio\nChange-Id: I64a2769426f08a88be963b92f842f9c1e9bc3cb5\n"
    },
    {
      "commit": "c255efa21f24886136ea800957c769d5540ee82e",
      "tree": "98824f97c45c486f90f5b63e4426bc32208469be",
      "parents": [
        "eac9aa11e80deaefbf7b9b45be7252555eaab601",
        "d3a858fb6bb581f21c4834c277ba056edf99b7c0"
      ],
      "author": {
        "name": "Hsin-chen Chuang",
        "email": "chharry@chromium.org",
        "time": "Tue Dec 02 02:46:13 2025"
      },
      "committer": {
        "name": "Hsin-chen Chuang",
        "email": "chharry@chromium.org",
        "time": "Tue Dec 02 02:48:08 2025"
      },
      "message": "Merge AOSP android16-qpr1-release into main\n\nBUG\u003db:453566301\nTEST\u003dbluetooth_AdapterQuickHealth.AVL.all_floss\nTEST\u003dbluetooth_AdapterQuickHealth.AVL.all_floss.unstable_aflags\n\nCq-Depend: chromium:7155650\nCq-Depend: chromium:7156835\nChange-Id: I646f1394f389b39d9a880e3c7f63b0f45f53c46f\n"
    },
    {
      "commit": "d6fb165b513358253340c7f59622affe0777d0f7",
      "tree": "b1fc40cc95d55cb637bf103a14960473675154e4",
      "parents": [
        "c05e6edea6fbf08bbfbaaa09c72cf955e23ddd59",
        "a6d147c94d65a70c1e16718261c1b42c6ac04f4a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue Dec 02 01:30:03 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 02 01:30:03 2025"
      },
      "message": "Merge \"Import translations. DO NOT MERGE ANYWHERE\" into main"
    },
    {
      "commit": "c05e6edea6fbf08bbfbaaa09c72cf955e23ddd59",
      "tree": "2dcc77ae19af2a8d49e66ce6a97cf9a5e82fd962",
      "parents": [
        "b0046fa3538913470938639467f0cfd089ed8eae",
        "1ddf8539febd035c9fce2bd594ee336d96c31fa2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Mon Dec 01 21:20:58 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 01 21:20:58 2025"
      },
      "message": "Merge \"SetName hop on MainThread\" into main"
    },
    {
      "commit": "35dba25926319a3e3730be3b798dc2c4aa31d2e5",
      "tree": "3045689db394fc9eeeac0563123c70da52a9033f",
      "parents": [
        "e4269a492075eba1c5631f32d12b88cf8dbe376c"
      ],
      "author": {
        "name": "Aarthi Balachander",
        "email": "aarthibc@google.com",
        "time": "Mon Dec 01 20:34:11 2025"
      },
      "committer": {
        "name": "Aarthi Balachander",
        "email": "aarthibc@google.com",
        "time": "Mon Dec 01 20:35:40 2025"
      },
      "message": "Update the flag check for the audio manager api\n\nBug: 437953494\nTest: mmm packages/modules/Bluetooth\nFlag: EXEMPT BUGFIX\nChange-Id: I0050d4a5507342562ef76704f0b4ff915c0af050\n"
    },
    {
      "commit": "b0046fa3538913470938639467f0cfd089ed8eae",
      "tree": "78791281562cfe7b4ed79c598b821c544bfbcb12",
      "parents": [
        "e3d17277bc25ced891ee4fcff0763cb8143b7c7d",
        "1dd19d42eb309ac2491a704c677ea81e8c90b531"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Mon Dec 01 20:10:06 2025"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 01 20:10:06 2025"
      },
      "message": "Merge \"floss: HFP: Fix RawAddress pass by value change\" into main"
    },
    {
      "commit": "a2711b63147a4b2c2686de16eccff75bbeb78d2a",
      "tree": "22e00a4e8213b50bb704b3ece6eda0edd442dd3e",
      "parents": [
        "e3d17277bc25ced891ee4fcff0763cb8143b7c7d"
      ],
      "author": {
        "name": "Mahammed Hashish Darga",
        "email": "hashish@google.com",
        "time": "Mon Dec 01 14:45:39 2025"
      },
      "committer": {
        "name": "Mahammed Hashish Darga",
        "email": "hashish@google.com",
        "time": "Mon Dec 01 14:45:39 2025"
      },
      "message": "Refactor `ControllerImpl`: Remove duplicate field and enhance assertions for debugging.\n\nFlag: EXEMPT PURE_REFACTOR\nBug: 456652471\nTest: mmm packages/modules/Bluetooth\nChange-Id: I514807e923aa9bb30c1e02dec89d87e6b9746786"
    },
    {
      "commit": "840f6b34128cc7650494d58b0bd895b2a2a872f6",
      "tree": "8ed5b8bbb6758795d913c253d6ee2a37d915348a",
      "parents": [
        "e3d17277bc25ced891ee4fcff0763cb8143b7c7d"
      ],
      "author": {
        "name": "Archie Pusaka",
        "email": "apusaka@google.com",
        "time": "Mon Dec 01 05:05:29 2025"
      },
      "committer": {
        "name": "Archie Pusaka",
        "email": "apusaka@google.com",
        "time": "Mon Dec 01 05:07:44 2025"
      },
      "message": "Add hid_propagate_idle_handshake flag\n\nTo be used with ag/37246184\n\nBug: 464973851\nBug: 315241296\nTest: m -j\nFlag: com.android.bluetooth.flags.hid_propagate_idle_handshake\nChange-Id: I995a8852271abfe050ee390d2128839c70dffbaf\n"
    },
    {
      "commit": "5798de4effe2f726b9406580312ae3163b2c1743",
      "tree": "84b0ab69ea6974543b49cac3c753cd846b3a651a",
      "parents": [
        "cc504139c4bd283de88983428707c0bf7eb625f4"
      ],
      "author": {
        "name": "Ömer Faruk Yılmaz",
        "email": "ofy@google.com",
        "time": "Mon Dec 01 02:12:52 2025"
      },
      "committer": {
        "name": "Ömer Faruk Yılmaz",
        "email": "ofy@google.com",
        "time": "Mon Dec 01 02:22:30 2025"
      },
      "message": "Move `hasDisavowedLocationForScan` test to `UtilTest.kt`\n\nBug: 455679694\nTest: atest UtilTest\nTest: atest UtilsTest\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: Iaaa5403e82b3a95e3bbc527284711b600a92fdaf\n"
    },
    {
      "commit": "cc504139c4bd283de88983428707c0bf7eb625f4",
      "tree": "775836f312a04dbef6b4b0de8c2df5b4ba43afa5",
      "parents": [
        "808fbab131714573a0c67efc385bdf00666219e4"
      ],
      "author": {
        "name": "Ömer Faruk Yılmaz",
        "email": "ofy@google.com",
        "time": "Mon Dec 01 02:08:30 2025"
      },
      "committer": {
        "name": "Ömer Faruk Yılmaz",
        "email": "ofy@google.com",
        "time": "Mon Dec 01 02:22:15 2025"
      },
      "message": "Migrate `hasDisavowedLocationForScan` to Util.kt\n\nIn preperation to work on b/441022030.\n\nBug: 455679694\nTest: atest UtilsTest\nFlag: EXEMPT PURE_REFACTOR\nChange-Id: Ic60b2f4e77321ee7c2240fd9b29df21bed617c7a\n"
    },
    {
      "commit": "808fbab131714573a0c67efc385bdf00666219e4",
      "tree": "090340007fc90c64a65f21b007ed2bf22f79f7d8",
      "parents": [
        "e3d17277bc25ced891ee4fcff0763cb8143b7c7d"
      ],
      "author": {
        "name": "Ömer Faruk Yılmaz",
        "email": "ofy@google.com",
        "time": "Mon Dec 01 01:53:08 2025"
      },
      "committer": {
        "name": "Ömer Faruk Yılmaz",
        "email": "ofy@google.com",
        "time": "Mon Dec 01 02:14:31 2025"
      },
      "message": "Add unit test for Utils.hasDisavowedLocationForScan\n\nBug: 404652736\nTest: atest UtilsTest\nFlag: EXEMPT TEST_ONLY\nChange-Id: Ifb25bbcd7a4b5d4dafc6c98db8148ba3543e308d\n"
    },
    {
      "commit": "a6d147c94d65a70c1e16718261c1b42c6ac04f4a",
      "tree": "e93a96cd673a882a824e37cc3da1459040d79afb",
      "parents": [
        "e3d17277bc25ced891ee4fcff0763cb8143b7c7d"
      ],
      "author": {
        "name": "Bill Yi",
        "email": "byi@google.com",
        "time": "Mon Dec 01 01:39:35 2025"
      },
      "committer": {
        "name": "Bill Yi",
        "email": "byi@google.com",
        "time": "Mon Dec 01 01:39:35 2025"
      },
      "message": "Import translations. DO NOT MERGE ANYWHERE\n\nAuto-generated-cl: translation import\nOFF_PEAK_PRESUBMIT: true\nLow-Coverage-Reason: LSC\n\nChange-Id: Iedf7752fdb61e7b46d3f73c3f098f0f87c6100aa\n"
    },
    {
      "commit": "dd3e7de8f6753d33e317a90c441dfbf3b0de18df",
      "tree": "78b1ffce14f5ec7b7ab7d3540475d7fa3fc543b4",
      "parents": [
        "ced6190996aec1b6b7a1c5d2adfd1f77c874bb17"
      ],
      "author": {
        "name": "Ömer Faruk Yılmaz",
        "email": "ofy@google.com",
        "time": "Sun Nov 30 02:47:08 2025"
      },
      "committer": {
        "name": "Ömer Faruk Yılmaz",
        "email": "ofy@google.com",
        "time": "Sun Nov 30 03:14:33 2025"
      },
      "message": "Convert DistanceMeasurementManagerTest to Kotlin\n\nBug: 404652736\nTest: atest DistanceMeasurementManagerTest\nFlag: EXEMPT TEST_ONLY\nChange-Id: Ia55090be060716345441f0f1ad4d9f6b887f6db6\n"
    },
    {
      "commit": "ced6190996aec1b6b7a1c5d2adfd1f77c874bb17",
      "tree": "ddb47ef2c5618a0c81a53f8f0954d21285086589",
      "parents": [
        "e3d17277bc25ced891ee4fcff0763cb8143b7c7d"
      ],
      "author": {
        "name": "Ömer Faruk Yılmaz",
        "email": "ofy@google.com",
        "time": "Sun Nov 30 02:06:26 2025"
      },
      "committer": {
        "name": "Ömer Faruk Yılmaz",
        "email": "ofy@google.com",
        "time": "Sun Nov 30 02:06:38 2025"
      },
      "message": "Rename {DistanceMeasurementManagerTest.java \u003d\u003e ...ManagerTest.kt}\n\nThis is a non-compiling commit to preserve git history. The real\nchanges are done in the next commit.\n\nBug: 404652736\nTest: atest DistanceMeasurementManagerTest\nFlag: EXEMPT TEST_ONLY\nChange-Id: I86caeed708edb562009398ac1ac2fdd15c611bab\n"
    },
    {
      "commit": "5584fb45d80f3c0696acb7431459d71f37564481",
      "tree": "6fc639d65fc0d3b326c4f95faad4cdbc4f2e055a",
      "parents": [
        "e3d17277bc25ced891ee4fcff0763cb8143b7c7d"
      ],
      "author": {
        "name": "Himanshu Rohilla",
        "email": "rohillah@google.com",
        "time": "Fri Nov 28 11:43:24 2025"
      },
      "committer": {
        "name": "Himanshu Rohilla",
        "email": "rohillah@google.com",
        "time": "Fri Nov 28 11:43:24 2025"
      },
      "message": "Fix incorrect encr_enable relay between events\n\nWhile routing the encryption_change callback from encryption_change_evt to read_key_size, relay the encr_enable parameter to deduce the correct encryption_algorithm.\n\nBug: 463503960\nBug: 462740229\nTest: m com.google.android.bt\nFlag: EXEMPT BUGFIX\nChange-Id: I5efefc02fae4bf0fc1ee4cea4e061e23095db6e5"
    },
    {
      "commit": "e3bd32f32c7c10582367c457d2e982f55e5710e4",
      "tree": "65395e3596e9555e96b0b10a3d8448babdbc696f",
      "parents": [
        "4307a4102e8c33d1c1583e2eeeb80462574863f0"
      ],
      "author": {
        "name": "Archie Pusaka",
        "email": "apusaka@google.com",
        "time": "Wed Oct 15 06:06:25 2025"
      },
      "committer": {
        "name": "Archie Pusaka",
        "email": "apusaka@google.com",
        "time": "Fri Nov 28 07:42:11 2025"
      },
      "message": "btif_hh: instantiate incoming_connection_timer lazily\n\nincoming_connection_timer is initiated on init, and is freed on\ncleanup but only if the status is not already DISABLED. However, since\ninit doesn\u0027t immediately assign the status to non-DISABLED, it is\npossible for incoming_connection_timer to be initiated but not freed,\nleading to memory leak.\n\nThis CL instantiate incoming_connection_timer only when it\u0027s needed,\nand refactor the usage into start_timer and cancel_timer methods.\n\nBug: 441566940\nTest: atest net_test_btif_hh\nFlag: EXEMPT BUGFIX\nChange-Id: Ic5cccbdac0048ff6013634557adfd2b18443c884\n"
    }
  ],
  "next": "4c57ab08d72097e4759442a5c60ae37e4734f019"
}
