Root cause: The merge driver matched issues by IssueKey (ID+CreatedAt+CreatedBy). When timestamp precision differed (e.g., with/without nanoseconds), the same issue was treated as two different issues, causing both tombstone and closed versions to appear in the merge result. Fix: Added ID-based fallback matching in merge3WayWithTTL. When key-based matching fails but the same ID exists in the other side, use that for merging. Also track processed IDs to prevent duplicates. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
24 KiB
24 KiB