Ironflow Cancel Flow

Ironflow Cancel Flow A workflow diagram generated by Archify. 01 / Caller 02 / Ironflow server 03 / Executors EX / Refused Commit to the DB Tell the executors CancelRun · run ID + reason · Caller › Commit to the DB CancelRun run ID + reason State guard · is the run still live? · Ironflow server › Commit to the DB State guard is the run still live? Read, validate, CAS · retries at fresh version · Ironflow server › Commit to the DB Read, validate, CAS retries at fresh version Mark run terminal · status, cause, ended_at · Ironflow server › Commit to the DB · claim released Mark run terminal status, cause, ended_at claim released CANCEL stream · msg-id dedupe · Ironflow server › Tell the executors · best effort CANCEL stream msg-id dedupe best effort Push executor · re-reads the run · Executors › Tell the executors Push executor re-reads the run CANCEL subscriber · none in-tree today · Executors › Tell the executors CANCEL subscriber none in-tree today Refused · already terminal · Refused › Commit to the DB Refused already terminal version matched still live terminal already then signal status read before each dispatch cancel.run.{runID} cancel Legend Server step Guard Best-effort signal Durable state Caller / executor