Could something like this be done in a tool? https://forum.renoise.com/t/saving-song-snapshots-versions/47694
I would not want to code such a thing in pure lua for sure, as there are many existing components that could help better there.
So any such tool would realistically just be a front-end for something else.
That said, I love the idea. We’re also talking about it over here:
https://forum.renoise.com/t/rnsgit-wrapper-script-to-help-manage-versioning-songs-with-git/43667