Is this gumball behaviour correct?

I start with gumball is set to ‘World’. But after moving and I set it to Object - it’s axis aren’t locked to the object? I thought regardless of the initial gumball mode, Rhino would remember the object orientation in the background so that when I switched to Object it would be properly aligned.

So the gumball needs to be set to object before any manipulations in order for the gumball to maintain object orientation during moving?

Hello- setting gumball to object is only effective if the object has an inherent plane - otherwise is behaves like ‘CPlane’. Generally polysurfaces like your cones do not have a built in, unabiguous reference plane like say an extrusion object has, or an arc or circle.
That said, there is definitely more that could be done to set reasonable object reference planes.