It appears two undo events get added to the undo stack when middle-clicking on a parameter and using the value ladder. Using the value ladder you have to undo twice to undo your last change, two undo events happen but only the second actually changes the value