Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 4 additions & 9 deletions python/packages/devui/agent_framework_devui/_mapper.py
Original file line number Diff line number Diff line change
Expand Up @@ -814,16 +814,11 @@ async def _convert_workflow_event(self, event: Any, context: dict[str, Any]) ->
return [trace_event]

# For unknown/legacy events, still emit as workflow event for backward compatibility
# Get event data and serialize if it's a SerializationMixin
# Get event data and recursively serialize it to handle nested SerializationMixin objects
raw_event_data = getattr(event, "data", None)
serialized_event_data: dict[str, Any] | str | None = raw_event_data
if raw_event_data is not None and hasattr(raw_event_data, "to_dict"):
# SerializationMixin objects - convert to dict for JSON serialization
try:
serialized_event_data = raw_event_data.to_dict()
except Exception as e:
logger.debug(f"Failed to serialize event data with to_dict(): {e}")
serialized_event_data = str(raw_event_data)
serialized_event_data: dict[str, Any] | str | list[Any] | None = (
_serialize_content_recursive(raw_event_data) if raw_event_data is not None else None
)

# Create structured workflow event (keeping for backward compatibility)
workflow_event = ResponseWorkflowEventComplete(
Expand Down