)]}'
{
  "commit": "c5c75e860794572e8daf68d8d46ae1563fda6a45",
  "tree": "13c06cf26044d7ae8ae70b0e6ff539e0fb47b78b",
  "parents": [
    "194511c9bfa26dc5b4027c7180e9554f2ce83e65"
  ],
  "author": {
    "name": "Sergiu Deitsch",
    "email": "sergiu.deitsch@gmail.com",
    "time": "Sun Oct 04 02:10:10 2026 +0200"
  },
  "committer": {
    "name": "Sergiu Deitsch",
    "email": "sergiu.deitsch@gmail.com",
    "time": "Mon Oct 05 11:13:41 2026 +0200"
  },
  "message": "Do not differentiate the norm at gimbal lock\n\nAt gimbal lock, the norm determining the middle Euler angle is exactly\nzero. Its kink carries over through atan2, so the angle has no\nderivative. Differentiating the norm anyway produces NaN derivatives.\n\nCompute the norm only away from gimbal lock and use its zero subgradient\notherwise. Likewise, compute the norms in the quaternion manifold test\nfunctor only if they are nonzero.\n\nChange-Id: Ic5c4eaaf1b268b7f002c1489296b212fd45f7727\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7062ec3d028e37897c270440cb1ed0004d3d75fd",
      "old_mode": 33188,
      "old_path": "include/ceres/rotation.h",
      "new_id": "6571a6884a3c714865c0387903924f55b11c3f54",
      "new_mode": 33188,
      "new_path": "include/ceres/rotation.h"
    },
    {
      "type": "modify",
      "old_id": "c7a473d2364ed6519637461e634b047fd71f33bf",
      "old_mode": 33188,
      "old_path": "internal/ceres/autodiff_manifold_test.cc",
      "new_id": "8c7de267d4826baa892b60c41ddcf48e44f904fb",
      "new_mode": 33188,
      "new_path": "internal/ceres/autodiff_manifold_test.cc"
    },
    {
      "type": "modify",
      "old_id": "d7093bc9d4bc9a30c4c3c151f95ff8969f7f9b0d",
      "old_mode": 33188,
      "old_path": "internal/ceres/rotation_test.cc",
      "new_id": "3a2c1177c094d8c6b84950e7e7cd11860ba2d5c7",
      "new_mode": 33188,
      "new_path": "internal/ceres/rotation_test.cc"
    }
  ]
}
