You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit bcac35a
Browse filesBrowse the repository at this point in the historyBrowse files
fix(workflow): wait for all direct interrupts before rerunning rerun_on_resume nodes
When a `rerun_on_resume=True` node emits multiple interrupts simultaneously, `check_interception` previously triggered a rerun as soon as any single interrupt was resolved (`node.rerun_on_resume and recovered.resolved_ids`) because `_ChildScanState` did not distinguish interrupts raised directly by the node itself from descendant interrupts raised by dynamic child nodes.
Track `direct_interrupt_ids` on `_ChildScanState` during event reconstruction and require `direct_unresolved` to be empty before rerunning a `rerun_on_resume` node when `unresolved` interrupts remain, while still allowing parent orchestrator nodes whose unresolved interrupts belong solely to descendant dynamic nodes to rerun and advance unblocked children.
Co-authored-by: Shangjie Chen <[email protected]>
PiperOrigin-RevId: 997167980
0 commit comments