Hi Joris,
thanks for sharing your view. I see that R3 is a live tool, and adding undo functionality seems to be tricky.
What about adding a few switches to the preferences allowing to select which input (per source) should be added to the undo-history.
For example:
Keyboard input,
Mouse input,
MIDI input,
OSC input, etc.
everything else should not be subject for undo...
Important things for undo might be:
delete things like clips, FX, layer
changes of FX parameters
as a first step an undelete function would be great