mesh-admin
34325d3566
Merge pull request 'ADR 0197: every tool announces itself on the bus, in the NATS services protocol' ( #331 ) from decision/0196-every-tool-announces-itself into main
2026-10-03 20:04:12 +00:00
jochen
fa9e94d863
Renumber to ADR 0197: 0196 landed first on main
2026-10-03 22:03:58 +02:00
jochen
1b34821aa0
ADR 0196: every tool announces itself on the bus in the NATS services protocol
2026-10-03 22:03:34 +02:00
jschoubben
50ddaf8408
Merge pull request 'ADR 0196: a node asks the mesh's resolver first, and a public one only when it is silent' ( #330 ) from decision/0196-nodes-ask-the-mesh-resolver-with-a-public-fallback into main
2026-10-03 20:01:05 +00:00
jschoubben
f5d518d256
ADR 0196: a node asks the mesh's resolver first, and a public one only when it is silent
...
ADR 0194 rejected sending every query to the mesh's resolver because a node with its tunnel down
would resolve nothing; a public resolver listed second answers exactly then. That drops the
systemd-resolved stub and the runtime's dns: containers copy the machine's resolvers. Narrows 0194;
amends connectivity §2.
2026-10-03 21:56:33 +02:00
jschoubben
577ddf0089
Merge pull request 'ADR 0194: the mesh has one resolver, and every node asks it for the mesh's names' ( #326 ) from decision/0194-the-mesh-has-one-resolver into main
2026-10-03 19:51:04 +00:00
jschoubben
13e28e6873
ADR 0194: the no-copies check allows each node's loopback stub
2026-10-03 21:51:03 +02:00
jschoubben
6b6ff76a19
ADR 0194: why every node needs a stub, and the systemd-resolved module that provides it
2026-10-03 21:50:33 +02:00
mesh-admin
8d5e6ef76f
Merge pull request 'ADR 0195: the mesh's tools are found by address, not announced whole; research 021; to-be 34 §3a' ( #329 ) from decision/0195-the-mesh-tools-are-found-by-address into main
2026-10-03 19:49:37 +00:00
jochen
77813f4613
ADR 0195: the mesh's tools are found by address, not announced whole; research 021; to-be 34 §3a
2026-10-03 21:49:26 +02:00
mesh-admin
4ee8e3905d
Merge pull request 'Issue 213: the controller is a Go program and still runs in a container' ( #328 ) from issues/213-the-controller-runs-in-a-container into main
2026-10-03 19:42:31 +00:00
jochen
216faec69e
Issue 213: what the container gives it, measured
2026-10-03 21:42:22 +02:00
jochen
e36b1a9e9c
Issue 213: the controller is a Go program and still runs in a container
2026-10-03 21:42:11 +02:00
mesh-admin
5886969c75
Merge pull request 'Issue 212: a toolchain rebuild keeps the SDK it cached' ( #327 ) from issues/212-a-toolchain-keeps-a-cached-sdk into main
2026-10-03 19:24:49 +00:00
jochen
5fa43ff755
Issue 212: a toolchain rebuild keeps the SDK it cached
2026-10-03 21:24:39 +02:00
jschoubben
1de4a5f25e
ADR 0194: the mesh has one resolver, and every node asks it for the mesh's names
...
Every resolution fault found on 2026-10-03 was a per-node copy disagreeing with the truth: a hosts
file read once, an operator's old line beside the mesh's, a node's resolver lent to a LAN. Every
tunnel already converges on one node. Retires node-dns-resolver for a mesh-scoped mesh-resolver;
nodes route only the mesh's suffix to it. Narrows 0121; amends connectivity §2 and the seats.
2026-10-03 21:21:49 +02:00
jschoubben
8a1fa37dce
Merge pull request 'ADR 0191: domains are a node's — the resolver holds each node's internal domain, nothing else' ( #323 ) from decision/0191-names-by-origin into main
2026-10-03 19:12:26 +00:00
mesh-admin
44eb13acd0
Merge pull request 'ADR 0193: every bundle the runtime serves is launched, and the runtime knows no language; design 38 WP4d' ( #325 ) from decision/0193-every-served-bundle-is-launched into main
2026-10-03 19:05:12 +00:00
jochen
6d53f9168a
ADR 0193: every bundle the runtime serves is launched, and the runtime knows no language; design 38 WP4d
2026-10-03 21:05:03 +02:00
mesh-admin
6a1fc71a4c
Merge pull request 'Design 38 WP4b: four tools-only modules proven live from the runtime; two delivery traps' ( #324 ) from design/38-wp4b-seven-proven into main
2026-10-03 14:13:40 +00:00
jochen
fb76fb7256
Design 38 WP4b: four tools-only modules proven live from the runtime; two delivery traps
2026-10-03 16:13:32 +02:00
jschoubben
2344bfb69b
ADR 0191: domains are a node's — one internal, one or more public; the roster is the machines
2026-10-03 16:10:38 +02:00
jschoubben
ca8a865e73
ADR 0191: the mesh's names are known by where they were composed, not by their suffix
...
A progressive insight: the rule and its check were stated as a suffix test; the mesh composes both
names of a route and publishes its internal one. The decision is unchanged.
2026-10-03 15:39:07 +02:00
mesh-admin
27c6881287
Merge pull request 'Issue 211: a bundle is built before the toolchain it is compiled in; ADR 0192 progressive insight; design 38 WP4b built, WP4c opened' ( #322 ) from issues/211-and-0192-insight into main
2026-10-03 13:36:43 +00:00
jochen
f8458d6f2c
Issue 211: a bundle is built before the toolchain it is compiled in; ADR 0192 progressive insight; design 38 WP4b built, WP4c opened
2026-10-03 15:36:26 +02:00
mesh-admin
c5778f4366
Merge pull request 'ADR 0192: a tools bundle declares what it is given, and the runtime hands it to that bundle alone; research 020 graduated; design 38 WP4b' ( #321 ) from decision/0192-what-a-bundled-tool-is-given into main
2026-10-03 13:18:40 +00:00
jochen
4c1ad0ed45
ADR 0192: a tools bundle declares what it is given, and the runtime hands it to that bundle alone; research 020 graduated; design 38 WP4b
2026-10-03 15:18:22 +02:00
jschoubben
9873e951a9
Merge pull request 'ADR 0191: the mesh resolves only its own names; a public name resolves publicly' ( #320 ) from decision/0191-the-mesh-resolves-only-its-own-domain into main
2026-10-03 13:16:13 +00:00
jschoubben
e5e6e56ecf
ADR 0191: the mesh's resolver holds only the mesh's own names; a public name resolves publicly
...
Publishing every routed public name at a private address turned ace's LAN-facing resolver into an
outage for non-members: a phone got the control-node's tunnel address for the mail server. Routes
have internal names since 0151 and the proxy certifies public names publicly, so nothing needs the
private answer. Narrows 0066 and 0151; amends connectivity §2 and §5.
2026-10-03 15:11:45 +02:00
mesh-admin
65c30c576a
Merge pull request 'Research 020: what a bundled tool is given; design 38 WP4: fail2ban followed, proven live' ( #319 ) from research/020-what-a-bundled-tool-is-given into main
2026-10-03 13:11:24 +00:00
jochen
ee17cddb74
Research 020: what a bundled tool is given; design 38 WP4: fail2ban followed, proven live
2026-10-03 15:11:08 +02:00
mesh-admin
22e96e5bc7
Merge pull request 'Issue 210 resolved by mesh-host #80 : an unchanged process keeps its record' ( #318 ) from issues/210-resolved into main
2026-10-03 11:56:30 +00:00
jochen
7e464e3b22
Issue 210 resolved by mesh-host #80 : an unchanged process keeps its record
2026-10-03 13:44:49 +02:00
mesh-admin
502763ce5e
Merge pull request 'Issue 209: a bundle's own SDK copy registers into a registry the runtime never reads; design 38 WP4 note' ( #316 ) from issues/209-a-bundles-own-sdk-copy-registers-nowhere into main
2026-10-03 11:20:38 +00:00
jochen
eaae0e2b80
Merge remote-tracking branch 'origin/main' into issues/209-a-bundles-own-sdk-copy-registers-nowhere
2026-10-03 13:20:33 +02:00
mesh-admin
2ee6eab7b9
Merge pull request 'Issue 210: the host re-creates the node's runtime on every reconcile, restarting it every ten minutes' ( #317 ) from issues/210-the-host-re-creates-the-runtime-every-cycle into main
2026-10-03 11:20:27 +00:00
jochen
ce5f85f65e
Design 38 WP4 built and proven live on all four machines; issue 209 proven live
2026-10-03 13:20:12 +02:00
jochen
911125148c
Issue 210: the record of the runtime's process carries no digest; the credential and the unit text are ruled out
2026-10-03 13:13:25 +02:00
jochen
d718a917e5
Issue 210: the host re-creates the node's runtime on every reconcile, restarting it every ten minutes
2026-10-03 13:11:17 +02:00
jochen
a572868333
Issue 209 resolved by mesh-tools #32
2026-10-03 13:07:41 +02:00
jochen
55443b67e6
Design 38 WP4: what the review of mesh-catalog #239 found — the credential goes, iptables is declared, escalation is an unchecked machine fact
2026-10-03 13:00:35 +02:00
jochen
89a202f12e
Issue 209: a bundle's own SDK copy registers into a registry the runtime never reads; design 38 WP4 note
...
Found preparing WP4, before the first module's bundle was loaded beside the runtime's own:
proven with a two-copies probe, located in mesh-tools (node-tools), fixed by mesh-tools #32 .
Design 38 WP4 records it and the two things the package left to the module — escalation
through sudo, and the filter file read from the manifest's path rather than a container env.
2026-10-03 12:46:51 +02:00
mesh-admin
b342c9c3da
Merge pull request 'Issues 203, 206 and 207 resolved by mesh-controller #233 ; 207's diagnosis, with its two questions left open' ( #315 ) from issues/203-206-207-resolved into main
2026-10-03 09:50:56 +00:00
jochen
336b8c9b62
Issues 203, 206 and 207 resolved by mesh-controller #233 ; 207's diagnosis, with its two questions left open
2026-10-03 11:50:20 +02:00
mesh-admin
0c82909845
Merge pull request 'Issues 204 and 205 resolved: mesh-controller #232 and mesh-host #79 merged' ( #314 ) from issues/204-205-resolved into main
2026-10-03 09:46:22 +00:00
jochen
d8a0c1b02f
Issues 204 and 205 resolved: mesh-controller #232 and mesh-host #79 merged
2026-10-03 11:45:19 +02:00
mesh-admin
b232b44f4c
Merge pull request 'Design 18 and ADR 0190: shared build work proven live on all four machines, and the five gaps the switch found' ( #313 ) from design/18-shared-build-work-proven-live into main
2026-10-03 09:44:19 +00:00
jochen
c03f2cd4c6
Design 18 and ADR 0190: shared build work proven live on all four machines, and the five gaps the switch found
2026-10-03 11:43:53 +02:00
mesh-admin
73c4d24024
Merge pull request 'Issues 203–206 diagnosed and located' ( #310 ) from issues/203-206-diagnosed into main
2026-10-03 09:43:00 +00:00
mesh-admin
3372d72da0
Merge pull request 'Issue 208: a seat's worker is made only when the controller starts, so a holder assigned later finds none' ( #312 ) from issues/208-a-holder-assigned-later-finds-no-worker into main
2026-10-03 09:33:28 +00:00