Once the staging area is done you present the failures (if any) to the user and ask what they want to do about them, then commit as a single transaction (and set operation) from staging into the main ...