In case, just I did, you pasted a bank in a bad slot and loose 2 hours of work Isn’t it ?
My error was caused by a bug in first 3.8.1 firmware : when pasting full bank , bank name and presets are not refreshed, we have to disconnect/reconnect the editor.
A little hard within the controller unfortunately as we’re working with limited resources (RAM and storage)
No just in the editor, in memory and by session , not even necessary to use a stack, but you can, just pushing the old values, banks or preset only, the operation and place where it occurs ?
Undo button pops the value and apply the same operation.
Not rocket science comparing to what you already did and so valuable.
Not sure if feasible yet, but have added into our backlog to explore in the future