)]}'
{
  "commit": "02b18441f3cde5e36d62aa0ba65c9b844c4bf5da",
  "tree": "a18fb5b117cfa08a176d0fa450bf8dfb3de44d7a",
  "parents": [
    "a6b6505b1b9709e6055175e61d53175b7305a4f5"
  ],
  "author": {
    "name": "Eric Boren",
    "email": "borenet@google.com",
    "time": "Wed Oct 14 17:13:17 2026 +0000"
  },
  "committer": {
    "name": "skcq-be@skia-corp.google.com.iam.gserviceaccount.com",
    "email": "skcq-be@skia-corp.google.com.iam.gserviceaccount.com",
    "time": "Thu Oct 15 12:17:00 2026 -0700"
  },
  "message": "[autogardener] Add computeFlakyCulpritsResolvedBy\n\nThis function determines whether a given failure is flaky. If not, it\nalso makes an effort to derive the list of culprit commits and commits\nwhich resolved the failure.\n\nBug: b/491418947\nChange-Id: I7d4b5ffbffdd376b6e3b797fe3561b6639da600a\nReviewed-on: https://skia-review.googlesource.com/c/buildbot/+/1391758\nReviewed-by: Brett Somocurcio \u003cbrettos@google.com\u003e\nCommit-Queue: Eric Boren \u003cborenet@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "552168c4d1a511ea0bc485afcdf09061d61a2d67",
      "old_mode": 33188,
      "old_path": "autogardener/go/ingester/BUILD.bazel",
      "new_id": "2e3de2a7b9e2781d02053e815667b425e645d832",
      "new_mode": 33188,
      "new_path": "autogardener/go/ingester/BUILD.bazel"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d3b131cf44c4a4ec468c40d4b30daa5c9b017f5d",
      "new_mode": 33188,
      "new_path": "autogardener/go/ingester/update_failure_class.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7a0a537888224d9fe57be344e37e4e99c747243a",
      "new_mode": 33188,
      "new_path": "autogardener/go/ingester/update_failure_class_test.go"
    }
  ]
}
