The receipt claims the catalogue the beds read

A bed installs a catalogue module by reading its manifest from MESH_LAB_CATALOG at
run time, so a receipt naming no catalogue commit cannot say whether a catalogue
change was ever proven. Claimed under either spelling of the variable; not built,
because a manifest is read, not compiled (novox/hq 04-ISSUES/073).
This commit is contained in:
2026-09-21 14:14:54 +02:00
parent 43bf78bd63
commit f2d29491b2
3 changed files with 32 additions and 2 deletions
+16
View File
@@ -104,12 +104,28 @@ test("every repository the receipt claims was built by the run", () => {
MESH_LAB_HOST_BINARY: "/repo/host/mesh-host",
MESH_LAB_MODULES: "/repo/control/examples/modules",
MESH_LAB_BUILDER: "/repo/control/build/mesh-builder",
MESH_LAB_CATALOG: "/repo/catalog/modules",
};
const built = new Set(planned(env).map((b) => b.in));
for (const [name, directory] of Object.entries(repositories(env))) {
// mesh-lab is the exception, and it is not an omission: it is TypeScript run from source, so
// the code under test *is* the code running. There is nothing to build and nothing to go stale.
if (name === "mesh-lab") continue;
// mesh-catalog is the other exception, for the other reason: what a bed takes from it is a
// manifest, read from disk when the bed runs. There is nothing built from it that could go
// stale — and claiming it is the whole point, since a bed that carried its own copy of the
// manifest was proving the copy (novox/hq 04-ISSUES/073).
if (name === "mesh-catalog") continue;
assert.ok(built.has(directory), `${name} (${directory}) is claimed but never built`);
}
});
// The catalogue is claimed by the receipt, under either spelling the beds accept.
//
// A bed reads the manifest it installs from the catalogue checkout (novox/hq 04-ISSUES/073), so a
// receipt that names no catalogue commit cannot say whether a change there was ever proven.
test("the receipt claims the catalogue the beds read, however it was named", () => {
assert.equal(repositories({ MESH_LAB_CATALOG: "/repo/catalog/modules" })["mesh-catalog"], "/repo/catalog");
assert.equal(repositories({ MESH_LAB_CATALOG: "/repo/catalog" })["mesh-catalog"], "/repo/catalog");
assert.equal(repositories({})["mesh-catalog"], undefined);
});