diff --git a/sources/python/main.py b/sources/python/main.py index 5313578..0658036 100644 --- a/sources/python/main.py +++ b/sources/python/main.py @@ -124,9 +124,11 @@ server {{ print(f"❌ {name} failed to start:\n{logs}") return False - # Save state + # Save state (dedup) s = load_state() - s.setdefault("nodes", []).append({ + s.setdefault("nodes", []) + s["nodes"] = [n for n in s["nodes"] if n["name"] != name] # remove old + s["nodes"].append({ "name": name, "type": "docker", "port": int(port), "upstream_ip": upstream_ip, "upstream_port": int(upstream_port), "status": "running", "created_at": time.strftime("%Y-%m-%dT%H:%M:%SZ")