diff --git a/mesh-sdk/mesh_core/engines/node.py b/mesh-sdk/mesh_core/engines/node.py index b3a669e..33fd7d1 100644 --- a/mesh-sdk/mesh_core/engines/node.py +++ b/mesh-sdk/mesh_core/engines/node.py @@ -75,7 +75,7 @@ if kind == 'policy_update' or kind == 'policy': if not self._is_ready: self._is_ready = True - if self.on_ready: self.on_ready(message) + if self.on_ready: self.on_ready(getattr(message, kind)) if self.on_policy: self.on_policy(getattr(message, kind)) # 2. Task Execution @@ -91,7 +91,10 @@ # 4. Work Pool elif kind == 'work_pool_update': if self.on_work_pool: self.on_work_pool(message.work_pool_update) - + + else: + logger.warning(f"[MeshCore] Unhandled message kind: '{kind}' — add a dispatch case") + logger.debug(f"[MeshCore] Inbound message: {kind}") except Exception as e: logger.error(f"[MeshCore] Dispatch Error: {e}") diff --git a/mesh-sdk/mesh_core/transport/grpc.py b/mesh-sdk/mesh_core/transport/grpc.py index 5bed339..ad545dc 100644 --- a/mesh-sdk/mesh_core/transport/grpc.py +++ b/mesh-sdk/mesh_core/transport/grpc.py @@ -188,8 +188,7 @@ def send_health(self, heartbeat: Any): """Sends a heartbeat via the dedicated health stream.""" - if not self._health_thread_started: - self._start_health_stream() + self._start_health_stream() self.health_queue.put(heartbeat) def _start_health_stream(self):