d3fa452504
Bisher wurde bei einem Konflikt (beide Seiten geaendert) der ganze Datensatz ueberschrieben - eine gleichzeitige Aenderung an einem anderen Feld ging verloren (z.B. A aendert Telefon in Outlook, B aendert Mail in Starface -> eine Aenderung weg). Jetzt: - Mapping speichert je Seite einen Snapshot des letzten Sync-Stands (LastOutlook/LastStarface), zusaetzlich zu den Hashes. - Bei beidseitiger Aenderung im Both-Modus wird feldweise gemergt (ContactMerger): unterschiedliche Felder bleiben beide erhalten, nur bei echtem Konflikt am selben Feld gewinnt Outlook. - Echte Feld-Konflikte landen in SyncResult.Conflicts und werden im MainForm per Tray-Meldung angezeigt. - Snapshots werden in allen Baseline-Punkten gesetzt (Phase 1-3) und fuer aeltere Mappings beim naechsten unveraenderten Sync nachgetragen. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>