fix(ci): repair instant-sync.yml — GitHub cannot parse it, so it has never run - #28
Conversation
…never run
This workflow file is invalid YAML. GitHub refuses it at parse time, so it
produces NO run, NO check-run, NO annotation and NO log. Not a red X — an
absence. Nothing on a dashboard distinguishes "this gate passed" from "this
gate does not exist", which is why it went unnoticed.
The tell is the Actions API reporting the workflow's name as its FILE PATH
instead of its `name:` — GitHub registers a file it cannot parse under its
path:
name = ".github/workflows/instant-sync.yml"
path = ".github/workflows/instant-sync.yml" <- name == path
The repair is purely positional; no step, command or argument is altered.
Depending on the file it is one of:
* a step appended at JOB level (2-space indent) moved back inside the
preceding job's `steps:` list; or
* a multi-line shell string whose continuation fell out of its `run: |`
block scalar, re-indented so it stays inside. YAML strips that indent
again when parsing, so the shell receives the identical string.
VERIFIED before push, not assumed:
* the file parses and yields a `jobs:` mapping;
* every `- name:` present before is still a step after;
* exactly one file changed.
Part of a measured estate-wide repair: 211 invalid workflow files across 116
repos, confirmed by the Actions API.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
Note Automatic reviews are paused because your trial's included automatic processing has been used for this period. Upgrade now, or comment "Gitar review" to run a review anytime. Code Review ✅ ApprovedRepairs YAML indentation in the instant-sync.yml workflow file so GitHub Actions can parse and run it. No issues found.
OptionsDisplay: compact → Showing less information. Comment with these commands to change the behavior for this request:
Was this helpful? React with 👍 / 👎 | Gitar |
|
|
🔍 Hypatia Security ScanFindings: 51 issues detected
View findings[
{
"reason": "Issue in scorecard.yml",
"type": "missing_workflow",
"file": "scorecard.yml",
"action": "create",
"rule_module": "workflow_audit",
"severity": "high"
},
{
"reason": "Issue in ci.yml",
"type": "npermissions_typo",
"file": "ci.yml",
"action": "fix_typo",
"rule_module": "workflow_audit",
"severity": "high"
},
{
"reason": "codeql.yml lists `language: javascript-typescript` but the repo has no source files in any CodeQL-scannable language. The analyze job will exit 'no source files' on every run. Switch the matrix to `actions` (which scans workflow files — every repo has those).",
"type": "codeql_language_matrix_mismatch",
"file": "codeql.yml",
"action": "switch_codeql_matrix_to_actions",
"rule_module": "workflow_audit",
"severity": "high"
},
{
"reason": "Issue in boj-build.yml",
"type": "missing_timeout_minutes",
"file": "boj-build.yml",
"action": "flag",
"rule_module": "workflow_audit",
"severity": "medium"
},
{
"reason": "Issue in casket-pages.yml",
"type": "missing_timeout_minutes",
"file": "casket-pages.yml",
"action": "flag",
"rule_module": "workflow_audit",
"severity": "medium"
},
{
"reason": "Issue in casket-pages.yml",
"type": "missing_timeout_minutes",
"file": "casket-pages.yml",
"action": "flag",
"rule_module": "workflow_audit",
"severity": "medium"
},
{
"reason": "Issue in ci.yml",
"type": "missing_timeout_minutes",
"file": "ci.yml",
"action": "flag",
"rule_module": "workflow_audit",
"severity": "medium"
},
{
"reason": "Issue in codeql.yml",
"type": "missing_timeout_minutes",
"file": "codeql.yml",
"action": "flag",
"rule_module": "workflow_audit",
"severity": "medium"
},
{
"reason": "Issue in hypatia-scan.yml",
"type": "missing_timeout_minutes",
"file": "hypatia-scan.yml",
"action": "flag",
"rule_module": "workflow_audit",
"severity": "medium"
},
{
"reason": "Issue in instant-sync.yml",
"type": "missing_timeout_minutes",
"file": "instant-sync.yml",
"action": "flag",
"rule_module": "workflow_audit",
"severity": "medium"
}
]Powered by Hypatia Neurosymbolic CI/CD Intelligence |
.github/workflows/instant-sync.ymlis invalid YAML. GitHub refuses it at parse time, so it produces no run, no check-run, no annotation and no log — not a red X, an absence.The tell: the Actions API reports the workflow's
nameas its file path instead of itsname:.The repair is purely positional
No step, command or argument is altered. Depending on the file it is one of:
steps:list; orrun: |block scalar, re-indented so it stays inside. YAML strips that indent again when parsing, so the shell receives the identical string.Verified before push, not assumed
jobs:mapping- name:present before is still a step after — no step lostScope
Part of a measured estate-wide repair: 211 invalid workflow files across 116 repos, confirmed by the Actions API.
🤖 Generated with Claude Code