)]}'
{
  "commit": "591dfa620de7b00c9525c075f0e0ab6dec46d710",
  "tree": "22c2df00daca3d7d9eda95ba157b3fb256d0f734",
  "parents": [
    "7d18d5e6dc7d9283bb7003daa7fb5019e5d27407"
  ],
  "author": {
    "name": "Hana Kim",
    "email": "hyangah@gmail.com",
    "time": "Thu Jul 02 13:33:24 2026 +0000"
  },
  "committer": {
    "name": "Gopher Robot",
    "email": "gobot@golang.org",
    "time": "Wed Jul 15 16:31:19 2026 -0700"
  },
  "message": "gopls: run filecache validation asynchronously in the background\n\nMove the filecache validation check (which hashes the executable and\nverifies cache access) from the synchronous startup path in main.go\ninto the background goroutine started by filecache.Start.\n\nBefore this CL, this check was run synchronously in main.go, blocking the\nstartup of all gopls commands (including quick commands like help and\nversion) for ~50ms while the executable was hashed.\n\nBy running the check asynchronously, short-lived commands can exit\nquickly before the check completes. Long-running commands (like serve)\nwill still be terminated via log.Fatalf if the validation fails (e.g.,\ndue to disk full / ENOSPC) once the background check finishes.\n\nConcurrent gopls processes (e.g., CLI and daemon) won\u0027t conflict\nbecause GC is delayed and concurrent writes to the shared cache are\nhandled safely.\n\nUpdates golang/go#67433\nUpdates golang/go#79906\n\nChange-Id: I63869dee81fa8ae176e762a291c765d148f67044\nReviewed-on: https://go-review.googlesource.com/c/tools/+/797082\nReviewed-by: Alan Donovan \u003cadonovan@google.com\u003e\nLUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com \u003cgolang-scoped@luci-project-accounts.iam.gserviceaccount.com\u003e\nAuto-Submit: Hyang-Ah Hana Kim \u003chyangah@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "66d7241af8d5f8621df2bc664cdf86dfbbd81df6",
      "old_mode": 33188,
      "old_path": "gopls/internal/cmd/harness.go",
      "new_id": "134814c2bfdb0efe3b61ea40f4bbe52314ca1892",
      "new_mode": 33188,
      "new_path": "gopls/internal/cmd/harness.go"
    },
    {
      "type": "modify",
      "old_id": "184e2fbca5cd1d1cfce3e87118b5099cdd4141f7",
      "old_mode": 33188,
      "old_path": "gopls/internal/filecache/filecache.go",
      "new_id": "44db48e1533df253f1f409a597a4bb12a586acf2",
      "new_mode": 33188,
      "new_path": "gopls/internal/filecache/filecache.go"
    },
    {
      "type": "modify",
      "old_id": "75e4ca260379a17cff4321c478d11f1d52179e44",
      "old_mode": 33188,
      "old_path": "gopls/main.go",
      "new_id": "4343652f7128359c6d865f2b0c3a225e83426449",
      "new_mode": 33188,
      "new_path": "gopls/main.go"
    }
  ]
}
