Skip to main content

Recording is not the same as passing

Threadify keeps three facts about every step separate, and it helps to keep them separate in your head too:
  1. Was it recorded? Reporting a step returns an acknowledgement as soon as Threadify has stored it.
  2. Did it succeed? That’s the outcome you reported: success, failed or error.
  3. Did it follow the contract? Threadify checks this separately, usually a moment after recording.
A failed payment can follow the contract perfectly, and a successful one can break it, for example if it ran without approval. An acknowledgement doesn’t tell you the check passed. If your code needs the result, ask for it with waitFor: true.

Threadify doesn’t run your code

Your services and agents do the work. Threadify records it and tells you whether it was allowed. If a step must not happen without permission, your code has to ask first and stop if the answer is no. Recording a step after the fact can flag a problem but can’t undo it.