ExecutionSagaContext
The context of a saga's handler for one execution of the commit event. Each execution, a retry included, gets a new one, and each command it derives is keyed by what it asks (derivedId): its target, its command type and its business key or its occurrence among the commands of this execution with both. Handling the commit again derives the same request for each command it derives again, in whatever order, which the kernel does not decide twice (it deduplicates by request id). A domain module's tests build one to call a saga directly.
Its schedules are commands too: schedule and cancel record the system commands wow.schedule.Set and wow.schedule.Cancel to their target, keyed with the other commands, the command they schedule named by commandTypes and written by codec; commandsOf puts them after the returned ones.
Its ids are the node's generators; a domain module's test gives fixed ones.
Its synchronous calls go through calls: the node's client of the other contexts' command gateways, an answer in a domain module's test. Its queries are contextQueries' of the commit's tenant.
Constructors
The context of the execution executionId of the commit event, deriving its ids from ids.