Contributors shouldn't be able to trash/untrash any published posts, that's not their role. We should be checking current_user_can('publish_posts') and perhaps have an exception when post_status in pending and post_author is a contributor.