Commit Graph

6 Commits

Author SHA1 Message Date
af00495cee feat(sync): Optimize matching and updating of communication entries in bidirectional sync 2026-02-09 09:52:52 +00:00
e057f9fa00 Enhance KommunikationSyncManager and Sync Event Step
- Improved bidirectional synchronization logic in KommunikationSyncManager:
  - Added initial sync handling to prevent duplicates.
  - Optimized hash calculation to only write changes when necessary.
  - Enhanced conflict resolution with clearer logging and handling of various scenarios.
  - Refactored diff computation for better clarity and maintainability.

- Updated beteiligte_sync_event_step to ensure proper lock management:
  - Added error handling for entity fetching and retry logic.
  - Improved logging for better traceability of sync actions.
  - Ensured lock release in case of unexpected errors.
2026-02-08 22:21:08 +00:00
8de2654d74 feat(sync): Fix Var6 revert logic for direction='to_advoware' and enhance conflict handling 2026-02-08 22:07:55 +00:00
79e097be6f feat(sync): Implement auto-reset for permanently_failed entities and add retry backoff logic
- Added logic to reset permanently_failed entities that have reached their auto-reset threshold in `beteiligte_sync_cron_step.py`.
- Enhanced event handling in `beteiligte_sync_event_step.py` to skip retries if the next retry time has not been reached.
- Introduced validation checks after sync operations to ensure data consistency and integrity.
- Created detailed documentation outlining the fixes and their impacts on the sync process.
- Added scripts for analyzing sync issues and comparing entities to facilitate debugging and validation.
2026-02-08 21:12:00 +00:00
6e0e9a9730 feat: Enhance logging in sync utilities and add code validation script 2026-02-08 20:10:47 +00:00
ebbbf419ee feat: Implement bidirectional synchronization utilities for Advoware and EspoCRM communications
- Added KommunikationSyncManager class to handle synchronization logic.
- Implemented methods for loading data, computing diffs, and applying changes between Advoware and EspoCRM.
- Introduced 3-way diffing mechanism to intelligently resolve conflicts.
- Added helper methods for creating empty slots and detecting changes in communications.
- Enhanced logging for better traceability during synchronization processes.
2026-02-08 19:53:40 +00:00