-
Notifications
You must be signed in to change notification settings - Fork 87
Description
At present, Accumulation is the highest level service compute phase which is explicitly acknowledged by JAM. However for Cross-service Work-Item Entanglement, it is important that any changes to the entangled services are synchronised and premised on expected changes being enacted in all entangled services.
If Accumulation is infallible and conditionless (i.e. will always make the same, expected, change regardless of what other WPs might have been Accumulated before), then it is enough to place all entangled Work Items in a single WP.
However, most Accumulation code (not least the CoreChains and CorePlay services) will not be conditionless and the repercussions of entanglement must only be enacted once all services have ascertained that all other entangled services are each committed to enact them.
An on-chain facility to pub/sub for the integration of Work Items would help achieve this without excessive use of transfer and peek.