Design

Il design favorisce classi risolte dal container, run piccoli, persistenza opt-in e confini espliciti tra API pubblica e dettagli interni.

classDiagram class FlowDefinitionBuilder class FlowDefinition class FlowEngine class FlowStepHandler class FlowCompensator class FlowRun class FlowStore FlowDefinitionBuilder --> FlowDefinition : register FlowEngine --> FlowDefinition : execute FlowEngine --> FlowStepHandler : resolve FlowEngine --> FlowCompensator : compensate FlowEngine --> FlowRun : returns FlowEngine --> FlowStore : optional persistence

Trade-off principale

Il motore sceglie semplicità operativa invece di una piattaforma workflow separata. Il vantaggio e che l’app resta Laravel-native; il costo e che non si ottiene la durabilita cross-service di un runtime dedicato.