Vai al contenuto

Release Notes

Indice versioni/release generate da docs/changelog.md.

Indice

2026-08-02

Calendar Engine, WebTop e Sync

  • attivato URL pubblico HTTPS https://safeops.nxt-sense.eu/calendar-engine tramite bridge SafeOps e reverse proxy;
  • provisionati feed WebTop personali per gli utenti attivi dei tenant con modulo calendario abilitato;
  • aggiunto link WebTop personale nel Calendario Globale per ogni utente abilitato al modulo calendario;
  • aggiunta diagnostica admin /admin/calendar-engine/ con health, feed, utenti/anagrafiche, filtri e stato sync automatico;
  • aggiunto task Celery app.tasks.calendar_engine_scheduled_sync con schedule oraria, fonti all, limite e batch configurabili;
  • eseguito primo sync reale verso Calendar Engine con 73 eventi pubblicati e zero errori;
  • aggiornata documentazione operativa e tecnica per deployment, WebTop, troubleshooting e rollback.

2026-07-31

Calendar Engine Esterno

  • aggiunto blueprint tecnico per motore calendario esterno multi-tenant e multi-gestionale;
  • aggiunto manuale operativo step-by-step per rollout read-only, WebTop/NethServer 8, mobile, rollback e troubleshooting;
  • aggiunto scheletro servizio services/calendar_engine con API HMAC, storage SQLite, token feed e output ICS/WebCal;
  • aggiunto client SafeOps app.services.calendar_engine_client con firma HMAC, retry controllato e flag di disattivazione;
  • aggiunti adapter app.services.calendar_engine_adapters per ticket appointment, eventi personali e appuntamenti RAS;
  • aggiunto servizio/CLI calendar_engine_sync per dry-run e backfill tenant verso Calendar Engine;
  • aggiunti comandi CLI calendar_engine_feed_create e calendar_engine_feed_revoke per gestione feed ICS/WebCal;
  • aggiunta unità systemd safeops-calendar-engine.service per deploy Gunicorn del motore;
  • aggiunto supporto CALENDAR_ENGINE_PUBLIC_BASE_URL per restituire URL feed pubblici dietro reverse proxy;
  • aggiunta pagina admin Configurazioni -> Calendar Engine per modificare parametri operativi non segreti con backup .env;
  • aggiunta configurazione della finestra feed ICS (past/future/max events) per WebTop e dispositivi mobili;
  • collegata la pubblicazione RAS verso Calendar Engine quando SafeOps crea o aggiorna un appuntamento RAS;
  • collegati i nuovi documenti agli indici e alla navigazione MkDocs.

2026-03-21

Control Plane / Multi-tenant

  • bloccato l'accesso alle pagine control-plane per utenti non admin, consentendo solo il cambio portale (/portal-selector) e il flusso di handoff.

Anagrafiche

  • limitato l'import anagrafiche ai profili commerciali/rete commerciale (e admin), rimuovendo il bottone per i tecnici.
  • aggiunto menu azioni cliente nella lista incarichi tecnici con checklist documenti, geocodifica e dettaglio anagrafico.

2026-03-13

Notifiche stati richieste (per tenant)

  • aggiunta tabella e vista di configurazione Commerciale → Notifiche Stati;
  • destinatari configurabili per stato (Cliente, Operatore, Tecnico, Email interne + To/CC);
  • nuova logica di invio notifiche su cambio stato, con fallback comportamento storico.
  • nuovo badge Preventivi in topbar con contatore;
  • link rapidi nel Cruscotto Admin per richieste aperte e checklist (scaduti/in scadenza).

2026-03-09

Motore DOCX -> PDF

  • introdotto motore server-side DOCX->PDF riusabile in tutti i flussi:
  • service app/services/docx_pdf_engine.py
  • task Celery app.tasks.docx_to_pdf_convert
  • comando CLI flask --app app docx_to_pdf_convert
  • collegato il flusso RAS finalizzazione al template DOCX master:
  • usa RAS_MASTER_TEMPLATE_DOCX
  • converte automaticamente in PDF
  • fallback automatico al renderer legacy se il template fallisce
  • aggiunte configurazioni .env dedicate:
  • DOCX_PDF_ENGINE
  • DOCX_PDF_SOFFICE_BIN
  • DOCX_PDF_TIMEOUT_SECONDS
  • DOCX_PDF_TMP_DIR
  • installato runtime conversione su server (libreoffice-headless).
  • aggiunta documentazione tecnica DOCX_PDF_ENGINE.md e collegamento in mkdocs.yml.

2026-03-08

Operativo + Ticket

  • aggiunta guida operativa dedicata Operativo e Ticket (Interventi) con:
  • entry point modulo operativo/ticket,
  • procedura standard end-to-end,
  • integrazione UI bidirezionale,
  • checklist rapida di test;
  • aggiornato indice operativo con collegamento diretto alla nuova guida;
  • aggiornato mkdocs.yml per pubblicazione della nuova pagina in Gestione Operativa.
  • aggiunta sezione screenshot in guida operativo/ticket con riferimenti ai 4 asset:
  • ticket_chat_intervento.png
  • calendario_interventi.png
  • planner_week_interventi.png
  • rapportino_list_interventi.png

2026-03-03

Documentazione

  • aggiunta guida Manuale Operativo -> Ruoli e Servizi con modello completo per:
  • admin,
  • rete di gestione,
  • rete commerciale,
  • cliente,
  • tecnico / fornitore tecnico;
  • esteso Moduli e Flussi con sezione tecnica su:
  • modulo commerciale,
  • workflow servizio,
  • perimetro e enforcement visibilita.
  • aggiunte nuove guide dedicate:
  • Portale Amministratore,
  • Modulo Commerciale,
  • Tipologie Standard,
  • Matrice Permessi,
  • Diagnostica Visibilita',
  • RAS End-to-End,
  • Viste Chiave,
  • Runbook Setup Tenant Commerciale,
  • Checklist Go-Live Besant,
  • Naming Standard,
  • Test Plan per Ruolo,
  • Collaudo Finale Besant.
  • completato anche l'indice MkDocs includendo pagine gia presenti ma fuori nav:
  • OnlyOffice Integration,
  • RAS Dynamic Legacy Flow,
  • Runbook OnlyOffice.
  • riorganizzato il nav MkDocs in tre ingressi principali:
  • Gestione Operativa
  • Gestione Admin
  • Sviluppo

Documentale e stampe RAS

  • Finalizza versione su RAS accoda automaticamente la stampa finale;
  • introdotto motore di stampa RAS con Libretto RAS principale + SCHEDA_* come allegati;
  • le stampe vengono salvate sul cliente/condominio in categoria RAS;
  • introdotto Scarica ultima stampa PDF, Apri libretto e Storico Stampe;
  • resa piu robusta la gestione versioni delle stampe (Corrente / Storica);
  • la lista Documenti ora mostra Preview e Download, senza il + di inserimento diretto;
  • migliorato il mantenimento del contesto cliente nei flussi di upload documento.

Dati e perimetro

  • normalizzati i record legacy besant in tenant_besant;
  • allineato il modulo commerciale a una gestione coerente delle anagrafiche commerciali e del tenant.

Moduli tenant

  • introdotto TenantModuleEntitlement per attivare/disattivare moduli per tenant senza perdere dati;
  • migrati sotto entitlement:
  • formazione
  • commerciale
  • tickets
  • documentale
  • ras
  • aggiunto ingresso operativo separato Tecnici, con entitlement dedicato:
  • module_code = tecnici

Profili tenant

  • introdotti i cataloghi:
  • Role Profiles
  • Tenant Role Profiles
  • aggiunta la vista:
  • User Role Profiles
  • definiti profili standard:
  • admin_tenant
  • gestione
  • commerciale
  • tecnico
  • amministratore_condominio
  • cliente
  • readonly
  • i profili possono essere abilitati, disabilitati o messi in sola lettura per tenant senza toccare gli utenti o perdere dati.
  • l'assegnazione utente -> profilo ora viene validata contro i profili abilitati sul tenant.

2026-02-25

Nuove funzionalita

  • aggiunta DipendenteView completa con campi legacy principali;
  • estesa gestione assegnazione dipendenti al cliente (ricerca + CF);
  • aggiunta colonna Dip. in lista clienti;
  • aggiunta pagina Mappa Clienti e Interventi con:
  • filtri,
  • popup cliente/ticket,
  • cluster marker,
  • heatmap.

Stabilita e fix

  • fix routing MappaClientiInterventiView (default_view=index);
  • fix 500 su apertura cliente da mappa (riposizionamento metodi assets);
  • pulizia permessi legacy non validi della mappa.

Dati

  • import context legacy cliente su cliente_meta.context_json;
  • allineamento codice_fiscale = partita_iva quando CF vuoto;
  • import esteso anagrafica dipendenti da legacy.