WordPress people are smarter than this. But lack of information, and access to the website makes it hard to debug issues.
De-activate all plugins. Easy way is connect to your server with FTP and rename the “wp-content/plugins” directory.
WordPress scheduling uses WP-Cron, and WP-Cron relies on users making requests to your website. If you have no users on your website overnight, your article will not be published. If you want to ensure your content is published on time then you’ll need access to your servers cron jobs.
You can enable debugging in the wp-config.php file, this will output error messages for you..
Also does it actually say “Schedule Failed” or does it actually say “Missed Schedule” ? Correct terminology makes it easier to fix.
Lastly, what version of WordPress are you running, and are you using any out of date plugins?