Skip to content

Python: [Bug]: FanInEdgeRunner may contain states that are not reset by checkpoint restoration #7371

Description

@TaoChenOSU

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

Metadata

Metadata

Assignees

Labels

pythonUsage: [Issues, PRs], Target: PythonworkflowsUsage: [Issues, PRs], Target: Workflows

Type

Projects

Status
No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions