Hi, I finally chose a git library for my initial tests. Git::Repository appears reasonably easy to use and has few dependencies. I tried taking a snapshot (making a commit) on every new chain setup. I see it just brings a lot of churn, because you're always toggling between recording and monitoring. And some effects (such as fades) get new effect IDs every time. I'm thinking to skip automatically storing any setup that writes WAV files, since Nama writes WAV files only in order to monitor them. 're-record' is one way to go back to a previous recording setup. If that is not enough, perhaps Nama could have 'recording profiles' to be able to return to a a set of track REC/MON settings again and again, while allowing the effect settings (used for monitoring) to evolve. Returning to a particular commit in order to restore that commit's REC settings would have the side effect of discarding any intervening tweaks in effect settings. Also, I think git's branching (and possibly merging) abilities will be mainly useful to mixing and mastering, i.e. monitoring modes. The user can manually checkpoint a recording setup if she wants. Nama doesn't have to do it for her. Persistently yours, -- Joel Roth