)]}'
{
  "commit": "8721e009d8e48e59900dc194ed2d47240c692fc5",
  "tree": "b5bcb8d79352f665a728e16beed050bba8fe0b11",
  "parents": [
    "7475277b310316679c1b7a953cc51c1fff8b1baa"
  ],
  "author": {
    "name": "Adam Cozzette",
    "email": "adamc@aspect.build",
    "time": "Mon Aug 31 13:38:11 2026 -0700"
  },
  "committer": {
    "name": "Adam Cozzette",
    "email": "adamc@aspect.build",
    "time": "Mon Aug 31 13:38:11 2026 -0700"
  },
  "message": "fix: point runfiles libraries at the manifest when there is no runfiles tree\n\nWhere runfiles trees are not built, which is the default on Windows,\nRUNFILES_DIR names a directory holding nothing but the manifest, and a runfiles\nlibrary has to read that manifest instead. Bazel does not put\nRUNFILES_MANIFEST_FILE in a build action\u0027s environment\n(bazelbuild/bazel#7994), so the launcher exported only RUNFILES_DIR and\n@bazel/runfiles fell back to walking a tree that was not there:\n\n    RUNFILES_MANIFEST_FILE should have been set but wasn\u0027t.\n    falling back to using runfiles symlinks.\n    cfg_probe.txt not found in runfiles at _main/js/private/test/js_run_binary/cfg_probe.txt\n\nExport RUNFILES_MANIFEST_FILE from the launcher when the tree was not laid out\nand the manifest is really there. //js/private/test/js_run_binary:target_cfg_test\nnow runs on Windows rather than failing to build, so it is no longer marked\nincompatible.\n\nThe two RUNFILES_ONLY cases stay marked, with the reason corrected: they assert\nthat cfg_probe.txt is *absent* from the target bin directory, which only holds\nfor an action that cannot see files it did not declare. Other targets in that\npackage do build cfg_probe.txt in the target configuration, so without a sandbox\nthe probe finds that copy in the execroot. no_copy_to_bin_test\u0027s reason is\nlikewise corrected: it requires a file by a path relative to the entry point,\nand require() does not consult a manifest.\n\nCo-Authored-By: Claude Opus 5 (1M context) \u003cnoreply@anthropic.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "53415652e83109820e65ef46cee7f4ca3a2dda89",
      "old_mode": 33188,
      "old_path": "js/private/bash.bzl",
      "new_id": "80dfd06d4e8ce48a847e10a0c07e37bb81881420",
      "new_mode": 33188,
      "new_path": "js/private/bash.bzl"
    },
    {
      "type": "modify",
      "old_id": "59035b09489ef89f385a0166b816dce6c4337118",
      "old_mode": 33188,
      "old_path": "js/private/test/js_run_binary/BUILD.bazel",
      "new_id": "a729119956554ed3e854a58b2f054e199177638d",
      "new_mode": 33188,
      "new_path": "js/private/test/js_run_binary/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "ad762ffeeb3d731bce0809c807e1b02d6517d3df",
      "old_mode": 33188,
      "old_path": "js/private/test/no_copy_to_bin/BUILD.bazel",
      "new_id": "3431f8c55142d4362efff38d356ce40fc471a6b3",
      "new_mode": 33188,
      "new_path": "js/private/test/no_copy_to_bin/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "d9131389f9eab6641df3bf42d98c6094a793e42f",
      "old_mode": 33188,
      "old_path": "js/private/test/snapshots/launcher.sh",
      "new_id": "f0059a3b708414c8486d9ff3d0c5f65db6be5c78",
      "new_mode": 33188,
      "new_path": "js/private/test/snapshots/launcher.sh"
    }
  ]
}
