GetPhysicsLinearVelocity returns correct velocity with non physics movement.

While messing around I found GetPhysicsLinearVelocity returns the proper velocity when the root component is moved using AddWorldOffset. However this breaks the moment a sub component is rotated using AddWorldRotation.

My setup is SphereCollisionRoot -> SkeletalMeshComponent -> ChildSphereCollision. When I apply just a AddWorldOffset to the SphereCollisionRoot I can then call GetPhysicsLinearVelocity and I get proper velocity from this movement even though it was done in a non physics fashion. However, when i use AddWorldRotation on the ChildSphereCollision, and then do a AddWorldOffset on the SphereCollisionRoot, the expected velocity is now broken. I don’t understand how it worked to begin with and furthermore why is breaks when rotation is applied to a child component. Any ideas?