Any user can delete contacts. This could be done by mistake or even intentionally . A normal user should only be able to 'Archive Contacts and Companies" and not Delete in Bulk (this can not be undone)
Archived Contacts would be able to be Un-Archived. Or at least remain in an Archived state for 90 days before being deleted. More admin functions on Company / Contact access would be great as well. I think this is available in Partner Center now. Is this coming to Business App?