Optionalcontext: JobStateFlatten activity-level context paths into store-ready key/values
Write the dimensional address into the state payload
Flatten job-level context paths into store-ready key/values
Build the list of child activities to transition to
Resolve expire and persistent policies from config
Bootstrap $self, $job refs and output.metadata.au timestamp
Extract the job status from the last transaction result
Did the semaphore reach its threshold? (from transaction results)
Persist the full activity + job state in a single store call
Optionaltxn: ProviderTransactionIncrement/decrement the job semaphore
Optionaltxn: ProviderTransaction
Terminates a flow by sending an interrupt signal. The
interruptactivity can target the current flow (self-interrupt) or any other flow by its job ID (remote interrupt). Interrupted jobs have their status set to a value less than -100,000,000, indicating abnormal termination.YAML Configuration — Self-Interrupt
When no
targetis specified, the activity interrupts the current flow. The flow terminates immediately after this activity executes. Use conditional transitions to route to an interrupt only when needed.YAML Configuration — Remote Interrupt
When
targetis specified, the activity interrupts another flow while the current flow continues to transition to adjacent activities.Configuration Properties
target@pipeexpressions.topicreason'Job Interrupted'throwtrueJobInterruptederrordescendfalsecode410stackExecution Model
target): Category C. Verifies entry, maps job data, sets status to -1, and fires the interrupt. No children.target): Category B. Fires the interrupt best-effort, then usesexecuteLeg1StepProtocolto transition to adjacent activities.See
InterruptActivity for the TypeScript interface