From 47b243cd98fd94da7918cacf5725373b099208e5 Mon Sep 17 00:00:00 2001 From: Dobromir Popov Date: Wed, 15 Jul 2026 13:55:38 +0200 Subject: [PATCH] model loading, dash --- packages/node/meshnet_node/startup.py | 2 +- packages/node/meshnet_node/torch_server.py | 13 +++++ .../tracker/meshnet_tracker/dashboard.html | 40 +++++++++++++--- packages/tracker/meshnet_tracker/server.py | 48 ++++++++++++++++--- tests/test_dashboard.py | 7 +++ 5 files changed, 95 insertions(+), 15 deletions(-) diff --git a/packages/node/meshnet_node/startup.py b/packages/node/meshnet_node/startup.py index c0f6c73..dd8a4df 100644 --- a/packages/node/meshnet_node/startup.py +++ b/packages/node/meshnet_node/startup.py @@ -531,7 +531,7 @@ def _start_heartbeat( if applied.get("action") == "ADD_SHARD": _register_additional_assignment(applied) return applied - if applied.get("action") == "DROP_SHARD": + if applied.get("action") in {"DROP_SHARD", "DROP_ALL_SHARDS"}: # A release has no replacement range. It is not a failed # heartbeat and must not re-register the released assignment. return applied diff --git a/packages/node/meshnet_node/torch_server.py b/packages/node/meshnet_node/torch_server.py index 36fbeb9..d464561 100644 --- a/packages/node/meshnet_node/torch_server.py +++ b/packages/node/meshnet_node/torch_server.py @@ -1556,6 +1556,19 @@ class TorchNodeServer: def apply_tracker_directives(self, directives: list[dict]) -> dict | None: """Apply tracker shard directives (LOAD_SHARD replace, ADD_SHARD load-more).""" + drop_all_directive = next( + (directive for directive in reversed(directives) if directive.get("action") == "DROP_ALL_SHARDS"), + None, + ) + if drop_all_directive is not None: + self._backends.clear() + self._backend = None + self._tracker_mode = False + if self._server is not None: + self._server.backends = {} + self._server.backend = None + self._server.tracker_mode = False + return {"action": "DROP_ALL_SHARDS"} drop_directive = next( (directive for directive in reversed(directives) if directive.get("action") == "DROP_SHARD"), None, diff --git a/packages/tracker/meshnet_tracker/dashboard.html b/packages/tracker/meshnet_tracker/dashboard.html index f6615e1..0984262 100644 --- a/packages/tracker/meshnet_tracker/dashboard.html +++ b/packages/tracker/meshnet_tracker/dashboard.html @@ -333,7 +333,8 @@ -
+ +