.agent/workflows/resolve-beads-conflict.md
Beads uses Dolt as its storage backend. Dolt handles merges natively using its built-in three-way merge, similar to git.
bd doctor
bd dolt pull
If bd dolt pull reports merge conflicts, Dolt will list the conflicting tables and rows.
Dolt provides SQL-based conflict resolution:
# View conflicts
bd sql "SELECT * FROM dolt_conflicts"
# Resolve by accepting ours or theirs
bd sql "CALL dolt_conflicts_resolve('--ours')"
# OR
bd sql "CALL dolt_conflicts_resolve('--theirs')"
# Verify the resolution
bd list --json | head
# Push the resolved state
bd dolt push
If you encounter merge conflicts in .beads/issues.jsonl from a legacy setup, import the resolved file:
# Resolve the git conflict in the JSONL file manually, then:
bd import -i .beads/issues.jsonl
git add .beads/issues.jsonl
git merge --continue