Research effort 033 (playbook 01): how a VPN client on Linux sets DNS, measured read-only on the laptop, and how a machine can resolve the mesh, a corporate network and public names at once. The client moves the resolver file aside and writes its own on every connect; the node-engine wrote the mesh file back in nine of nine sessions within 1 s to 3.5 min, after which corporate names failed for the rest of the session. Options: systemd-resolved per-link routing, adding the VPN servers, forwarding from the mesh resolvers, deferring, a local dnsmasq, replacing the client. Recommendation: on a machine that declares a VPN client only, the uplink holder runs systemd-resolved on the private address and takes the VPN file servers and domains into the tunnel link within seconds; proposed decision text with how each rule is checked. Status active; graduation is a separate step.
Research effort 033 (playbook 01): how a VPN client on Linux sets DNS, measured read-only on the laptop, and how a machine can resolve the mesh, a corporate network and public names at once. The client moves the resolver file aside and writes its own on every connect; the node-engine wrote the mesh file back in nine of nine sessions within 1 s to 3.5 min, after which corporate names failed for the rest of the session. Options: systemd-resolved per-link routing, adding the VPN servers, forwarding from the mesh resolvers, deferring, a local dnsmasq, replacing the client. Recommendation: on a machine that declares a VPN client only, the uplink holder runs systemd-resolved on the private address and takes the VPN file servers and domains into the tunnel link within seconds; proposed decision text with how each rule is checked. Status active; graduation is a separate step.
The laptop's VPN client replaces the mesh's resolver file on every connect and
the node-engine writes it back minutes later, so either the mesh's names or the
corporate ones fail for whole sessions. Measure how the client sets DNS and
weigh how names can be routed by domain without breaking ADR 0223's one-answer
rule.
Deliverynovox/hq@0ab47b9417cd — delivered since 2026-10-07T16:54:35Z
Delivery plan — builds nothing: the change touches no module of the mesh's graph
Transitions
2026-10-07 16:39 (new) → proposed (announced): novox/hq#167's head announced
2026-10-07 16:40 proposed → checked (checked): the verdict names this commit
2026-10-07 16:40 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
2026-10-07 16:54 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
2026-10-07 16:54 published → delivered (done): nothing for a walk to move
The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.
<!-- mesh-delivery:view -->
**Delivery** `novox/hq@0ab47b9417cd` — **delivered** since 2026-10-07T16:54:35Z
**Delivery plan** — builds nothing: the change touches no module of the mesh's graph
**Transitions**
- 2026-10-07 16:39 (new) → proposed (announced): novox/hq#167's head announced
- 2026-10-07 16:40 proposed → checked (checked): the verdict names this commit
- 2026-10-07 16:40 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
- 2026-10-07 16:54 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
- 2026-10-07 16:54 published → delivered (done): nothing for a walk to move
The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Research effort 033 (playbook 01): how a VPN client on Linux sets DNS, measured read-only on the laptop, and how a machine can resolve the mesh, a corporate network and public names at once. The client moves the resolver file aside and writes its own on every connect; the node-engine wrote the mesh file back in nine of nine sessions within 1 s to 3.5 min, after which corporate names failed for the rest of the session. Options: systemd-resolved per-link routing, adding the VPN servers, forwarding from the mesh resolvers, deferring, a local dnsmasq, replacing the client. Recommendation: on a machine that declares a VPN client only, the uplink holder runs systemd-resolved on the private address and takes the VPN file servers and domains into the tunnel link within seconds; proposed decision text with how each rule is checked. Status active; graduation is a separate step.
Delivery
novox/hq@0ab47b9417cd— delivered since 2026-10-07T16:54:35ZDelivery plan — builds nothing: the change touches no module of the mesh's graph
Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition:git log --notes=mesh-plan.