Skip to content
Latchkey

Dependabot GITHUB_TOKEN does not trigger workflows in CI

By design, events created using the built-in GITHUB_TOKEN (including Dependabot pushes) do not trigger new workflow runs, to prevent recursive runs. If your checks only run on push or on tokens, a Dependabot PR can sit with no checks and block automerge.

What this error means

A Dependabot PR shows "Expected - Waiting for status to be reported" indefinitely, or no workflows appear at all, so required checks never pass.

GitHub Actions
This branch has not been checked yet.
Expected - Waiting for status to be reported (required)

Common causes

Workflows only trigger on events the token cannot raise

A push made with GITHUB_TOKEN does not start new runs. If a required check only listens on such events, it never fires for Dependabot commits.

Required checks are gated behind the wrong trigger

The check runs on push but the branch protection expects it on pull_request, so the Dependabot PR waits forever.

How to fix it

Trigger CI on pull_request events

  1. Ensure required checks run on pull_request (which Dependabot PRs raise).
  2. Do not rely on a GITHUB_TOKEN push to start them.
  3. Confirm the check names match the required contexts in branch protection.
.github/workflows/ci.yml
on:
  pull_request:
  push:
    branches: [main]

Use a PAT or app token when a re-trigger is required

If you must push commits that themselves start workflows, use a personal access token or GitHub App token stored as a Dependabot secret instead of the default token.

How to prevent it

  • Run required checks on pull_request so Dependabot PRs are always checked.
  • Match required check contexts exactly to workflow job names.
  • Reserve PAT/app tokens for cases that must re-trigger workflows.

Frequently asked questions

What causes "GITHUB_TOKEN does not re-trigger CI"?
A push made with GITHUB_TOKEN does not start new runs. If a required check only listens on such events, it never fires for Dependabot commits.
How do I fix GITHUB_TOKEN does not re-trigger CI?
Trigger CI on pull_request events

Related guides

References

Run this faster and cheaper on Latchkey managed runners - self-healing included. Start free → 30-day trial · No credit card