tweak commit! and destroy! logic