- a public reference implementation against which client code can be tested.
- code examples explaining the various behaviors.
This simulator has been developed for the Google App Engine platform. Right now it is able to simulate the lifecycle of a small set of reference “workflows”, thus providing a good base for experimentation.
The documentation of the Python bindings uses that simulator, so that running the examples is as simple as a copy/paste operation.
Technically speaking, it works by associating time slots to workflow states, and reconsidering those slots when a new action (like canceling the workflow run) “rewrites” the future. Therefore, there is no notion of “live process”, that could quickly become a limitation.
The simulator itself is free software, released under MIT license. The source code is available here. Hope it can prove useful to someone !