A host the mesh builds knows what it was built for #158

Merged
jschoubben merged 1 commits from fix/161-a-built-host-knows-what-it-was-built-for into main 2026-09-30 10:40:23 +00:00
Owner

novox/hq issue 161. The mesh compiled the host, published it, delivered it and the launcher started it — and it would have refused the first declaration it was asked to apply, because it asks which system it was built for before applying anything and the answer was empty.

The Makefile links that in; the mesh's toolchain deliberately takes nothing from the module, so it linked in nothing.

The system is the stated exception and ADR 0142 says why: the target is a property of the artifact rather than of the recipe. So the toolchain names the variable it fills and the artifact supplies the value — named rather than inferred, and empty for a language whose output is not pinned to a system.

make check: only the pre-existing failure.

novox/hq issue 161. The mesh compiled the host, published it, delivered it and the launcher started it — **and it would have refused the first declaration it was asked to apply**, because it asks which system it was built for before applying anything and the answer was empty. The Makefile links that in; the mesh's toolchain deliberately takes nothing from the module, so it linked in nothing. The system is the stated exception and ADR 0142 says why: the target is a property of the artifact rather than of the recipe. So the toolchain names the variable it fills and the artifact supplies the value — named rather than inferred, and empty for a language whose output is not pinned to a system. `make check`: only the pre-existing failure.
jschoubben added 1 commit 2026-09-30 10:40:16 +00:00
novox/hq 04-ISSUES/161. The mesh compiled the host, published it,
delivered it, and the launcher started it — and it would have refused the
first declaration it was asked to apply, because it asks which system it
was built for before applying anything and the answer was empty.

The Makefile links that in. The mesh's toolchain deliberately takes
nothing from the module, so it linked in nothing.

The system is the stated exception, and ADR 0142 says why: the target is a
property of the artifact rather than of the recipe, because a compiled
binary is per system and a toolchain accepting it from the module would be
accepting a build instruction. So the toolchain names the variable it
fills and the artifact supplies the value.

Named in the toolchain rather than inferred, and empty for a language
whose output is not pinned to a system — which is every interpreted one,
and a manifest declaring a system for those is already refused.
jschoubben merged commit ffe176f6d1 into main 2026-09-30 10:40:23 +00:00
jschoubben deleted branch fix/161-a-built-host-knows-what-it-was-built-for 2026-09-30 10:40:24 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-controller#158