GitHub Actions pull_request run excluded on draft PRs
By default a pull_request workflow runs for draft PRs too, but teams often gate jobs to skip drafts. If a job is conditioned on the PR not being a draft, it will not run until the PR is marked ready - which can look like a missing required check.
What this error means
Checks do not run on a draft PR, or required checks stay pending until the PR leaves draft.
github-actions
This workflow run was skipped for the draft pull request.
The job condition excludes draft pull requests (github.event.pull_request.draft == true).Common causes
Job gated on draft state
An if condition skips the job while github.event.pull_request.draft is true.
Expectation mismatch on required checks
A required check that is skipped on drafts leaves merge blocked until the PR is ready.
How to fix it
Gate intentionally and mark ready when needed
- To skip drafts, condition the job on the draft flag explicitly.
- Mark the PR Ready for review to trigger the gated checks.
- Use the ready_for_review event type if you want runs precisely when drafts become ready.
.github/workflows/ci.yml
on:
pull_request:
types: [opened, synchronize, ready_for_review]
jobs:
test:
if: github.event.pull_request.draft == falseHow to prevent it
- Decide deliberately whether required checks should run on drafts.
- Use ready_for_review to trigger when a draft becomes ready.
Related guides
GitHub Actions workflow run skipped due to a path filterFix GitHub Actions runs that unexpectedly do not trigger because the on.push/pull_request paths filter exclud…
GitHub Actions if condition always runs (string vs expression)Fix a GitHub Actions if condition that always runs - a bare string in if is truthy, so the step never skips.
GitHub Actions Workflow Not Triggering - Fix the on: BlockFix a GitHub Actions workflow that never runs - wrong on: events, path or branch filters that exclude your ch…