)]}'
{
  "commit": "ede97b5c7b8d1ddacd5383601798a67aaac2077c",
  "tree": "54e2fadbd177ccd245061c4ede705fdd71eb5df9",
  "parents": [
    "61d28ed38b895446a4f3806e41652fb3b6b558ea"
  ],
  "author": {
    "name": "William Moses",
    "email": "gh@wsmoses.com",
    "time": "Tue Oct 06 21:24:40 2026 +0000"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Oct 06 16:24:40 2026 -0500"
  },
  "message": "Answer whether the augmented pass used a primal from the augmented pass (#3442)\n\nIn split mode the augmented forward pass and the reverse pass are separate\ncompilations, and their differential use analyses can disagree on whether\nthe primal of a call was used, e.g. when only the augmented function\nreturns it. A caller rebuilding how a call was augmented, such as a custom\nrule choosing its config and tape layout, needs the augmented pass\u0027s\nanswer. Record the augmented pass\u0027s unnecessary values and recompute\ndecisions in its AugmentedReturn, and expose\nEnzymeGradientUtilsGetAugmentedPrimalReturnUsed, which answers from them\nin the reverse pass.\n\n\nClaude-Session: https://claude.ai/code/session_015RAaewsVwF5wyRBfErBEEr\n\nCo-authored-by: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9bb3beb7eb79113424bf2883441cf6cd018def5a",
      "old_mode": 33188,
      "old_path": "enzyme/Enzyme/CApi.cpp",
      "new_id": "df7e3dddcb9513475b69685c26b0695cf93c5c94",
      "new_mode": 33188,
      "new_path": "enzyme/Enzyme/CApi.cpp"
    },
    {
      "type": "modify",
      "old_id": "40a84b9672a200abc6b5024e7c419d8e3b9abed2",
      "old_mode": 33188,
      "old_path": "enzyme/Enzyme/EnzymeLogic.cpp",
      "new_id": "99e466449625684cc11af7c7f5ea973965612d15",
      "new_mode": 33188,
      "new_path": "enzyme/Enzyme/EnzymeLogic.cpp"
    },
    {
      "type": "modify",
      "old_id": "5491e0bc38d04fe664727a7e2fdb84499f15bfdc",
      "old_mode": 33188,
      "old_path": "enzyme/Enzyme/EnzymeLogic.h",
      "new_id": "4cf33df953c9dda6d477271f406f353eca6aa431",
      "new_mode": 33188,
      "new_path": "enzyme/Enzyme/EnzymeLogic.h"
    },
    {
      "type": "modify",
      "old_id": "fa15b96491691d4e5f818483568a9a12c6978ee2",
      "old_mode": 33188,
      "old_path": "enzyme/Enzyme/GradientUtils.cpp",
      "new_id": "97ea2dcf4a61de5d31ce406806c888be657c71c4",
      "new_mode": 33188,
      "new_path": "enzyme/Enzyme/GradientUtils.cpp"
    },
    {
      "type": "modify",
      "old_id": "f023b8f97ad24b29eb1968ad9d6c74e6a5625d75",
      "old_mode": 33188,
      "old_path": "enzyme/Enzyme/GradientUtils.h",
      "new_id": "ff946759897b1968b18f16d731114ef2213a8623",
      "new_mode": 33188,
      "new_path": "enzyme/Enzyme/GradientUtils.h"
    }
  ]
}
