ae83c5e09b
Merge pull request 'Issues 203–205: what the first node-tools rollout found' (#307) from issues/203-205-what-the-first-node-tools-rollout-found into main
mesh-admin2026-10-03 00:41:07 +00:00
feeea127e2
Issues 203–205: what the first node-tools rollout found — an unissued credential pushed, a stale declaration during a controller handover, a package resource against a stale database
jochen2026-10-02 23:47:12 +02:00
76b563e0ce
ADR 0190: the ack-wait race is issue 175
jochen2026-10-02 22:29:53 +02:00
f56686d1e5
ADR 0190: a seat's work is shared by its holders, and building is the first such role; design 18 says where a build runs
jochen2026-10-02 22:29:08 +02:00
5938d40dee
Merge pull request 'ADRs 0164–0166 and issue 190: the container runtime gets a module, a seat and declared settings' (#271) from decision/docker-module into main
mesh-admin2026-10-02 20:14:58 +00:00
f062672f83
Merge pull request 'Issues 192 and 193: the console reaches a person only by hand; the store's read-only query is not' (#272) from issues/192-193-console-registration-and-store-query into main
mesh-admin2026-10-02 20:14:46 +00:00
e4a0c73e2b
Merge remote-tracking branch 'origin/main' into issues/192-193-console-registration-and-store-query
jschoubben2026-10-02 22:14:24 +02:00
d1aeee42a4
Regenerate the decision index after merging main
jschoubben2026-10-02 22:14:21 +02:00
81d780f973
Merge pull request 'Design 38: WP3 built — node-tools beside mesh-tools, the three things the plan did not say, and the gate refuses spreading not standing' (#304) from design/38-wp3-built-and-the-gate-softened into main
mesh-admin2026-10-02 19:57:16 +00:00
3e30846e0f
Design 38: point at ADR 0069's real file name
jochen2026-10-02 21:46:34 +02:00
b3f18c54c6
Design 38: WP3 built — node-tools beside mesh-tools, the three things the plan did not say, and the gate refuses spreading not standing
jochen2026-10-02 21:46:01 +02:00
e11bf320c9
Merge pull request 'ADR 0188: a module's own code is bundles in any language, and a tools bundle speaks MCP to the runtime; design 38 gains WP1b' (#300) from decision/0187-a-modules-own-code-is-bundles-in-any-language into main
mesh-admin2026-10-02 19:27:39 +00:00
da8b4b4ee4
Renumber to ADR 0188: 0187 landed on main first, as the dead-tracker record
jschoubben2026-10-02 21:01:02 +02:00
c026d5221e
Merge remote-tracking branch 'origin/main' into renumber-0187
jschoubben2026-10-02 21:00:45 +02:00
983fd412c6
Merge pull request 'ADRs 0180, 0186 and 0187: their live rows, done' (#302) from docs/the-four-fixes-proven-live into main
mesh-admin2026-10-02 18:46:49 +00:00
9ac2493e2c
ADRs 0180, 0186 and 0187: their live rows, done — all four machines filtered by the mesh alone, both front ends removed, no machine wrong or behind
jschoubben2026-10-02 20:46:35 +02:00
560f25c2c7
Merge pull request 'ADR 0187: a dead tracker is not the machine's failure' (#301) from fix/a-dead-tracker-is-not-the-meshs-failure into main
mesh-admin2026-10-02 18:42:01 +00:00
9e0288128b
ADR 0187: a dead tracker is not the machine's failure; design 32
jschoubben2026-10-02 20:41:30 +02:00
709240ec1f
ADR 0187: a module's own code is bundles in any language, and a tools bundle speaks MCP to the runtime; design 38 gains WP1b
jochen2026-10-02 18:56:57 +02:00
d57289e049
Merge pull request 'ADR 0186: a ban list never holds a neighbour, and the mesh's own bans are its own wherever they hang' (#299) from fix/a-ban-list-never-holds-a-neighbour into main
mesh-admin2026-10-02 16:43:32 +00:00
d4a2f99ab5
ADR 0186: a ban list never holds a neighbour, and the mesh's own bans are its own wherever they hang; design 31
jschoubben2026-10-02 18:42:16 +02:00
a9f91fdd0c
Merge pull request 'ADRs 0184 and 0185: a service is still running a moment later; a control plane behind its row serves what it can' (#298) from fix/a-service-asked-to-run-is-still-running into main
mesh-admin2026-10-02 16:25:44 +00:00
131a5e4714
Issue 201: what was established about the race while closing the outage half
jschoubben2026-10-02 18:19:12 +02:00
329a24fdae
ADRs 0184 and 0185: a service is still running a moment later; a control plane behind its row serves what it can; issue 201 half closed
jschoubben2026-10-02 18:16:24 +02:00
7f72f3b79a
Merge pull request 'ADR 0179: the intrusion seat serves its verbs, a container may log to the journal, and every door declares its jail' (#295) from feat/the-intrusion-seat-serves-its-verbs into main
mesh-admin2026-10-02 15:28:48 +00:00
114a71f36f
ADR 0179: built and proven live; the one fault the machine found, and the check that refuses it
jschoubben2026-10-02 17:28:38 +02:00
0f407417f3
Merge main: the ufw record renumbered to 0180, and ADR 0175 retires the per-module tool runtime this one ships
jschoubben2026-10-02 17:28:23 +02:00
4af731df19
Merge pull request 'The operator's agent and its licence manager are modules: ADR 0181–0183, to-be 36 and 39' (#286) from feat/claude-code-module into main
mesh-admin2026-10-02 15:23:38 +00:00
7b1dabbce0
The operator's agent and its licence manager are modules: ADR 0181–0183, to-be 36 and 39
jochen2026-10-02 17:22:03 +02:00
2caa5e827b
Merge pull request 'To-be 38: building the operator's machine as work packages; ADR 0175 collision renumbered to 0180' (#296) from feat/the-operators-machine into main
mesh-admin2026-10-02 15:20:38 +00:00
179fd7f83f
To-be 38: building the operator's machine as work packages; ADR 0175 collision renumbered to 0180
jochen2026-10-02 17:20:14 +02:00
d0d5799884
Issue 201: a push recreated the controller at a digest older than the seat row its successor wrote
jschoubben2026-10-02 17:15:22 +02:00
9ba4de5557
ADR 0179: the intrusion seat serves its verbs, a container may log to the journal, and every door declares its jail; designs 31 and 33
jschoubben2026-10-02 17:02:49 +02:00
e1203e5a43
Merge pull request 'Research 019: a warm twin of the running mesh' (#294) from jschoubben/research-019 into main
mesh-admin2026-10-02 14:59:44 +00:00
4ce967619a
Research 019: a warm twin of the running mesh in the lab
jschoubben2026-10-02 16:59:36 +02:00
6df2cfecd6
Merge pull request 'Research 018 graduates: ADRs 0173–0177 and to-be 37, the operator's machine' (#293) from feat/the-operators-machine into main
mesh-admin2026-10-02 14:58:48 +00:00
73047501f6
ADR 0154: the controller seat gains a generic command verb (dated note, by ADR 0175)
jochen2026-10-02 16:53:15 +02:00
bf39baf104
Research 018 graduates: ADRs 0173–0177 and to-be 37, the operator's machine
jochen2026-10-02 16:34:57 +02:00
5eadf36937
Merge pull request 'ADR 0175: the found front end is uninstalled once a machine is converged' (#292) from feat/the-found-front-end-is-uninstalled into main
mesh-admin2026-10-02 14:29:00 +00:00
8c9a2c7501
ADR 0175: the found front end is uninstalled once a machine is converged; design 08 note
jschoubben2026-10-02 16:27:33 +02:00
54213ba90c
Merge pull request 'Research 018: the operator's machine as modules' (#291) from research/018-the-operators-machine into main
mesh-admin2026-10-02 14:27:27 +00:00
7fb59bde98
Research 018: the operator's machine as modules
jochen2026-10-02 15:19:25 +02:00
a4d24d7b65
Merge pull request 'ADR 0168: built and proven live' (#290) from decision/0168-built into main
mesh-admin2026-10-02 13:09:22 +00:00
116b2d1793
ADR 0168: built and proven live — the live row read on the home server and the control node, the five rule sets removed through ADR 0170's verb
jschoubben2026-10-02 15:08:58 +02:00
68a14493c9
Merge pull request 'ADR 0169 → 0170: the firewall seat's record renumbered after a collision on main; built note; cycle.py refuses two records sharing a number' (#289) from decision/0170-renumbered-and-built into main
mesh-admin2026-10-02 12:52:17 +00:00
98eb3aa76f
ADR 0169 → 0170: the firewall seat's record renumbered after a collision on main; its built note; cycle.py refuses two records sharing a number
jschoubben2026-10-02 14:51:22 +02:00
91bbe648a8
Merge pull request 'Issues 199 (resolved: a node-scoped seat's verb through the console) and 200 (the controller's answer to a long console call is refused by the bus)' (#288) from issues/199-200-console-seat-verbs-and-inbox into main
mesh-admin2026-10-02 12:25:37 +00:00
0e7b85f184
Issues 199 (resolved: a node-scoped seat's verb through the console) and 200 (the controller's answer to a long console call is refused by the bus)
jschoubben2026-10-02 14:25:03 +02:00
dac49de6e7
Merge pull request 'ADR 0172: the lab is a module, and runs a bed when the mesh asks' (#287) from jschoubben/the-lab-is-a-module into main
mesh-admin2026-10-02 12:17:21 +00:00
0d9208dbbf
ADR 0172: the lab is a module, and runs a bed when the mesh asks
jschoubben2026-10-02 14:15:44 +02:00
bf0ee7cb25
Merge pull request 'ADR 0169: the firewall seat serves its verbs, and a foreign rule set is removed through one of them' (#285) from feat/the-firewall-seat-serves-its-verbs into main
mesh-admin2026-10-02 11:29:15 +00:00
4567e13071
ADR 0169: the firewall seat serves its verbs, and a foreign rule set is removed through one of them
jschoubben2026-10-02 13:27:03 +02:00
aa5d9f1045
Merge pull request 'ADR 0169 (proposed): a machine joins through the tunnel, and the bus is never public' (#284) from jschoubben/a-machine-joins-through-the-tunnel into main
mesh-admin2026-10-02 11:17:42 +00:00
79642251a1
ADR 0169 accepted; design 08's join order starts with the tunnel
jschoubben2026-10-02 13:17:32 +02:00
331cb94c6e
ADR 0169 (proposed): a machine joins through the tunnel, and the bus is never public
jschoubben2026-10-02 13:13:15 +02:00
17ca9a262b
0164: a setting names the file it lands in (issue 198's leak between one module's files); 190 notes the fourth machine now has the resolver
jschoubben2026-10-02 12:23:28 +02:00
967c793eaa
Merge remote-tracking branch 'origin/main' into decision/docker-module
jschoubben2026-10-02 12:23:27 +02:00
78351560f7
Merge pull request 'Issue 198: the home network's DNS server ran outside the mesh, and its filter closed it' (#283) from jschoubben/the-lans-dns-is-the-mesh into main
mesh-admin2026-10-02 10:22:51 +00:00
62cc2f89c7
Merge pull request 'Issue 197: a physical link that is down is not filtered when it comes up' (#280) from jschoubben/every-physical-link-faces-outside into main
mesh-admin2026-10-02 10:22:40 +00:00
426f741ad0
Issue 198: the home network's DNS server ran outside the mesh, and its filter closed it
jschoubben2026-10-02 12:22:31 +02:00
9bed54d3be
Issue 197 resolved: the wired port is guarded before it is plugged in
jschoubben2026-10-02 12:22:15 +02:00
413daf8ad5
Issue 197: a physical link that is down is not filtered when it comes up
jschoubben2026-10-02 11:53:54 +02:00
5c993c09b7
Merge pull request 'Issues 143 and 144 resolved: the live row of ADR 0168 read on the home server and the control node' (#282) from issues/143-144-resolved into main
mesh-admin2026-10-02 10:11:37 +00:00
7c3be48db2
Issues 143 and 144 resolved: the live row of ADR 0168 read on the home server and the control node
jschoubben2026-10-02 12:11:17 +02:00
b665d06701
Merge pull request 'ADR 0168: a converged machine is filtered by the mesh alone, and the host says what else refuses (group 7)' (#281) from feat/one-thing-filters-a-converged-machine into main
mesh-admin2026-10-02 10:03:48 +00:00
1bd13446d4
ADR 0168: a converged machine is filtered by the mesh alone, and the host says what else refuses (group 7)
jschoubben2026-10-02 11:57:38 +02:00
14adaafa53
Merge pull request 'to-be 29: the account fact and home-scoped resources shipped; the ssh-client module, CA and ~/.ssh boundary did not' (#279) from design/29-what-shipped into main
mesh-admin2026-10-02 09:49:52 +00:00
bd673cc6ec
Merge pull request 'Group 6 closed: 086, 090, 098, 099, 100, 101 resolved on the operator's decision' (#278) from issues/group-6-closed into main
mesh-admin2026-10-02 09:38:11 +00:00
bd6c55d225
Group 6 closed: 086, 090, 098, 099, 100, 101 resolved on the operator's decision, each saying the live row was not run
jschoubben2026-10-02 11:37:08 +02:00
2bbbc56502
Merge pull request 'Issue 194 resolved: the fixed host forgot its former archive on all four machines' (#277) from issue/194-resolved into main
mesh-admin2026-10-02 09:31:49 +00:00
c8935aceca
Issue 194 resolved: the fixed host forgot its former archive on all four machines
jschoubben2026-10-02 11:31:29 +02:00
29b656f2c0
Merge pull request 'Issue 196: the hub relays the mesh only on the ports it publishes itself' (#276) from jschoubben/the-hub-relays-the-mesh into main
mesh-admin2026-10-02 09:23:55 +00:00
d05ac367f1
Issue 196 resolved: the hub relays the mesh, re-swept live
jschoubben2026-10-02 11:23:37 +02:00
1c0dafb918
Issue 196: the hub relays the mesh only on the ports it publishes itself
jschoubben2026-10-02 11:17:11 +02:00
018ee359ae
Merge pull request 'Issue 194: the host's own former archive stops every machine applying anything' (#274) from issue/194-the-hosts-own-former-archive-stops-every-apply into main
mesh-admin2026-10-02 09:04:30 +00:00
c5535eeebd
Merge pull request 'ADR 0163 built: the take digest, the minted-secret refusal, the networks setting, settings judged where stored, genesis raising the forge as declared' (#270) from feat/a-take-is-a-comparison-the-rest into main
mesh-admin2026-10-02 09:04:21 +00:00
dbb9d2bc16
Merge pull request 'Issue 191 and ADR 0167: a membership carries what its module receives, and who the mesh is' (#273) from jschoubben/an-internal-only-route into main
mesh-admin2026-10-02 07:49:27 +00:00
28d53dcc28
Issue 191 resolved: internal-only routes are served to the mesh, live on both proxies
jschoubben2026-10-02 09:49:25 +02:00
df667eb710
ADR 0167: a membership carries what its module receives, and who the mesh is
jschoubben2026-10-02 01:48:03 +02:00
098a2ca485
Issue 191: a route with only an internal name is dropped as naming nothing
jschoubben2026-10-01 23:31:57 +02:00
a34cedeb5d
Merge pull request 'Issue 195: every assigned module is counted as a bus user without a credential' (#275) from jschoubben/issue-195 into main
mesh-admin2026-10-02 00:44:29 +00:00
db5ff5a5ee
Issue 195: every assigned module is counted as a bus user without a credential
jschoubben2026-10-02 02:44:24 +02:00
780c2b6e58
Issue 194: the host's own former archive stops every machine applying anything
jschoubben2026-10-02 02:42:19 +02:00
27c1db8a86
Review of 0164-0166 and 190: the mesh's own setting words stay settable; changing runtime verbs are not the console's wildcard; migration steps 1-2 are one push; dnsmasq's dns key dates from 09-23
jschoubben2026-10-02 00:48:06 +02:00
24aeb203f7
Issue 193 resolved: both readers live on every machine, checked by asking each copy who it is
jschoubben2026-10-02 00:35:03 +02:00
afbfd5f29d
Issue 193: mssql's variable substitution and shell commands, proven and fixed by mesh-catalog PR 210
jschoubben2026-10-02 00:25:48 +02:00
696957aa5e
Issue 193: proven on a throwaway server, fixed for postgres by mesh-catalog PR 209; mssql has the same hole
jschoubben2026-10-02 00:09:38 +02:00
3d54fcbb86
Merge remote-tracking branch 'origin/main' into decision/docker-module
jschoubben2026-10-02 00:02:57 +02:00
b13ef1be81
Issues 192 and 193: the console reaches a person only by hand; the store's read-only query is not
jschoubben2026-10-02 00:02:51 +02:00
c4151e6bc4
ADR 0163 built: the take digest, the minted-secret refusal, the networks setting, settings judged where stored, genesis raising the forge as declared; issues 096, 097, 126 resolved
jschoubben2026-10-01 23:45:57 +02:00
8c231102f8
to-be 29: the account fact and home-scoped resources shipped; the ssh-client module, CA and ~/.ssh boundary did not
jochen2026-10-01 23:14:10 +02:00
f1941304cc
ADRs 0164-0166 and issue 190: the container runtime gets a module, a seat and declared settings
jschoubben2026-10-01 23:13:18 +02:00
d8083bcf9e
Merge pull request 'Issue 189: the plan's half is built; the moved word stays for a decision' (#269) from issue/189-the-plan-half into main
mesh-admin2026-10-01 20:28:33 +00:00
6f26f97fdb
Issue 189: the plan's half is built; the moved word stays for a decision
jschoubben2026-10-01 22:25:31 +02:00
63ed4a7c96
Merge pull request 'Issue 189: a rebuild from the same commit is not a move, so a packaging module's new image never rolls out' (#268) from issue/189-a-rebuild-from-the-same-commit-is-not-a-move into main
mesh-admin2026-10-01 19:55:20 +00:00
48ca2fb41b
Issue 189: a rebuild from the same commit is not a move, so a packaging module's new image never rolls out
jschoubben2026-10-01 21:54:44 +02:00
3976f09738
Merge pull request 'ADR 0163: taking a module over is a comparison (group 6)' (#266) from decision/0163-taking-a-module-over-is-a-comparison into main
mesh-admin2026-10-01 19:13:53 +00:00
2904c359b8
ADR 0163: taking a module over is a comparison — what it compares, refuses and carries; designs 05 and 09; group 6's issues located, 093 resolved
jschoubben2026-10-01 21:12:36 +02:00
b277f3b4ba
Merge pull request 'ADR 0162: built, and proven live by the first tiered plan' (#265) from decision/0162-live into main
mesh-admin2026-10-01 19:00:53 +00:00
50e4d9c2a7
ADR 0162: built, and proven live by the first tiered plan
jschoubben2026-10-01 21:00:10 +02:00