Torna al changelog

v0.79.0

3 agosto 2026

Il ciclo di vita delle attività, senza punti ciechi. Gli eventi lanciati dalle attività e dagli script ora partono davvero e avviano i flussi in ascolto, un flusso figlio irraggiungibile viene fermato alla pubblicazione invece di restare una promessa, ogni esito — riuscito, fallito, saltato — compare nello storico dell'elemento, e un'attività fallita si può riprovare, saltare o risolvere con una nota tracciata. Con tre irrobustimenti di sicurezza arrivati da un audit esterno indipendente.

  • Novità

    Gli eventi partono davvero

    Un evento lanciato da un'attività o da uno script veniva accodato in una forma che nessuno leggeva: risultava «inviato» e non succedeva niente. Ora attività, script, API e agenti passano tutti dalla stessa strada, con la stessa protezione dai duplicati — e chi chiama due volte non crea due volte: il doppio click, il retry di rete o il tentativo ripetuto di un agente ritrovano l'elemento già creato invece di duplicarlo. Un evento che raggiunge un elemento in coda non gli fa più saltare la fila, e non va nemmeno perso: viene registrato, e l'elemento lo considera appena viene ammesso al lavoro.

  • Novità

    Esiti nello storico e una via d'uscita dai fallimenti

    Riuscita, fallita o saltata: l'esito di ogni attività ora compare nello storico dell'elemento, comprese le attività asincrone — webhook, scadenze, tentativi esauriti — che prima sparivano senza lasciare segno. Un'attività fallita si può riprovare, saltare o segnare come risolta: le ultime due con una nota obbligatoria che resta nello storico, e se il nuovo tentativo fallisce il messaggio d'errore vero arriva a chi ha premuto il pulsante. L'esito digitato viene salvato pulito, così gli spazi attorno non impediscono più alle regole automatiche di riconoscerlo.

  • Miglioramento

    I flussi figli non restano promesse

    Un flusso figlio irraggiungibile ferma la pubblicazione, e a runtime l'attività fallisce spiegando perché, invece di restare in attesa per sempre. Riprovare a mano uno spawn fallito non crea un secondo figlio: riprende il lavoro su quello già creato e lo porta dentro il flusso. E anche il nome del flusso figlio può essere un'espressione sui dati, come gli altri campi.

  • Miglioramento

    Configurazioni fermate prima che ingannino

    Una durata di attesa scritta male veniva accettata e valeva zero: l'attesa si chiudeva all'istante. Un webhook senza destinazione falliva a runtime accusando un «endpoint irraggiungibile» mai configurato. Un'attività evento senza nome e un assistente AI inesistente passavano senza obiezioni. Ora tutti e quattro i casi vengono fermati alla pubblicazione, con il motivo vero. Ed eliminare un'iniziativa dal Piano chiude il suo elemento di governance, da qualunque stato: niente più elementi orfani aperti per sempre.

  • Sicurezza

    Irrobustimenti dall'audit esterno

    Un errore in una regola JavaScript non può più portare dati dell'elemento nello storico: la riga riporta solo codice, regola e categoria, mentre il dettaglio completo resta nei log del server. Gli utenti disattivati non ricevono più email operative: il destinatario viene ricontrollato al momento della consegna, non solo quando la policy è stata salvata. E la chiave di integrazione non può più comparire nei log nemmeno con indirizzi costruiti ad arte: la mascheratura segue lo stesso modello di lettura del server, non una ricerca testuale.