Skip to content
Latchkey

GitHub Actions reusable workflow uses must be a valid pinned reference

A reusable workflow call must reference a workflow file with a ref. A bare path or missing @ref is rejected.

What this error means

The workflow is rejected because the uses: value for a called workflow is not a valid full reference with a ref.

github-actions
The workflow is not valid. .github/workflows/ci.yml (Line: 7): Invalid value. Expected format {owner}/{repo}/.github/workflows/{filename}@{ref}

Common causes

Missing @ref

A called workflow must end with @ref (a branch, tag, or SHA). Omitting it fails validation.

Wrong path to the workflow file

The path must be the full .github/workflows/<file>.yml within the owner/repo.

How to fix it

Use the full reusable workflow reference

  1. Reference owner/repo/.github/workflows/file.yml@ref.
  2. For same-repo calls, use ./.github/workflows/file.yml.
.github/workflows/ci.yml
jobs:
  call:
    uses: octo-org/repo/.github/workflows/build.yml@v1

How to prevent it

  • Pin reusable workflows to a tag or SHA for stability.
  • Run actionlint to validate reusable workflow references.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →