Seven months ago I ran into some issues with a legacy sortable list (I didn’t code it, just copied and pasted it).
It was working okay enough, except when you needed to move the first item down (say from point A to B), you had to drag the last item up, forcing the first item to move down on its own (so forcing B to go to A).
And every time you just wanted to move an item (say from point B to C) you had to dance around with the draggable to try to find where you could drop it so that it would work.
The only way it would work for sure, was if you dragged the item to the area 33% from the right-side edge of the ‘dropable’ container.
Let me illustrate.

This of course was not acceptable. But I didnt know better (and the scriptaculous documentation was no help).
So I went through the draggable.js file, and found the section in Sortables. This is where I saw the part in the code where it implements “overlay”.
If your sortable needs to move up/down, set the overlap option to “vertical”. Mine was set to “horizontal” which is why it was acting whishy-washy.
So now its fixed. Yay for learning.