Root motion inconsistent for fast animations?

I have a “stab” type animation for a character that uses back-and-forth root motion. This works properly with root motion enabled, and the preview is correct in the montage with “Process Root Motion” enabled. The character moves and returns perfectly accurately.

However, in-game, the character inconsistently but often ends up a fair bit behind where it started. To reproduce this, I’ve created a test project with a sphere that will “stab” forward when you press LMB or facebutton-left. This example is even more pronounced, always leaving the sphere a long way behind where it started.

118894-ex1.png

118895-ex2.png

I’m new to UE4 and I’m sure this is some setting I don’t have correct, but getting this set up right seems necessary for accurate, tight animations.

Still happens to me on 4.17