)]}'
{
  "commit": "19969a9af6da4b5b5e25d02aa635dabad196e464",
  "tree": "d4701576dce7bdffd962b1d11cd3e6b37d4be443",
  "parents": [
    "44f847a93e7e0953abd42880f5e87c8b3e213134"
  ],
  "author": {
    "name": "Josh Bleecher Snyder",
    "email": "josharian@gmail.com",
    "time": "Thu Jun 05 14:34:02 2025 -0700"
  },
  "committer": {
    "name": "Josh Bleecher Snyder",
    "email": "josharian@gmail.com",
    "time": "Thu Jun 05 19:30:39 2025 -0700"
  },
  "message": "all: s/title/slug/, adjust branch handling\n\nThere are two intertwined changes here.\n\nFirst, replace title with slug, and precommit with commit-message-style.\n\nThe slug makes enough of a title, and it provides a single human-readable\nidentifier we can use everywhere.\n\nSecond, construct the branch name on the fly instead of storing it,\nout of slug, branch prefix, and retryNumber.\nThis removes some duplicated data, and makes the retry loop\neasier to follow and reason about.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fada880024d842c18fd2352ce9e68bfc89ba949b",
      "old_mode": 33188,
      "old_path": "claudetool/about_sketch.txt",
      "new_id": "63ab2e0f59aecb177ea5e4920ccf9077575f05e5",
      "new_mode": 33188,
      "new_path": "claudetool/about_sketch.txt"
    },
    {
      "type": "modify",
      "old_id": "949682b5f8b04495bd8ffb34fa78f726db273b91",
      "old_mode": 33188,
      "old_path": "loop/agent.go",
      "new_id": "0d32420f1297abe7266e33ed1e3b4b51d1288077",
      "new_mode": 33188,
      "new_path": "loop/agent.go"
    },
    {
      "type": "modify",
      "old_id": "1eccb610598c1f5ce30a0cb425b2a92c1a2866a1",
      "old_mode": 33188,
      "old_path": "loop/agent_system_prompt.txt",
      "new_id": "1a3e63348d71618edf11ae96d7f6e2d8a786034e",
      "new_mode": 33188,
      "new_path": "loop/agent_system_prompt.txt"
    },
    {
      "type": "modify",
      "old_id": "30affbe5e3bffd3179cf986440e8000dc4ab45d5",
      "old_mode": 33188,
      "old_path": "loop/agent_test.go",
      "new_id": "1fa6a9e4c10259932d3c8b2c458c00a5be538aa5",
      "new_mode": 33188,
      "new_path": "loop/agent_test.go"
    },
    {
      "type": "modify",
      "old_id": "94d1037ee14475b605aefce3e1e45cc2f83edd3e",
      "old_mode": 33188,
      "old_path": "loop/server/loophttp.go",
      "new_id": "5a657f80788d33ddd3a8abfe9cfffc99235f1074",
      "new_mode": 33188,
      "new_path": "loop/server/loophttp.go"
    },
    {
      "type": "modify",
      "old_id": "59c5ac9f37d86878c64c967073a8207eb29f57c3",
      "old_mode": 33188,
      "old_path": "loop/server/loophttp_test.go",
      "new_id": "0d28fca3835358c787f5c3147399d09317dd416f",
      "new_mode": 33188,
      "new_path": "loop/server/loophttp_test.go"
    },
    {
      "type": "modify",
      "old_id": "90076da8030091278ce99b9c98c4fdb8afab5c8d",
      "old_mode": 33188,
      "old_path": "loop/testdata/agent_loop.httprr",
      "new_id": "d986b0faea8726910754ab1c63091dea880c71d5",
      "new_mode": 33188,
      "new_path": "loop/testdata/agent_loop.httprr"
    },
    {
      "type": "modify",
      "old_id": "24f663b14dc62b33922bf8decd3110f8db55299a",
      "old_mode": 33188,
      "old_path": "termui/termui.go",
      "new_id": "bbe04b45332bc7c4881882a1ae655aee4322e8c8",
      "new_mode": 33188,
      "new_path": "termui/termui.go"
    },
    {
      "type": "modify",
      "old_id": "39148cd2b988dbe1cdd0ec8b6c095a548d9b209b",
      "old_mode": 33188,
      "old_path": "webui/src/fixtures/dummy.ts",
      "new_id": "9eeb3205f64415f4484fb0de86322fb233def01c",
      "new_mode": 33188,
      "new_path": "webui/src/fixtures/dummy.ts"
    },
    {
      "type": "modify",
      "old_id": "713f9f6a2faec82d0c8d50ec8d427aec3773f984",
      "old_mode": 33188,
      "old_path": "webui/src/types.ts",
      "new_id": "81d2d1d15567fc769d21ab2b519684e7ec85b5fc",
      "new_mode": 33188,
      "new_path": "webui/src/types.ts"
    },
    {
      "type": "modify",
      "old_id": "d0cf3d7df3a8bf9e4960a9321398f7b3885b662e",
      "old_mode": 33188,
      "old_path": "webui/src/web-components/DEAR_LLM.md",
      "new_id": "13fd9d1e959e13bddc7e8d8ed7dbef341c00b16e",
      "new_mode": 33188,
      "new_path": "webui/src/web-components/DEAR_LLM.md"
    },
    {
      "type": "modify",
      "old_id": "07c355df9beccffe71b9ffe2841616ca1e62d60e",
      "old_mode": 33188,
      "old_path": "webui/src/web-components/sketch-app-shell.ts",
      "new_id": "89ebcd511b668fe64b473e843f5d715d73cc4147",
      "new_mode": 33188,
      "new_path": "webui/src/web-components/sketch-app-shell.ts"
    },
    {
      "type": "modify",
      "old_id": "eca625b2bb8a966472ba32c3b3082bcafcb9011b",
      "old_mode": 33188,
      "old_path": "webui/src/web-components/sketch-container-status.test.ts",
      "new_id": "ded29179f19e9e8fc268b1b447bfa6f60ca4a7a0",
      "new_mode": 33188,
      "new_path": "webui/src/web-components/sketch-container-status.test.ts"
    },
    {
      "type": "modify",
      "old_id": "792e893e6c4134431f2b735a4d63237efed7efd7",
      "old_mode": 33188,
      "old_path": "webui/src/web-components/sketch-tool-calls.ts",
      "new_id": "270213e1a0c1ab2e818fe31cfbd7988b760e99f7",
      "new_mode": 33188,
      "new_path": "webui/src/web-components/sketch-tool-calls.ts"
    },
    {
      "type": "modify",
      "old_id": "28edf3c7d86954d433c065449d573944760e8fdd",
      "old_mode": 33188,
      "old_path": "webui/src/web-components/sketch-tool-card.ts",
      "new_id": "c12f72252a16b61fc3cf4af0983ad458b7ffc031",
      "new_mode": 33188,
      "new_path": "webui/src/web-components/sketch-tool-card.ts"
    }
  ]
}
