Design: resolv.conf is the uplink's holder's; a machine's names are node-hostname's (ADR 0223 parts 2–3) #117

Merged
mesh-admin merged 1 commits from design/0223-uplink-resolv-and-hostname into main 2026-10-05 22:20:32 +00:00
Contributor
  • to-be 08 §2: the uplink's holder writes resolv.conf (why not NM global DNS / dhcpcd static), one-writer rule incl. rendered facts, the node-engine's whole-file handover, node-hostname with /etc/hostname from a setting with no default and effective at next boot; how each is checked. Code list updated.
  • to-be 26: node-hostname row (formerly node-hosts-file, alias), node-resolver-config row retired; migrations 0063/0064 in code.
  • ADR 0223: dated progressive insight — the managers' own DNS mechanisms cannot write the mesh's file, so each module declares it; the decision stands. (If you read that as a judgement rather than a fact, it wants a superseding record instead.)

Checks: records.py, index.py, cycle.py pass. Implementation PRs: mesh-host files-forget-when-held, mesh-catalog/mesh-controller resolv-conf-to-uplink, retire-resolv-conf, hostname-module.

- to-be 08 §2: the uplink's holder writes resolv.conf (why not NM global DNS / dhcpcd static), one-writer rule incl. rendered facts, the node-engine's whole-file handover, `node-hostname` with `/etc/hostname` from a setting with no default and effective at next boot; how each is checked. Code list updated. - to-be 26: `node-hostname` row (formerly node-hosts-file, alias), `node-resolver-config` row retired; migrations 0063/0064 in code. - ADR 0223: dated progressive insight — the managers' own DNS mechanisms cannot write the mesh's file, so each module declares it; the decision stands. (If you read that as a judgement rather than a fact, it wants a superseding record instead.) Checks: records.py, index.py, cycle.py pass. Implementation PRs: mesh-host `files-forget-when-held`, mesh-catalog/mesh-controller `resolv-conf-to-uplink`, `retire-resolv-conf`, `hostname-module`.
mesh-admin added 1 commit 2026-10-05 21:45:21 +00:00
The build of both parts is in review; the designs now say how they work and
are checked, and ADR 0223 records that the managers' own DNS mechanisms could
not write the mesh's file.
mesh-admin merged commit fd4df96c21 into main 2026-10-05 22:20:32 +00:00
mesh-admin deleted branch design/0223-uplink-resolv-and-hostname 2026-10-05 22:20:32 +00:00
Author
Contributor

Delivery novox/hq@fd4df96c21e7 — held since 2026-10-06T23:05:28Z

Held for a person: merged without a passing check: only a person decides that it goes on — mesh-delivery.release with why lets it go on.

Delivery plan — builds nothing: the change touches no module of the mesh's graph

Transitions

  • 2026-10-06 23:05 (new) → proposed (announced): novox/hq#117 merged; its head was not heard by this owner, so it is made from the forge's word
  • 2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on

The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.

<!-- mesh-delivery:view --> **Delivery** `novox/hq@fd4df96c21e7` — **held** since 2026-10-06T23:05:28Z Held for a person: merged without a passing check: only a person decides that it goes on — `mesh-delivery.release` with why lets it go on. **Delivery plan** — builds nothing: the change touches no module of the mesh's graph **Transitions** - 2026-10-06 23:05 (new) → proposed (announced): novox/hq#117 merged; its head was not heard by this owner, so it is made from the forge's word - 2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/hq#117