You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Delete .github/workflows/sync-branches.md and .github/workflows/sync-branches.lock.yml. The workflow is currently broken and doing no useful work.
Current state — it doesn't work
Every recent run of sync-branches is failing. Two overlapping problems:
Lock-file drift.sync-branches.md has been edited without running gh aw compile sync-branches, so the activation step bails out with:
##[error]ERR_CONFIG: Lock file '.github/workflows/sync-branches.lock.yml' is outdated!
The workflow file '.github/workflows/sync-branches.md' frontmatter has changed.
Run 'gh aw compile' to regenerate the lock file.
Even if we re-compiled it, it wouldn't push. The workflow declares permissions: read-all (to pass gh-aw's strict-mode compile check); that compiles to an empty permissions: {} in the lock file; which means the default GITHUB_TOKEN has no write access. No GH_AW_GITHUB_TOKEN PAT is configured in this repo (gh secret list returns empty). Any git push attempt would be rejected with 403.
The Python script uses capture_output=True and appends to a failed list — it does not fail the workflow on push errors. So before the lock-file drift, the workflow was silently reporting green while syncing zero branches.
Why we don't need it anyway
The per-iteration Step 3 logic in autoloop.md (landed in #179) already does the fast-forward-when-ahead=0 or merge-when-diverged on the program's branch at the start of every iteration. That's the same work sync-branches was meant to do between iterations — except it happens on the branch that's actually about to be iterated, at the moment it's needed, with the agent on hand to resolve any merge conflicts.
Roles that sync-branches was theoretically still doing:
Role
Why it doesn't matter
Bring paused programs' branches current
They're paused — no one's iterating on them.
Surface merge conflicts before iteration
Iteration's Step 3 surfaces them the same way, on the branch that's about to be touched.
Remove "N commits behind" UI banner between iterations
Cosmetic.
Propagate main's fixes faster than the program's schedule
The schedules are 30 min and 6 h — fast enough.
None of these justify a broken workflow that's also fighting strict-mode compile and token permissions.
Audit for any references. Likely candidates: docs, READMEs, install.md-style instructions. Remove or rewrite to point at the per-iteration Step 3 as the branch-freshness mechanism.
Commit, open a PR.
That's the entire change. No agent prompt updates needed — autoloop.md already owns branch freshness via Step 3.
Follow-on
File the same removal upstream (already tracked — see cross-reference below). Once upstream drops it too, future installs won't re-introduce the broken workflow.
Acceptance
.github/workflows/sync-branches.md and .lock.yml are gone from this repo.
No references to sync-branches remain in docs.
The autoloop program iteration still brings its branch current at Step 3 (no regression — verify with the next scheduled run on any active program).
Upstream removal tracking: proposed on githubnext/autoloop — will be linked once filed.
Historical: sync-branches's lock-file drift symptom has been showing up in recent workflow runs for days; removal rather than re-compile is the right resolution.
Summary
Delete
.github/workflows/sync-branches.mdand.github/workflows/sync-branches.lock.yml. The workflow is currently broken and doing no useful work.Current state — it doesn't work
Every recent run of sync-branches is failing. Two overlapping problems:
Lock-file drift.
sync-branches.mdhas been edited without runninggh aw compile sync-branches, so the activation step bails out with:Even if we re-compiled it, it wouldn't push. The workflow declares
permissions: read-all(to pass gh-aw's strict-mode compile check); that compiles to an emptypermissions: {}in the lock file; which means the defaultGITHUB_TOKENhas no write access. NoGH_AW_GITHUB_TOKENPAT is configured in this repo (gh secret listreturns empty). Anygit pushattempt would be rejected with 403.The Python script uses
capture_output=Trueand appends to afailedlist — it does not fail the workflow on push errors. So before the lock-file drift, the workflow was silently reporting green while syncing zero branches.Why we don't need it anyway
The per-iteration Step 3 logic in
autoloop.md(landed in #179) already does the fast-forward-when-ahead=0 or merge-when-diverged on the program's branch at the start of every iteration. That's the same work sync-branches was meant to do between iterations — except it happens on the branch that's actually about to be iterated, at the moment it's needed, with the agent on hand to resolve any merge conflicts.Roles that sync-branches was theoretically still doing:
None of these justify a broken workflow that's also fighting strict-mode compile and token permissions.
Concrete removal
git rm .github/workflows/sync-branches.md .github/workflows/sync-branches.lock.yml.install.md-style instructions. Remove or rewrite to point at the per-iteration Step 3 as the branch-freshness mechanism.That's the entire change. No agent prompt updates needed —
autoloop.mdalready owns branch freshness via Step 3.Follow-on
File the same removal upstream (already tracked — see cross-reference below). Once upstream drops it too, future installs won't re-introduce the broken workflow.
Acceptance
.github/workflows/sync-branches.mdand.lock.ymlare gone from this repo.Related
githubnext/autoloop— will be linked once filed.