14 Commits

Author SHA1 Message Date
36552903e7 cleanup 2026-02-07 09:23:49 +00:00
root
c5600b42ec feat: Enhance audit_calendar_sync tool with comprehensive management features
- Add detailed documentation in README.md for all 10 audit commands
- Fix Advoware API parameter from 'frNr' to 'frnr' for proper filtering
- Fix subject field mapping from 'betreff' to 'text' in API responses
- Add verify-sync command for bidirectional sync verification
- Add query-frnr and query-event commands for individual record lookup
- Add management commands: find-duplicates, delete-duplicates, find-orphaned, cleanup-orphaned
- Improve error handling and output formatting
- Remove temporary test script
2025-10-25 08:18:48 +00:00
root
9d40f47e19 Refaktorierung Calendar Sync: Event-driven Design, Fixes für mehrtägige Termine, Logging und Locking
- Refaktorierung zu event-driven Ansatz ohne PostgreSQL Hub
- Fixes für mehrtägige Termine: korrekte Verwendung von datumBis, Entfernung 24h-Limit
- Per-Employee Locking mit Redis
- Logging via context.logger für Motia Workbench
- Neue Schritte: calendar_sync_all_step.py, calendar_sync_cron_step.py
- Aktualisiertes README.md mit aktueller Architektur
- Workbench-Gruppierung: advoware-calendar-sync
2025-10-24 19:13:41 +00:00
root
5ef77c91d5 Fix Advoware time filtering pitfall: extend ranges (Advoware -1 to +9 years, Google -2 to +10 years) and document issue in README 2025-10-23 23:28:49 +00:00
root
db1206f91c Fix recurring event duplication - handle recurringEventId properly in all phases 2025-10-23 18:46:49 +00:00
root
ddd64a5e0f Fix critical bug: End date for recurring events should use 'datum' not 'datumBis'
- Fixed: For recurring appointments (dauertermin=1), end date now correctly uses 'datum' instead of 'datumBis'
- 'datumBis' is only for recurrence series end, not individual event duration
- Events now have correct duration instead of being capped at 24h unnecessarily
- Updated README with detailed explanation of the bug and fix
- Time breakdowns in descriptions are now accurate
2025-10-23 18:12:02 +00:00
root
974116c024 Sync all employees in loop, remove employee_kuerzel requirement, update README 2025-10-23 13:02:52 +00:00
root
7b6e287b66 Remove AI limit, update README, fix update loops by setting last_sync to post-update time 2025-10-23 12:57:33 +00:00
root
9312586f18 Fix Advoware timestamp parsing bug causing sync loops
- Change .replace(tzinfo=BERLIN_TZ) to BERLIN_TZ.localize() for correct pytz TZ handling
- Update Phase 4 to use proper TZ localization for adv_ts
- Add documentation section on correct Advoware timestamp handling
- Add .gitignore, GOOGLE_SETUP_README.md, and check_db.py utility
2025-10-23 12:43:22 +00:00
root
9f50f201df Fix Phase 4 in calendar sync to reset unauthorized changes in target system based on timestamps for source_system_wins strategy 2025-10-23 11:26:25 +00:00
root
7d5403b4af Fix calendar sync Phase 3 logic for missing Advoware appointments when source is Google; update README with Advoware API peculiarities 2025-10-23 11:13:15 +00:00
root
9ab90fef5a Fix timestamp-based update logic and remove global last_sync update to prevent redundant syncs and race conditions. Update README with anonymization and latest changes. 2025-10-23 10:40:00 +00:00
root
0a4317c44a Update README.md with comprehensive documentation of Advoware Calendar Sync implementation, including API quirks, token security, and known issues 2025-10-22 23:36:21 +00:00
root
83a154a4a5 Neuer Advoware Calendar Sync implementiert
- steps/advoware_cal_sync/advoware_calendar_sync_step.py: Bidirektionale Sync zwischen Advoware und Google Calendar
- Automatische Kalender-Erstellung für jeden Mitarbeiter (AW-{Kuerzel})
- Konfigurierbare Sync-Optionen (volle Details vs. nur 'blocked')
- Google Calendar API Integration mit OAuth
- Mitarbeiter- und Termin-API Integration
- Umfassende Fehlerbehandlung und Logging
- steps/advoware_cal_sync/README.md: Detaillierte Dokumentation
- requirements.txt: Google API Dependencies hinzugefügt
- motia-workbench.json: Neuer advoware_cal_sync Flow
2025-10-22 19:01:30 +00:00