fix: Calendar Agent - upsert, cleanup cancellati, schedule 30min

- ON CONFLICT DO UPDATE: aggiorna subject/category/detail/expires_at se evento cambia
- Cleanup step: DELETE eventi non più in HA nella finestra 7gg (eventi cancellati)
- Schedule: */30 * * * * (ogni 30 min, prima era 06:30 daily)
- Flusso: Parse GPT → Cleanup → Riemetti → Postgres Upsert → Aggrega → Telegram

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
2026-03-21 13:53:10 +00:00
parent 90d9faacca
commit 7e86d6cb04

View File

@@ -4,6 +4,22 @@ Tutte le modifiche significative al progetto ALPHA_PROJECT sono documentate qui.
--- ---
## [2026-03-21] Calendar Agent — fix sincronizzazione e schedule
### Problemi risolti
- **`ON CONFLICT DO NOTHING``DO UPDATE`**: gli eventi modificati (orario, titolo) venivano ignorati. Ora vengono aggiornati in Postgres.
- **Cleanup eventi cancellati**: aggiunto step `🗑️ Cleanup Cancellati` che esegue `DELETE FROM memory_facts WHERE source_ref NOT IN (UID attuali da HA)` per la finestra 7 giorni. Se Martin cancella un meeting, sparisce da Postgres al prossimo run.
- **Schedule `*/30 * * * *`**: da cron 06:30 giornaliero a ogni 30 minuti — il calendario Postgres è sempre allineato alla source of truth (HA/Google Calendar).
### Flusso aggiornato
```
... → 📋 Parse GPT → 🗑️ Cleanup Cancellati → 🔀 Riemetti → 💾 Upsert → 📦 → 📱
```
---
## [2026-03-20] Calendar Agent — primo workflow Pompeo in produzione ## [2026-03-20] Calendar Agent — primo workflow Pompeo in produzione
### Cosa è stato fatto ### Cosa è stato fatto