v0.12
May 28, 2026
Event-triggered flow activation, item provenance, portable import/export
-
Feature
Event-triggered flow activation
A flow can now **auto-spawn a new item** when a specific event is raised in the system. Configure it in **Designer → Settings → Activation**: toggle event-driven start and pick the events that should trigger the flow. Classic use case: *"When the Order Approval flow reaches 'Approved', automatically start the Customer Onboarding flow."* The new item inherits the source item's `entityRefId` and carries a `_source` provenance block, so downstream tasks can reach back to the originating event and item.
-
Feature
Item Origin card
Every item now has a dedicated **Origine (Origin)** card on its detail page that shows where the item came from: creation date, kind (`manual` / `api` / `event` / `spawn`), the event name (if event-driven), and a **clickable link to the source item** for event/spawn cases. The same data is embedded in `item.data._source` for use in task templates, e.g. `{{item.data._source.event.payload.totale}}` or `{{item.data._source.item.entityRefId}}`.
-
Feature
Portable export and import: events re-linked by name
When you **export a flow** the references to events are now serialized **by name** instead of UUID, both for `startEventDefIds` and per-status `eventSubs`. On **import** into a different FlowSharp instance, event names are resolved in the target tenant: if an event with the same name exists, the link is restored; if it doesn't, a new event def is auto-created as `Custom`. No more re-linking events by hand after a flow migration.
-
Design
Stato/Fase terminology
The designer now uses the dual term **Status/Phase** (Stato/Fase in Italian) in user-facing labels — toolbar button, inspector, transition rules. The technical concept ("state of a state machine") stays, but is paired with the business-friendly word "phase of work" for everyday use. Side bonus: the duplicated "Aggiungi stato Stato" label is finally fixed.
-
Design
Final states: cleaner inspector
When a status is marked as **Final** in the designer, the inspector now **hides** the sections that don't apply to a terminal state: the type selector (Auto / Manual / AI), transition rules, the allowed-transitions list, and the "Auto without rules" warning on the node. A final state has no outgoing paths by definition — the panel now reflects that.
-
Design
Wrap-up tasks: banner + cleaner data view
When an item reaches a final state but still has open tasks (e.g. a Manual "send rejection email"), the detail page shows a calm amber banner: *"N wrap-up tasks still open — you can complete them for traceability."* Wrap-up tasks **do not block completion**: the item is already done, the tasks are recorded for the audit trail. At the same time, the `_source` provenance block is no longer rendered as a raw JSON field in the data preview — it lives in the Origine card and the JSON view.
-
Improvement
Delete flow: always available
The **Delete** (X) button on flow cards is now always shown, not just on drafts. The backend decides: if the flow has **never had items**, hard delete with full cleanup; if it has items, **soft disable** with an informative message and items stay accessible. No need to dig into the version panel to remove a published flow that's no longer used.
-
Improvement
Fixes on Event tasks and the designer
Multiple quality fixes ship in this release: **Event-type tasks** are now auto-completed at spawn time (fire-and-forget — they were incorrectly stuck on "Pending" forever, silently blocking auto-transitions on Auto/AI states); the **dataSchema** in the designer no longer disappears when switching tabs; the **Form AI sample payload** is now derived from the existing `dataSchema` (an instance with type-typed placeholders like `{ "customerEmail": "" }`) instead of dumping the raw JSON Schema; field-name matching between source and destination flows pre-populates compatible fields on event-triggered activation.