)]}'
{
  "commit": "cbf88466f36bd4a0149a2ba09e78273ad8869f85",
  "tree": "4ea2c55b509c5ebb6222e597aca5431492eb0d4e",
  "parents": [
    "14a1f944497ad5af98dd6b24ed7679076a5e9bc7"
  ],
  "author": {
    "name": "MingWei",
    "email": "mingweiliao@google.com",
    "time": "Wed Jul 23 09:35:53 2025 +0000"
  },
  "committer": {
    "name": "MingWei",
    "email": "mingweiliao@google.com",
    "time": "Fri Aug 15 12:33:39 2025 +0000"
  },
  "message": "Record AppFunction access after execution\n\nInsert the access record into the database along with the attribution\nafter the execution is finished.\n\nAlso setup a periodic clean up task to delete any access histories that\nis older than 30 days every 24 hours.\n\nBug: 427996654\nFlag: android.permission.flags.app_function_access_api_enabled\nTest: FrameworksAppFunctionsTests\nChange-Id: Ie91e54364a08c56b215514ff6c605e277b7d717e\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "67a019160445836db36aee5fa0cf9d3858c17b06",
      "new_mode": 33188,
      "new_path": "services/appfunctions/java/com/android/server/appfunctions/AppFunctionAccessHistory.java"
    },
    {
      "type": "modify",
      "old_id": "eaea4435099cc0c0198fd7b6195b2a6d6bd8eebf",
      "old_mode": 33188,
      "old_path": "services/appfunctions/java/com/android/server/appfunctions/AppFunctionExecutors.java",
      "new_id": "8baa47369526f030889517fb2aecc83d19d41891",
      "new_mode": 33188,
      "new_path": "services/appfunctions/java/com/android/server/appfunctions/AppFunctionExecutors.java"
    },
    {
      "type": "modify",
      "old_id": "68fc1d774deaa3a004c149841bdbb43915cccbe9",
      "old_mode": 33188,
      "old_path": "services/appfunctions/java/com/android/server/appfunctions/AppFunctionManagerService.java",
      "new_id": "6278f0042089169df5e2f83a0a002404c0f5eab2",
      "new_mode": 33188,
      "new_path": "services/appfunctions/java/com/android/server/appfunctions/AppFunctionManagerService.java"
    },
    {
      "type": "modify",
      "old_id": "e7b704056353cc3d5ab902a59f7808871c6abfae",
      "old_mode": 33188,
      "old_path": "services/appfunctions/java/com/android/server/appfunctions/AppFunctionManagerServiceImpl.java",
      "new_id": "e38cc232b5df9a5e41f9add6ac815ccbb1851502",
      "new_mode": 33188,
      "new_path": "services/appfunctions/java/com/android/server/appfunctions/AppFunctionManagerServiceImpl.java"
    },
    {
      "type": "rename",
      "old_id": "fa8e07dc3a793e640dc76095a217188dd9954b39",
      "old_mode": 33188,
      "old_path": "services/appfunctions/java/com/android/server/appfunctions/AppFunctionAccessDatabaseHelper.java",
      "new_id": "5ffc6eb5363f07c91a02a0b74e3a866c13c3236d",
      "new_mode": 33188,
      "new_path": "services/appfunctions/java/com/android/server/appfunctions/AppFunctionSQLiteAccessHistory.java",
      "score": 90
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "312536d77cc0cf47b5727832461fb31fb3809567",
      "new_mode": 33188,
      "new_path": "services/appfunctions/java/com/android/server/appfunctions/MultiUserAppFunctionAccessHistory.java"
    },
    {
      "type": "modify",
      "old_id": "8d2d1b2dfd002e7e3c3e7924032bc178ae1e9bbd",
      "old_mode": 33188,
      "old_path": "services/appfunctions/java/com/android/server/appfunctions/ServiceConfig.java",
      "new_id": "380cfa0da15eed10607391cdfaa7ea5dd98c092d",
      "new_mode": 33188,
      "new_path": "services/appfunctions/java/com/android/server/appfunctions/ServiceConfig.java"
    },
    {
      "type": "modify",
      "old_id": "787f52afda4b66342b718ca2f65ad92215d8757d",
      "old_mode": 33188,
      "old_path": "services/appfunctions/java/com/android/server/appfunctions/ServiceConfigImpl.java",
      "new_id": "b6ea83355bda3bbb91cb206e38609a4c2d8b4d4e",
      "new_mode": 33188,
      "new_path": "services/appfunctions/java/com/android/server/appfunctions/ServiceConfigImpl.java"
    },
    {
      "type": "modify",
      "old_id": "482472f434d45e0241ac42ce7f14d55cdcfdb528",
      "old_mode": 33188,
      "old_path": "services/tests/appfunctions/Android.bp",
      "new_id": "7895c5392ce95a6e5ddddc0e499e3d1849c435fe",
      "new_mode": 33188,
      "new_path": "services/tests/appfunctions/Android.bp"
    },
    {
      "type": "modify",
      "old_id": "4abe1b75b10d349b07bd2e67c5ec0590d12f327e",
      "old_mode": 33188,
      "old_path": "services/tests/appfunctions/src/com/android/server/appfunctions/AppFunctionManagerServiceImplTest.kt",
      "new_id": "4691679afb1cebf7a88d7346fc329a553e4e62bf",
      "new_mode": 33188,
      "new_path": "services/tests/appfunctions/src/com/android/server/appfunctions/AppFunctionManagerServiceImplTest.kt"
    },
    {
      "type": "rename",
      "old_id": "4cd3ef8e9874f1dd829996e14697b125380e6078",
      "old_mode": 33188,
      "old_path": "services/tests/appfunctions/src/com/android/server/appfunctions/AppFunctionAccessDatabaseHelperTest.kt",
      "new_id": "4f114869f772e88f4d580189644216ddc604e738",
      "new_mode": 33188,
      "new_path": "services/tests/appfunctions/src/com/android/server/appfunctions/AppFunctionSQLiteAccessHistoryTest.kt",
      "score": 89
    },
    {
      "type": "modify",
      "old_id": "f6d87dc82a23735aec966a8c0ba65ab9b8bcd71f",
      "old_mode": 33188,
      "old_path": "services/tests/appfunctions/src/com/android/server/appfunctions/AppFunctionsLoggingTest.kt",
      "new_id": "112439fe6a0979bab67bdd6fafc844d0c78f1e4b",
      "new_mode": 33188,
      "new_path": "services/tests/appfunctions/src/com/android/server/appfunctions/AppFunctionsLoggingTest.kt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f5d337e02f0e3fd559bc51ce93c326e28238b587",
      "new_mode": 33188,
      "new_path": "services/tests/appfunctions/src/com/android/server/appfunctions/FakeScheduledExecutorService.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f340cc206ede5d51c1ee48560a3adad4913eb4f4",
      "new_mode": 33188,
      "new_path": "services/tests/appfunctions/src/com/android/server/appfunctions/MultiUserAppFunctionAccessHistoryTest.kt"
    }
  ]
}
