Commit represents a unique inmutable change to the system made by someone at a specific time
Entity is an actor that handles user commands running the buissiness logic defined in the handler callback and "commit" changes of the model to the configured event store. Will also use the store to query a stored entity data applying any change that has been recorded up to the specified moment in time.
Uniquely idenfies an entity
An actor that handles the persistance of changes of an entity using "commits" to track who made the change and why.
A wrapper for a stored entity that applies changes until the specified moment in time.
Events are changes to the system generated by entities after processing other events or external commands
Implement this trait to allow your entity handle external commands
An Aggregate is the projected data of a series of events of an entity, given an initial state update events are applied to it until it reaches the desired state.