)]}'
{
  "commit": "676ba6e38322d5890fe1a81609d2de93f3b739a4",
  "tree": "7901c00ee3dcdac400cc96e210b7854fc3a15632",
  "parents": [
    "125e6e836b2c2eb65eb845c8cb014ae1a6daa972"
  ],
  "author": {
    "name": "Googler",
    "email": "jingwen@google.com",
    "time": "Tue Oct 01 02:44:12 2024 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue Oct 01 02:45:38 2024 -0700"
  },
  "message": "Implement execution node caching with `--experimental_remote_analysis_cache`.\n\nThis change serializes and uploads all ActionLookupData and Artifact nodes to the fingerprint value service.\n\nThis adds the SkyValueRetriever step to ActionExecutionFunction and ArtifactFunction, similarly to ConfiguredTargetFunction and AspectFunction.\n\nAll of the tests are also running with `--build` now, except for a couple of opt-outs.\n\nPiperOrigin-RevId: 680931442\nChange-Id: I952695d99c36ec4cb9d7af4f5cdbfa24da8542a7\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "68762c2bdee132b344828250f42573322d05e867",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/buildtool/BuildTool.java",
      "new_id": "a4a8a144abed67d6b85e9755cb0e58cbc5c02b4f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/buildtool/BuildTool.java"
    },
    {
      "type": "modify",
      "old_id": "7463afd298edba8ebef4c71fcf46c33803e26e89",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionFunction.java",
      "new_id": "c20d33314093dd401a6d4203b59cb039531d6f6d",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionFunction.java"
    },
    {
      "type": "modify",
      "old_id": "4b6ce1805266cf640686121ce8ff81eb042f3c26",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/ArtifactFunction.java",
      "new_id": "805e71ad87f53815e314814fd60d8518b9fe2ae2",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/ArtifactFunction.java"
    },
    {
      "type": "modify",
      "old_id": "f0b5bab4bbb3139503db83b30f515b7c630491a5",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java",
      "new_id": "c69a5f89c59f41effb1c7a138d259addc3761126",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java"
    },
    {
      "type": "modify",
      "old_id": "1394c4635bc7635c30fe182924adf6d8924525b8",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/BUILD",
      "new_id": "42be79714fcc5678b9de07dc89d91edc7e323de2",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/BUILD"
    },
    {
      "type": "modify",
      "old_id": "e476d56794b510d31ce0005fa69bbac7deeb4f91",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java",
      "new_id": "ff00de5cfe7febd5d0be73ea20c6da69c700be6f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java"
    },
    {
      "type": "modify",
      "old_id": "1be6275466e5e724f867f6097b6ea3bb74df8a66",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetProgressReceiver.java",
      "new_id": "034b91c892a691299f32826e616b9da2f83e25d0",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetProgressReceiver.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5bc4053d4837ceeeb8df7d1dbf4293b260655ff8",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/SkyValueRetrieverUtils.java"
    },
    {
      "type": "modify",
      "old_id": "b6b573c18d6f52e66ed93b8be8d512220c6388e7",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java",
      "new_id": "4169358a0f3d21f85c4a10e476f6be204a2841f9",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java"
    },
    {
      "type": "modify",
      "old_id": "4e619a3948c56b5caac244f9efa6f0676ff4e592",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/serialization/analysis/BUILD",
      "new_id": "96bf6e9984a758da99c031a0de38c75a1481b58c",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/serialization/analysis/BUILD"
    },
    {
      "type": "modify",
      "old_id": "a543929ca5f9d3c06e80d7d0064987d44b6f8084",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/serialization/analysis/FrontierSerializer.java",
      "new_id": "11b12b0dc634e1651e77b9d9d482e359bfe81781",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/serialization/analysis/FrontierSerializer.java"
    },
    {
      "type": "modify",
      "old_id": "0a2da8d84d87e1ba22a92212af8c5f106caf1254",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/serialization/analysis/RemoteAnalysisCachingEventListener.java",
      "new_id": "1b06aa06e802e3d12e66ea84353e6f845a03eab9",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/serialization/analysis/RemoteAnalysisCachingEventListener.java"
    },
    {
      "type": "modify",
      "old_id": "f67a9a06326e30d53799e6347f73b7117dc13dc3",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/skyframe/ArtifactFunctionTestCase.java",
      "new_id": "b64be275b9602c7af080242ee2f6d1926b4c950d",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/skyframe/ArtifactFunctionTestCase.java"
    },
    {
      "type": "modify",
      "old_id": "e5c0e0a5e8da58510a9dd44abf5d1a7c39a747ae",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/skyframe/BUILD",
      "new_id": "65420c16ca5802e99422ea3353f79a06397f8e7b",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/skyframe/BUILD"
    },
    {
      "type": "modify",
      "old_id": "eeaae02b23f87bfaafbf63e6cb999018e153b742",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetProgressReceiverTest.java",
      "new_id": "534a36c250751662a7b1cb07997a7b943db8bbca",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetProgressReceiverTest.java"
    },
    {
      "type": "modify",
      "old_id": "980c1da24d2065d158a6adcccd6de7d498459bba",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderTestCase.java",
      "new_id": "3270f737b1bd45b55be99422cc2e04a544b774ee",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderTestCase.java"
    },
    {
      "type": "modify",
      "old_id": "33abb266f0587eb2d920799a446756e397028928",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/skyframe/serialization/analysis/FrontierSerializerTestBase.java",
      "new_id": "ae7c040f41ece4210520869dda822286d5a4a236",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/skyframe/serialization/analysis/FrontierSerializerTestBase.java"
    }
  ]
}
