Step-by-step answer
Stretch 2 hours7 stepsA completion workflow on Temporal with signals and a deadline
The completion-statement workflow on Temporal in Python (temporalio 1.35), with fake activities, a fake lender that returns 503 three times, a solicitor_decision signal with a two-day deadline, and an idempotent send. Killing the worker while it waits re-runs nothing; a code change under a waiting run gives a real non-determinism error, fixed with workflow.patched(); and Python's workflow sandbox refuses datetime.now() before it can do damage.
Back to the exercise