Ah, wait- are you actually moving the data from the live table to the snapshot table or copying the data?
If moving, then I guess it's a bit easier.
1) Edit: non-issue, since the record ID should stay the same.
2) Edit/Delete: non-issue, since the record ID should stay the same or get deleted.
3) Add: just add the entry to the live table (to get the incremental record ID) then immediately move it to the staging table.