Looks like I’ m in the right ballpark. Adding these lines to my custom Movement Component stops the precision issues (added after SafeMoveUpdatedComponent is called to actually change the transform). The problem now of course is most of the time I’m doing two Bounds, Render Transform and Child Transform updates for each object.
// Force-Update Transform!
UpdatedComponent->UpdateBounds();
UpdatedComponent->MarkRenderTransformDirty();
UpdatedComponent->UpdateChildTransforms(EUpdateTransformFlags::PropagateFromParent, ETeleportType::None);
It’s odd, because PropagateTransformUpdate calls these things even if the transform DOESN’T change… so I really am getting lost now!