fix(gui): Resolve ImGui stack corruption, JSON serialization errors, and test regressions

This commit is contained in:
2026-03-21 15:28:43 -04:00
parent f770a4e093
commit f53e417aec
5 changed files with 51 additions and 19 deletions
+8 -1
View File
@@ -91,7 +91,14 @@ class AsyncEventQueue:
"""
self._queue.put((event_name, payload))
if self.websocket_server:
self.websocket_server.broadcast("events", {"event": event_name, "payload": payload})
# Ensure payload is JSON serializable for websocket broadcast
serializable_payload = payload
if hasattr(payload, 'to_dict'):
serializable_payload = payload.to_dict()
elif hasattr(payload, '__dict__'):
serializable_payload = vars(payload)
self.websocket_server.broadcast("events", {"event": event_name, "payload": serializable_payload})
def get(self) -> Tuple[str, Any]:
"""