CRITICAL: Fixed dependency resurrection bug that caused removed/orphaned dependencies to keep coming back after sync. Root cause: mergeDependencies() was doing a union (additive only) and completely ignored the base parameter. This meant any dependency present in either left or right would be included, even if it was intentionally removed. Fix: Proper 3-way merge where REMOVALS ARE AUTHORITATIVE: - If dep was in base and removed by left OR right → stays removed - If dep wasn't in base and added by left OR right → included - If dep was in base and both still have it → included This fixes months of issues with orphaned parent-child relationships being resurrected during git sync operations. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
20 KiB
20 KiB