In reading settings posts are set to “blog” and I have page-blog.php but no posts

When a page is set to be the page for posts, it ceases to be a “page”, and follows a different path in the Template Hierarchy:

By default, WordPress sets your site’s home page to display your latest blog posts. This page is called the blog posts index. You can also set your blog posts to display on a separate static page. The template file home.php is used to render the blog posts index, whether it is being used as the front page or on separate static page. If home.php does not exist, WordPress will use index.php.