Answer A-342: the node-engine sets MESH_NODE for every process it runs
mesh/delivery merged: source.main moved to novox/hq@dc76022e04b8
mesh/check pass 14b5b324a258 on a7004d5e2ad8 | unit 43 run, 0 kept, 1 skipped | integration 43 run, 0 kept, 1 skipped | composition passed in 61s on 2…

Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
This commit is contained in:
2026-11-13 09:17:36 +01:00
parent 253c18c693
commit 14b5b324a2
@@ -674,3 +674,8 @@ the principle that settles it, cited as "design 47 G A-n".
`module`, id `zfs.<pool>.<device>` (the pool's own state: `zfs.<pool>.pool`), kind `not-online`, its subject scope
`module`, id `zfs`, on the node; `<device>` is the device's own name, the last element of its path. §27's one finding
per device not online stands; only its key takes the writer's form.
- **A-342** (A-339, A-341; principles 2, 7) A process learns its node the way the SDK already reads it: the node-engine
sets `MESH_NODE` to its own node's name in the environment of every process it runs, beside the resource's own `env`
(a resource's own `MESH_NODE` is refused by the manifest validator, so the mesh's value is the only one). The zfs
follower's writer and its `node-service-manager` calls then name the node; no new reference form and nothing special to
the keeper.