dedupe code in FedoraTransactions, and fail earlier in commit/rollback actions where there is a non-empty path