The catalogue is recognised by the registry's manifest, not the control plane's

The control plane's manifest is leaving the catalogue (ADR 0069, issue 072); a marker
that named it would make every catalogue-reading bed skip the day it goes.
This commit is contained in:
2026-09-21 15:18:46 +02:00
parent e596758db9
commit 8c37328ba3
+3 -1
View File
@@ -255,7 +255,9 @@ export function catalogueDir(): string {
? [resolve(named, "modules"), resolve(named)]
: [resolve(process.cwd(), "..", "mesh-catalog", "modules")];
for (const dir of candidates) {
if (existsSync(resolve(dir, "mesh-controller", "module.json"))) return dir;
// Known by the registry's manifest, which genesis reads from the catalogue and always will —
// not the control plane's, which lives in the control plane's own repository (ADR 0069).
if (existsSync(resolve(dir, "distribution", "module.json"))) return dir;
}
throw new Error(
`no catalogue: MESH_LAB_CATALOG=${named ?? "(unset)"} and nothing at ${candidates.join(", ")}`);