From ee7543b0f76a8aac370a084937980ddc163ac2b4 Mon Sep 17 00:00:00 2001 From: Paul Payne Date: Mon, 6 Jul 2026 17:20:16 -0700 Subject: [PATCH] fix(core): persist deployment requires in the registry (save/load) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The registry writer/reader are hand-rolled field lists, so the new requires field was dropped on save — leaving the mesh payload empty. Emit and read it. --- core/src/castle_core/registry.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/core/src/castle_core/registry.py b/core/src/castle_core/registry.py index f479e2f..5cbb08c 100644 --- a/core/src/castle_core/registry.py +++ b/core/src/castle_core/registry.py @@ -203,6 +203,7 @@ def load_registry(path: Path | None = None) -> NodeRegistry: schedule=comp_data.get("schedule"), managed=comp_data.get("managed", False), enabled=comp_data.get("enabled", True), + requires=comp_data.get("requires", []), ) return NodeRegistry(node=node, deployed=deployed) @@ -283,6 +284,8 @@ def save_registry(registry: NodeRegistry, path: Path | None = None) -> None: # registries byte-identical and matches the load-side default. if not comp.enabled: entry["enabled"] = comp.enabled + if comp.requires: + entry["requires"] = comp.requires data["deployed"][key] = entry with open(path, "w") as f: