)]}'
{
  "commit": "7ba3152b450889e81e85a02bd2e28f992edba2b0",
  "tree": "f543b51e889ff997beff6780e86a2eb4aab6aa50",
  "parents": [
    "71049afd7c1828f5deb660c059527e5d99e8d1c7"
  ],
  "author": {
    "name": "Serge Bazanski",
    "email": "serge@nexantic.com",
    "time": "Mon Feb 03 16:08:19 2020 +0100"
  },
  "committer": {
    "name": "Serge Bazanski",
    "email": "serge@nexantic.com",
    "time": "Mon Feb 03 16:08:19 2020 +0100"
  },
  "message": "core/internal/api: use gRPC statuses as much as possible\n\nReturning plain go errors via gRPC will always result in a gRPC \u0027INTERNAL\u0027 error code, which is suboptimal. We go ahead and semanticize some of the possible error paths, and at the same time:\n\n - swallow some internal errors into logs and serve sanitized errors\n - move some of the internal service implementations to also use gRPC statuses\n - change a panic() call into a status.Unimplemented return type\n\nThere\u0027s still plenty work to be done on this front, but this is a good first change.\n\nTest Plan: if this is not covered by tests we\u0027re screwed anyways\n\nX-Origin-Diff: phab/D366\nGitOrigin-RevId: 71880a9e23c65631d6c4df6338855864c34bb11f\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3daa397fefdbc6cd6c733de9e94b0ef1c30a248a",
      "old_mode": 33188,
      "old_path": "core/internal/api/BUILD.bazel",
      "new_id": "e7ec6f807445fbd24f68026439ace0c811eb6e64",
      "new_mode": 33188,
      "new_path": "core/internal/api/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "814fcf0738712b48895e5da3dac87e09eaf38acd",
      "old_mode": 33188,
      "old_path": "core/internal/api/cluster.go",
      "new_id": "d2c18c38fa337527689d3df21757b9a5d275396f",
      "new_mode": 33188,
      "new_path": "core/internal/api/cluster.go"
    },
    {
      "type": "modify",
      "old_id": "c83d0957326b9fad5cde24752932f7f5fc12aaf6",
      "old_mode": 33188,
      "old_path": "core/internal/node/BUILD.bazel",
      "new_id": "529c6eeb2c8a12316213b88b31433e7bd3f7103b",
      "new_mode": 33188,
      "new_path": "core/internal/node/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "98873d389cdd1b8d4e419b516b9ba7160b8a9800",
      "old_mode": 33188,
      "old_path": "core/internal/node/setup.go",
      "new_id": "285046a1cd4f7cb679434b03789805661f2fcfd8",
      "new_mode": 33188,
      "new_path": "core/internal/node/setup.go"
    }
  ]
}
