Summary
When using Haystack Experimental HITL with standalone agents, resuming agent execution fails with:
KeyError: 'serialized_data'
This happens because haystack_experimental creates snapshots with:
original_input_data = {}
But core Haystack expects the snapshot to include:
{
"serialization_schema": {...},
"serialized_data": {...}
}
Steps to Reproduce
-
Run an agent with HITL/tool approval enabled (using haystack-experimental).
-
The agent triggers a breakpoint and returns an approval snapshot.
-
Submit the approval decision and attempt to resume.
-
Resume fails with KeyError: 'serialized_data'.
Solution
In haystack_experimental/core/pipeline/breakpoint.py, snapshots for standalone agents are created with:
original_input_data={}
However it should be:
original_input_data=_serialize_value_with_schema({}),