)]}'
{
  "commit": "2dbc028b59ceec0e6a1fdec1dd7a9b2597d80be7",
  "tree": "f4f4edeffe400c17e9c4753bd2302f840d9fa72d",
  "parents": [
    "6b17bde4cf051276f0ed2e74cb0674a5efa86163"
  ],
  "author": {
    "name": "Johan Bay",
    "email": "jobay@google.com",
    "time": "Tue Jun 09 12:47:31 2026 +0200"
  },
  "committer": {
    "name": "r8-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "r8-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Jun 09 05:08:19 2026 -0700"
  },
  "message": "Integrate Playwright for Configuration Analyzer HTML report testing\n\n- Add playwright as a test dependency.\n- Configure headless Chrome dependency.\n- Create PlaywrightTestBase and BlastRadiusInspector to hide browser setup.\n- Add BlastRadiusPlaywrightTest with comprehensive E2E tests for report rendering and UI features (search, tabs, details drilldown).\n- Update .gitignore to exclude downloaded chrome binaries but allow sha1 files.\n\nChange-Id: I4220aa636f6f23d47cf741a5ee03e5f3bbe46e73",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9e585c1d096506fc1905aa9ea42d0b9cd8d94cb5",
      "old_mode": 33188,
      "old_path": ".gitignore",
      "new_id": "195e5712d2d1df422669fa787d78d197819bd6ac",
      "new_mode": 33188,
      "new_path": ".gitignore"
    },
    {
      "type": "modify",
      "old_id": "c507534665abaf230a11fd19b02ef924eec37dcc",
      "old_mode": 33188,
      "old_path": "d8_r8/commonBuildSrc/src/main/kotlin/DependenciesPlugin.kt",
      "new_id": "c7857c4b967b6146c7694f4d76c5a0d527a2190f",
      "new_mode": 33188,
      "new_path": "d8_r8/commonBuildSrc/src/main/kotlin/DependenciesPlugin.kt"
    },
    {
      "type": "modify",
      "old_id": "c85d365fa7d70c99ed04a07932b07695024bcb9c",
      "old_mode": 33188,
      "old_path": "d8_r8/test_modules/testbase/build.gradle.kts",
      "new_id": "650aad8d607aa9c7d774a9324830fab13b800028",
      "new_mode": 33188,
      "new_path": "d8_r8/test_modules/testbase/build.gradle.kts"
    },
    {
      "type": "modify",
      "old_id": "3040da98cc286599e18d9892a4b23a4dbf4058d1",
      "old_mode": 33188,
      "old_path": "d8_r8/test_modules/tests_java_8/build.gradle.kts",
      "new_id": "42c44a3ae0c173765619cc28630e9678eca0b7db",
      "new_mode": 33188,
      "new_path": "d8_r8/test_modules/tests_java_8/build.gradle.kts"
    },
    {
      "type": "modify",
      "old_id": "4888a0d49d4a44afecfdd8e5b8467a70d87d832b",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/assistant/postprocessing/ReflectiveOperationJsonParser.java",
      "new_id": "093a59cada760e6c5d6d4c45a9fa57d90a809451",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/assistant/postprocessing/ReflectiveOperationJsonParser.java"
    },
    {
      "type": "modify",
      "old_id": "a69e843e86c4e39939d6474961941100f554d746",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/dex/ClassesChecksum.java",
      "new_id": "d394fa0914e454f393a47b98a3b614abed389703",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/dex/ClassesChecksum.java"
    },
    {
      "type": "modify",
      "old_id": "40aa9a7e6130b362a3fd29c2c3ebc4e285c497d9",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/dex/Marker.java",
      "new_id": "1297330b8674d34c337a5893a6f4079acddd624a",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/dex/Marker.java"
    },
    {
      "type": "modify",
      "old_id": "e62fade3030a91b5dfb24b60a962451f737ca200",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/DesugaredLibrarySpecificationParser.java",
      "new_id": "9e5cd84be0c183271871168c4ecbbbd17ddc2f63",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/DesugaredLibrarySpecificationParser.java"
    },
    {
      "type": "modify",
      "old_id": "d9937971edf9367d01599c0dcf41961e43ec77dd",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/humanspecification/HumanDesugaredLibrarySpecificationParser.java",
      "new_id": "b55894062fa23330c9408729bc4a8d2a030f26a1",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/humanspecification/HumanDesugaredLibrarySpecificationParser.java"
    },
    {
      "type": "modify",
      "old_id": "8c8e2a808da7d236a0dadb8075a158bf81e34b96",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/legacyspecification/LegacyDesugaredLibrarySpecificationParser.java",
      "new_id": "f9b1acc5b81c90f0b1e41dcdb031941ee53aed8f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/legacyspecification/LegacyDesugaredLibrarySpecificationParser.java"
    },
    {
      "type": "modify",
      "old_id": "a7b916544b71f1d3bd40934d2be3ff65311e0759",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/machinespecification/MachineDesugaredLibrarySpecificationParser.java",
      "new_id": "fcb991654fc4152ae1f91bf85715d9f00f70bc3d",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/machinespecification/MachineDesugaredLibrarySpecificationParser.java"
    },
    {
      "type": "modify",
      "old_id": "d416e4598ab426c65b723058e6c1e07865820906",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/specificationconversion/DesugaredLibraryConverter.java",
      "new_id": "77b02ca90e2a443e3c0a4c9933de2e662f6b2492",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/specificationconversion/DesugaredLibraryConverter.java"
    },
    {
      "type": "modify",
      "old_id": "1d42a9fda8d2b2ede4def20dce800a840d30dce0",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/naming/ProguardMapReader.java",
      "new_id": "4d287be6a92c3fc1c84d74b5495303b6a950f004",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/naming/ProguardMapReader.java"
    },
    {
      "type": "modify",
      "old_id": "88eff761d93efaa4bfadce4024620794e286c23d",
      "old_mode": 33188,
      "old_path": "src/test/java/com/android/tools/r8/MarkersTest.java",
      "new_id": "a667860d33ae4bffc47863eea51916f167b764a6",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/MarkersTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e19a2e5fc4394458aa735eb9eacc2c00ba6bbab7",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/keepradius/ui/KeepRadiusPlaywrightTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "faea90d21d29b43c798630abf7acbd85f71224e7",
      "new_mode": 33188,
      "new_path": "src/test/testbase/java/com/android/tools/r8/PlaywrightTestBase.java"
    },
    {
      "type": "modify",
      "old_id": "b541d2b11a7a055ca805e827b6958c2241709882",
      "old_mode": 33188,
      "old_path": "src/test/testbase/java/com/android/tools/r8/R8CompatTestBuilder.java",
      "new_id": "98bff3e89df1ad7476e921a9c4368bf9e3b6a6a0",
      "new_mode": 33188,
      "new_path": "src/test/testbase/java/com/android/tools/r8/R8CompatTestBuilder.java"
    },
    {
      "type": "modify",
      "old_id": "48b5bdd3928b6831a5bd6f9e59918aaceee522e5",
      "old_mode": 33188,
      "old_path": "src/test/testbase/java/com/android/tools/r8/R8FullTestBuilder.java",
      "new_id": "5063a3812122f2ecc069724c7652ab215f343b52",
      "new_mode": 33188,
      "new_path": "src/test/testbase/java/com/android/tools/r8/R8FullTestBuilder.java"
    },
    {
      "type": "modify",
      "old_id": "aa3686a6e1fe625f5266fd71c012b6543df18420",
      "old_mode": 33188,
      "old_path": "src/test/testbase/java/com/android/tools/r8/R8PartialTestBuilder.java",
      "new_id": "b2ab55e54af5cd6bf8406d4637d088d4628d36a0",
      "new_mode": 33188,
      "new_path": "src/test/testbase/java/com/android/tools/r8/R8PartialTestBuilder.java"
    },
    {
      "type": "modify",
      "old_id": "7478fc453c44331923d4a4e45aa4e1515ae0adb8",
      "old_mode": 33188,
      "old_path": "src/test/testbase/java/com/android/tools/r8/R8PartialTestCompileResult.java",
      "new_id": "eb6b0716834898e65bb3b4db38f98c06cff1471e",
      "new_mode": 33188,
      "new_path": "src/test/testbase/java/com/android/tools/r8/R8PartialTestCompileResult.java"
    },
    {
      "type": "modify",
      "old_id": "3aeed0b621b7be9001c224b4f87d898a6f38c2f0",
      "old_mode": 33188,
      "old_path": "src/test/testbase/java/com/android/tools/r8/R8TestBuilder.java",
      "new_id": "d3b4b5b4cd88074135ad0b6ff1b6f23b71e937df",
      "new_mode": 33188,
      "new_path": "src/test/testbase/java/com/android/tools/r8/R8TestBuilder.java"
    },
    {
      "type": "modify",
      "old_id": "8bd3dc30292d0bcb4ebbfe6cf03b7a4d25f7321c",
      "old_mode": 33188,
      "old_path": "src/test/testbase/java/com/android/tools/r8/R8TestCompileResult.java",
      "new_id": "75dd1ec539042ccbc27b180a1b15f0346775e2cd",
      "new_mode": 33188,
      "new_path": "src/test/testbase/java/com/android/tools/r8/R8TestCompileResult.java"
    },
    {
      "type": "modify",
      "old_id": "673eb16f5ce93ea6e3f9d258c772ca8c73a3fc4e",
      "old_mode": 33188,
      "old_path": "src/test/testbase/java/com/android/tools/r8/R8TestCompileResultBase.java",
      "new_id": "60755120a821186c6d9ffb36c3e5fed5dfdd16c0",
      "new_mode": 33188,
      "new_path": "src/test/testbase/java/com/android/tools/r8/R8TestCompileResultBase.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "98275ffc9376825549649defd65013ba26b02f45",
      "new_mode": 33188,
      "new_path": "src/test/testbase/java/com/android/tools/r8/keepradius/ui/KeepRadiusInspector.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dc594513490e618e5d32d9ef858a12842836b371",
      "new_mode": 33188,
      "new_path": "third_party/chrome_headless/linux.tar.gz.sha1"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "32237b5947aaa8be5c3c7ab7bd81b5e96b22ba19",
      "new_mode": 33188,
      "new_path": "third_party/chrome_headless/mac.tar.gz.sha1"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "42f5f4ef65de198b9de1aa525f131277b3fcb422",
      "new_mode": 33188,
      "new_path": "third_party/chrome_headless/windows.tar.gz.sha1"
    },
    {
      "type": "modify",
      "old_id": "62aca42fb149e04ce5683b8913984a4c6db49fd2",
      "old_mode": 33188,
      "old_path": "third_party/dependencies.tar.gz.sha1",
      "new_id": "7ba547da1d70ce17c457853a4c17efed394b11e3",
      "new_mode": 33188,
      "new_path": "third_party/dependencies.tar.gz.sha1"
    },
    {
      "type": "modify",
      "old_id": "307848a19bf36ceac0d8a7069eab0f5032b3fa0b",
      "old_mode": 33261,
      "old_path": "tools/create_local_maven_with_dependencies.py",
      "new_id": "e61b569787f0843718e115c38ed2f3f4fd10ae60",
      "new_mode": 33261,
      "new_path": "tools/create_local_maven_with_dependencies.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1b6bb7e895a45a54d82db59aedcc8162e77751d5",
      "new_mode": 33261,
      "new_path": "tools/update_chrome_headless.py"
    }
  ]
}
