When syncing JSONL to worktree, if the worktree has more issues than local, merge them instead of blindly overwriting. This prevents fresh clones from accidentally deleting remote issues when they sync with fewer issues than the sync branch. Root cause of GitHub #464: A fresh clone with sync-branch configured would start with an empty database (since JSONL is on sync-branch, not HEAD). When syncing, the local 1-issue JSONL would overwrite the remotes 10-issue JSONL, and the subsequent 3-way merge would see this as local deleted 9 issues causing deletion to win. The fix compares issue counts and triggers a merge when local has fewer issues than the worktree (remote). Uses 3-way merge with empty base to combine both sets of issues. Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
23 KiB
23 KiB