Could you explain why the after_destroy_commit is not within the transaction block ? Is it desired behavior to still execute it even though there might have been a rollback ?