Summary
The Lint Workflows job failed because actionlint v1.7.12 rejects an empty string ('') as an option in a workflow_dispatch choice input inside the auto-generated agentics-maintenance.yml file.
Failure Details
- Run: 24491511686
- Commit:
fbe49a78b247f03a2435f5d93d12e754ee869d5d
- Trigger: push to
main
- Failed Job:
Lint Workflows
- Passing Jobs: Lint & Format, Typecheck, Typecheck Extension, Lint Extension, all Tests
Root Cause Analysis
The commit "fix: recompile agentic workflow lock files with gh-aw v0.68.3 (#125)" triggered a regeneration of .github/workflows/agentics-maintenance.yml. The gh-aw v0.68.3 compiler generates a workflow_dispatch choice input with an empty string as both the default and as one of the options:
operation:
type: choice
default: ''
options:
- '' # <-- line ~46: actionlint rejects this
- 'disable'
- 'enable'
...
```
`actionlint` v1.7.12 introduced strict validation that `workflow_dispatch` choice input options must not be empty strings, producing:
```
.github/workflows/agentics-maintenance.yml:46:13: string should not be empty [syntax-check]
This is valid in GitHub Actions (empty string = "no selection"), but actionlint rejects it.
Failed Jobs and Errors
| Job |
Status |
Error |
| Lint Workflows |
❌ failure |
.github/workflows/agentics-maintenance.yml:46:13: string should not be empty [syntax-check] |
Investigation Findings
- The file is auto-generated by
gh-aw v0.68.3 and should not be manually edited
- The existing ignore flags in
ci.yml (-ignore SC2015 -ignore SC2086) only suppress shellcheck warnings, not this syntax-check error
- All other jobs (lint, typecheck, tests) passed successfully — this is an isolated linting regression
Recommended Actions
Prevention Strategies
- When upgrading
gh-aw compiler versions, run actionlint locally before pushing to catch generated-file compatibility issues
- Consider adding an
actionlint.yaml config file for fine-grained per-file suppression of known generated-file patterns
Historical Context
No previous failures of this type were found. All prior CI Failure Doctor investigations were TypeScript-related.
🩺 Diagnosis provided by CI Failure Doctor
Summary
The Lint Workflows job failed because
actionlintv1.7.12 rejects an empty string ('') as an option in aworkflow_dispatchchoice input inside the auto-generatedagentics-maintenance.ymlfile.Failure Details
fbe49a78b247f03a2435f5d93d12e754ee869d5dmainLint WorkflowsRoot Cause Analysis
The commit "fix: recompile agentic workflow lock files with gh-aw v0.68.3 (#125)" triggered a regeneration of
.github/workflows/agentics-maintenance.yml. The gh-aw v0.68.3 compiler generates aworkflow_dispatchchoiceinput with an empty string as both the default and as one of the options:This is valid in GitHub Actions (empty string = "no selection"), but actionlint rejects it.
Failed Jobs and Errors
.github/workflows/agentics-maintenance.yml:46:13: string should not be empty [syntax-check]Investigation Findings
gh-aw v0.68.3and should not be manually editedci.yml(-ignore SC2015 -ignore SC2086) only suppress shellcheck warnings, not this syntax-check errorRecommended Actions
-ignore 'string should not be empty'to theflagsin thelint-workflowsjob in.github/workflows/ci.yml:Prevention Strategies
gh-awcompiler versions, runactionlintlocally before pushing to catch generated-file compatibility issuesactionlint.yamlconfig file for fine-grained per-file suppression of known generated-file patternsHistorical Context
No previous failures of this type were found. All prior CI Failure Doctor investigations were TypeScript-related.