Description
The FanInEdgeRunner contains a buffer to store messages from upstream executors before all of them have arrived and delivering them to the target executor.
A workflow can crash mid superstep B and the buffer can potentially already contain messages from a subset of upstream executors. When the workflow is recovered from the most recent checkpoint (the one that's created at the end of superstep A), the buffer won't be reset, potentially leading to duplicated messages and premature delivery since all upstream executors will be re-executed.
Code Sample
Error Messages / Stack Traces
Package Versions
agent-framework-core
Python Version
No response
Additional Context
No response
Description
The
FanInEdgeRunnercontains a buffer to store messages from upstream executors before all of them have arrived and delivering them to the target executor.A workflow can crash mid superstep B and the buffer can potentially already contain messages from a subset of upstream executors. When the workflow is recovered from the most recent checkpoint (the one that's created at the end of superstep A), the buffer won't be reset, potentially leading to duplicated messages and premature delivery since all upstream executors will be re-executed.
Code Sample
Error Messages / Stack Traces
Package Versions
agent-framework-core
Python Version
No response
Additional Context
No response