Visting slug for ‘post’ post type shows 404 not archive?

No, that is correct, news has nothing to do with your structure… it’s just a word…

But you can get a way around it…

you could copy archive.php and name it something like template-news.php

then edit the template-archive.php… put this at the top… just below ‘

<?php

/*
* Template Name: News
*/

Then add a new page in your dashboard… make sure the slug is news. Then choose the template ‘News’ on Templates. Then publish..