One simple solution to animate a rotating root motion is to 'bend' the desired forward distance onto a fraction of a full circle.
For example:
My human character walks in one second 1.5 meters. Now I would like him to travel in sum 90° left or right from the starting position. That means he must travel 1.5 meters on the perimeter of a circle.
The question now is how big is the radius of the circle.
We know that the perimeter of a full circle is (1) p = 2*pi*r. Furthermore our desired distance d on the circle is only one quarter of the perimeter (2) d = p/4.
If we combine equation (1) and (2) and solve for r we get: r = (2 * d)/pi.
For our 1.5m walk animation we get r = 0.95m.
Now we only need to shift our 3d cursor 0.95m and rotate the root bone around this 3d cursor: