With tasks like T73993 and D6678, there is a need to use the snap system in Gizmos.
But for this, it is important to find a way to know if the object's geometry has changed before reusing its SnapObjectData.
The solution is to use the em->mesh_eval_... bvh_cache and clear the SnapObjectData cache when the object mode changes.