I had a similar issue and it usually comes down to the import settings. Make sure you’ve actually assigned a ‘Root Bone’ in the Import tab of your model (under the Retarget section). If Godot doesn’t know which bone is the root, get_root_motion_position() just returns zeros. Once you set it there and re-import, it usually snaps right into place.
Problems was that documentation didnt specify that you have to retarget skeleon after import. Root bone was set in the root motion tab. And for forward movement it was working, but rotation didnt work until you retargeted skeleton and made a new bonemap.