Procedure Order
Overview
Procedure Order tracks multi-step process progression and routes to status-based branches.
It can detect:
- in-progress execution
- step order deviations
- step duration deviations
- successful completion
It also supports optional concurrent procedure instances.
Input
Procedure Configuration
array requiredOrdered list of procedure steps.
Each step item:
Step Active(required): dynamic boolean indicating whether step is active now.Step Name: display name for step; defaults toStep Nwhen empty.Expected Duration Range (seconds):[min,max]expected duration window.
Runtime interpretation:
- Rising edge of
Step Activemarks step start. - Completion depends on selected step completion mode.
- Deviation time is measured outside expected range.
Concurrent Procedures
booleanWhen enabled, multiple procedure instances may be tracked in parallel.
When disabled, single-instance progression is enforced.
Transition Time Threshold (seconds)
numberThreshold for time deviation classification.
If any completed step deviation time exceeds this threshold, final status can become time-deviated.
Set 0 (or empty) to disable threshold-based time deviation decision.
Step Complete Condition
string requiredRule for marking a step as completed:
- Step Inactive (
step_inactive): step completes when it transitions from active to inactive. - Next Step Active (
next_step_active): step completes when next step becomes active.
This choice strongly affects how quickly status advances in edge-triggered signals.
Reset Procedure Counter
booleanWhen true, resets aggregate counters (complete/deviation counts).
Runtime behavior:
- Counter reset can happen during init and on later runs if dynamic input sets it true.
Output
Procedure Status
stringOne of:
- In Progress (
in_progress): procedure is running and not yet terminal. - Deviate Step Time (
deviate_step_time): completed with timing deviation only. - Deviate Step Order (
deviate_step_order): completed with order deviation only. - Deviate Step Order and Time (
deviate_step_order_time): completed with both order and timing deviations. - Complete (
complete): completed without deviation.
Current Step Name
stringActive/current step label.
Step Information
arrayPer-step runtime state:
stepNamestepActivestepWaitingCountstepCompletedstepDurationstepDeviateTime
Procedure Timing
startTime(ISO timestamp)endTime(ISO timestamp)duration(seconds)
Procedure Counters
integercompleteCountdeviateStepTimeCountdeviateStepOrderCountdeviateStepOrderTimeCount
Branching
In Progress
Triggered when procedure is still active/non-terminal.
Deviate
Triggered for any terminal deviation status.
Complete
Triggered when procedure finishes without deviation.