node-tools hands each bundle its own environment (hq ADR 0192) #33

Merged
mesh-admin merged 1 commits from feat/0192-each-bundle-its-own-env into main 2026-10-03 13:34:06 +00:00
Contributor

hq ADR 0192. The controller composes every served module's words into MESH_TOOL_ENV (mesh-controller #236). node-tools takes it at start and deletes it from its own environment, then gives each registration's contributor (via the SDK's collectToolsEach, mesh-sdk #12) and each launched child the runtime's words plus its own module's — never another's. Against an SDK without collectToolsEach it says so in the log and serves with the runtime's words only.

Test: two imported bundles and one launched, each with different words, each answering with its own and none of the others', and MESH_TOOL_ENV absent from what any of them sees. Fails with the per-registration hand-off switched off. Suite 34/34 against the test bus with SDK 0.1.3 installed.

Merge after mesh-sdk #12 has published 0.1.3, so the toolchain image the node-tools bundle is built against carries it.

hq ADR 0192. The controller composes every served module's words into `MESH_TOOL_ENV` (mesh-controller #236). node-tools takes it at start and deletes it from its own environment, then gives each registration's contributor (via the SDK's `collectToolsEach`, mesh-sdk #12) and each launched child the runtime's words plus its own module's — never another's. Against an SDK without `collectToolsEach` it says so in the log and serves with the runtime's words only. Test: two imported bundles and one launched, each with different words, each answering with its own and none of the others', and `MESH_TOOL_ENV` absent from what any of them sees. Fails with the per-registration hand-off switched off. Suite 34/34 against the test bus with SDK 0.1.3 installed. Merge after mesh-sdk #12 has published 0.1.3, so the toolchain image the node-tools bundle is built against carries it.
mesh-admin added 1 commit 2026-10-03 13:32:32 +00:00
The mesh composes every served module's words into MESH_TOOL_ENV; the runtime takes it at start
and removes it from its own environment, then gives each registration's contributor and each
launched child the runtime's words plus its own module's, never another's. Against an SDK
without collectToolsEach it says so and serves with the runtime's words only. The test serves
two imported bundles and one launched, each answering with its own words and none of the others'.
mesh-admin merged commit 8e30ea9ff5 into main 2026-10-03 13:34:06 +00:00
mesh-admin deleted branch feat/0192-each-bundle-its-own-env 2026-10-03 13:34:06 +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-tools#33