IMPORTANT PUBLISHING GUARD — merge into app/Console/Commands/DispatchDuePosts.php

Find the scheduled-post query:

    Post::where('status', 'scheduled')
        ->where('scheduled_at', '<=', now())

Change it to:

    Post::where('status', 'scheduled')
        ->where(function ($query) {
            $query->whereNull('approval_status')
                  ->orWhere('approval_status', 'approved');
        })
        ->where('scheduled_at', '<=', now())

This makes the dispatcher ignore posts awaiting approval or returned for changes. Review the exact query in your project before applying, because the source bundle contains snippets rather than a complete repository.
