)]}'
{
  "commit": "a65ef60e5109dcad560daea38598b78ae5ff0a3f",
  "tree": "43da24edddf4d849a771321aba62948e8eb7bed3",
  "parents": [
    "e3e94c20f53e102b6f2ea2faa0e6b039d1286d4d"
  ],
  "author": {
    "name": "twerth CA",
    "email": "twerth@google.com",
    "time": "Fri Aug 28 03:15:28 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Fri Aug 28 03:16:50 2026 -0700"
  },
  "message": "Add --prune_unused_actions option to aquery to prune unreachable actions\n\nWhen `--prune_unused_actions` is specified on the command line, `aquery` emits only actions that are reachable in the artifact dependency graph of the requested top-level targets\u0027 default output artifacts (or requested `--output_groups`).\n\n### Motivation\nWhen querying an analyzed target (such as `deps(//foo)`), `aquery` currently emits all actions associated with every analyzed configured target in the query scope. This includes actions that produce unused outputs—such as `.pic.o` static compilation outputs when linking a dynamic library, or auxiliary artifacts in a dependency that are never referenced by the top-level target.\n\nThis addresses [#14156](https://github.com/bazelbuild/bazel/issues/14156) by allowing users to prune unreachable actions directly in `aquery`, eliminating the need for post-processing the action graph dump.\n\nPiperOrigin-RevId: 972474542\nChange-Id: Icb77dd7fb58ea29c83da20defa02862a227dd242\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "57c555c16e4936971d889fb19f8f0b9016667b95",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/buildtool/AqueryProcessor.java",
      "new_id": "6ace8b2d2931b98ff63c554c162559d458815174",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/buildtool/AqueryProcessor.java"
    },
    {
      "type": "modify",
      "old_id": "d47a64dfbaa93c1d038b9272e4c4e2f66cfce153",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/BUILD",
      "new_id": "51f5511746f39ce88507251f6159353a2bf3fcee",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/BUILD"
    },
    {
      "type": "modify",
      "old_id": "d4b51a9c36e91525b769164883abc8e9d492daae",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/ActionGraphProtoOutputFormatterCallback.java",
      "new_id": "c4de841f4650054ad36d7992518ac71ab803b6ee",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/ActionGraphProtoOutputFormatterCallback.java"
    },
    {
      "type": "modify",
      "old_id": "32aca878ff0c86cf3320e270d72b364576b0cf8b",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/ActionGraphQueryEnvironment.java",
      "new_id": "1ab48f5fc40707e435b2d950c8b3004ea2c2ede9",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/ActionGraphQueryEnvironment.java"
    },
    {
      "type": "modify",
      "old_id": "94c256d4eb8595a687b4d49ac81f8428ae419fbd",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/ActionGraphSummaryOutputFormatterCallback.java",
      "new_id": "83fac47403af339cf857dc0a21d5edb879945ea8",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/ActionGraphSummaryOutputFormatterCallback.java"
    },
    {
      "type": "modify",
      "old_id": "ed34a439fa65456631b8d6662b6d426a0afe47f9",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/ActionGraphTextOutputFormatterCallback.java",
      "new_id": "e837da3e9a6ca688d521036e09ac060176be4685",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/ActionGraphTextOutputFormatterCallback.java"
    },
    {
      "type": "modify",
      "old_id": "5be76fe0affb04a267a6e9cab5f30337b33e22fb",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/AqueryOptions.java",
      "new_id": "a0c1040a69ac4077a5a1302c8d5710d2c16b1701",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/AqueryOptions.java"
    },
    {
      "type": "modify",
      "old_id": "e2bdc3ff16f328681d8b73499fbed4adbf4c5691",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/AqueryThreadsafeCallback.java",
      "new_id": "80382fb145a317f09dcec9f068e061b43840cd34",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/AqueryThreadsafeCallback.java"
    },
    {
      "type": "modify",
      "old_id": "1dca214d3209ede438194b81bd897fad8d40ad45",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/AqueryUtils.java",
      "new_id": "5028cad66f42661910f52909c235f50e2aa5a266",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/aquery/AqueryUtils.java"
    },
    {
      "type": "modify",
      "old_id": "7e6b7c20c0e9ad015a5a9d46cb756c9d680cd48b",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/actiongraph/v2/ActionGraphDump.java",
      "new_id": "310ff9be92528b69f2374f9f685213215dddaa07",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/actiongraph/v2/ActionGraphDump.java"
    },
    {
      "type": "modify",
      "old_id": "9689d395b5f49bb30d914fb293d0164667495533",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/skyframe/actiongraph/v2/BUILD",
      "new_id": "c40c7d78bf864d2c496e47fa2f78fb9fe76eb503",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/skyframe/actiongraph/v2/BUILD"
    },
    {
      "type": "modify",
      "old_id": "5643bd10c2f294200747cd6860ba0f5cdbe3d7dc",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/buildtool/AqueryBuildToolTest.java",
      "new_id": "f441b64f1325574f5141381b54aba53bf0d41f45",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/buildtool/AqueryBuildToolTest.java"
    },
    {
      "type": "modify",
      "old_id": "38ad3d94862261f59c7cb91dc961dac64ab1737b",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/buildtool/util/BlazeRuntimeWrapper.java",
      "new_id": "39c8bfb43f97631ad713ceff98af024c6d6d43ff",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/buildtool/util/BlazeRuntimeWrapper.java"
    },
    {
      "type": "modify",
      "old_id": "cc447226ccbd155517c5737804788f4bb1dba6b9",
      "old_mode": 33261,
      "old_path": "src/test/shell/integration/aquery_test.sh",
      "new_id": "ac4727218a20fdcd3337614ceb7b1d18cde97c69",
      "new_mode": 33261,
      "new_path": "src/test/shell/integration/aquery_test.sh"
    }
  ]
}
