#831 Lifecycle boundary checks do not reach foreach/while loop bodies — pause/cancel latency inside long loops
Description
EditThe #825/#826 boundary check (_lifecycle_signal) runs only in execute_workflow_graph's main ready-task loop. foreach/while operators execute their body tasks internally (loops.py) without the check, so a cancel/pause during a 1000-iteration loop takes effect only when the loop operator finishes (or at its internal sleep suspensions). Extend the hook to loop iteration boundaries (between iterations is the natural safe point, mirroring the existing between-iteration checkpoint), reusing the same fresh-connection fail-open helper. Parallel branch runs are separate jumper wrapper runs and DO get claim-time + main-loop checks.
Comments
Loading comments...
Context
Loading context...
Audit History
View AllLoading audit history...