)]}'
{
  "commit": "4dc75555c62492336129c1a72769906b455c54be",
  "tree": "290ae4d82c8f84457f6ab86bb25f68bcdd1c70ba",
  "parents": [
    "a7e9e936fb47bb6bcbb50c9c26884571bfa70ec9"
  ],
  "author": {
    "name": "Sergey Shevchenko",
    "email": "sergeygs@google.com",
    "time": "Thu Mar 21 02:19:38 2024"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Thu Mar 21 02:20:33 2024"
  },
  "message": "#Centipede Atomically write CSV lines to fuzzing-stats*.csv reports\n\nBefore, each field sample would be immediately appended to the report. That created problems:\n\n1. External readers had to be able to tolerate incomplete last lines in reports.\n1. If the process was killed in the middle of a line and restarted in the same workdir, the first new line would be appended to the unfinished line. The resulting line was malformed.\n\nAlso, with network file systems, writing a line at a time means fewer write requests sent to the file server (however, the benefit is likely minor, given the size and frequency of writes here).\n\nPiperOrigin-RevId: 617693512\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9ee4f7a3ba122bd2aa1c9b52946467a178d7e5b0",
      "old_mode": 33188,
      "old_path": "centipede/BUILD",
      "new_id": "81a80a6b78cde473b5ad848966603bc473a8a0e2",
      "new_mode": 33188,
      "new_path": "centipede/BUILD"
    },
    {
      "type": "modify",
      "old_id": "ee5b7710b18c2ffde6f48acfd4c4cf600c9c6977",
      "old_mode": 33188,
      "old_path": "centipede/stats.cc",
      "new_id": "db933700804a36ad964ffd7701d990bdc877bdc9",
      "new_mode": 33188,
      "new_path": "centipede/stats.cc"
    },
    {
      "type": "modify",
      "old_id": "faf14a6e7758015758c03c142c8ad68e6422e9f3",
      "old_mode": 33188,
      "old_path": "centipede/stats.h",
      "new_id": "cd870f7d37acf4a669d61c7797d07336ec58c473",
      "new_mode": 33188,
      "new_path": "centipede/stats.h"
    }
  ]
}
