It snaps back the the first widget in the hierarchy. As if ResetPosition() was called on the ScrollView, but it's not. I noticed that UpdatePosition in the ScrollView is called everytime this "snap to the beginning" is happening.
I was able to replicate it setting up a new scene with the hierarchy described in the first post.
I just put centerOnClick on all widgets under the grid/centerOnChild component, though it did not make any difference.