What problem does it solve? GitHub Actions workflow files can be syntactically valid YAML yet still be rejected by GitHub Actions at load time, producing the opaque failure "This run likely failed because of a workflow file issue" with zero jobs started. The most common cause is a # inside an unquoted ${{ }} expression being parsed as a YAML comment, silently truncating the value — a bug that yaml.safe_load and yamllint cannot catch. ## Core Features & Use Cases - Expression Quoting Rules: Teaches exactly when a run-name, name, if, env, or with scalar containing ${{ }} expressions must be wrapped in double quotes, with a reference table of characters that force quoting. - actionlint Validation: Provides a pinned, checksum-verified actionlint download and invocation (-shellcheck= -pyflakes=) that catches expression-grammar errors plain YAML linters miss. - Use Case: A PR edits a workflow's run-name to include format('Evaluate PR #{0}', ...) and every subsequent run on main fails with no jobs starting. This Skill diagnoses the truncated-expression bug, quotes the scalar correctly, and confirms the fix with actionlint before merge. ## Quick Start Review my changed files under .github/workflows/ for unquoted ${{ }} expressions containing # or colons, fix the quoting, and validate them with actionlint.