Use this skill when merging origin/main into a branch, especially when the
only conflicts are generated .github/workflows/*.lock.yml files.
One-step path
From the repository root, run:
./.github/skills/resolve-merge-conflicts/resolve.sh origin/main
The command works both before a merge and after another command has stopped on conflicts. It:
- Starts the merge with
--no-commit, or resumes the current merge. - Refuses to auto-resolve if any conflict is not a workflow
.lock.yml. - Runs
make recompileonce so generated files come from the merged Markdown. - Stages the regenerated conflicting lock files.
- Verifies that no unresolved paths or whitespace errors remain.
The script does not fetch, commit, push, abort, or edit workflow Markdown.
Refresh origin/main first only when credentials are available. After success,
review the staged merge, run the repository's final validation gate, then
commit and push.
Safety rules
- Never choose
oursortheirsfor compiled lock files; regenerate them. - Never manually remove conflict markers from
.lock.ymlfiles. - Never auto-resolve a source
.md, Go, JavaScript, or other mixed conflict. - If the script refuses a mixed conflict, resolve source conflicts on their merits, stage them, and rerun the same command. It will regenerate the remaining lock conflicts.
- Do not abort an existing merge unless the user explicitly requests it.