Skip to content

auto-merge-ready-prs.yml has not parsed since 2026-07-07 — one under-indented line #2245

Description

@gHashTag

.github/workflows/auto-merge-ready-prs.yml on master fails on every trigger and has done since commit 7644b30d (2026-07-07, "fix(igla): harden auto-merge and brain-seal-refresh workflows").

GitHub says it plainly: "This run likely failed because of a workflow file issue." Zero jobs, run_started_at == updated_at to the second.

Defect — line 62, column 1. The step's script is a literal block scalar opened by run: | at line 31; its content indent is fixed at 10 spaces by the first non-empty line. Line 62 has 0 spaces, so the scalar terminates at line 61 and the parser reads $BODY" | grep -qiE "$L1_RE"; then as a top-level YAML node. YAML spec §8.1.1.

Two independent parsers agree — PyYAML 6.0.3 and Ruby Psych/libyaml both fail the original at 62:1 and both parse the fix.

Fix: 10 spaces, one line, whitespace only. Those 10 spaces are exactly the block scalar's indent, so YAML strips them — the shell receives byte-identical text. Confirmed at the extracted-shell level: the characters between $TITLE and $BODY in the parsed run: string are a bare \n, nothing else. "".join(orig.split()) == "".join(fixed.split()) is True.

No merge condition changes. The L1 regex, the approved-review gate, the failing-check gate, the NotebookLM exclusion, --merge --delete-branch and both dry_run branches are untouched.

Consequence: the repository has had no working auto-merge for six weeks, which is why ready PRs accumulate.

Two things not fixed here. 17 branches carry a different copy with the same class of bug (a shell else under-indented out of its block at line 78). And 274 branches carry master's broken blob, so any PR merged from one propagates it — this fix must win the merge or be re-applied.

Not used as the fix: 139 branches (including main) have a copy that parses, but it is the older pre-hardening version lacking the L1 and approved-review gates entirely. Restoring it would weaken the merge conditions.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions