Commit Graph

  • 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-admin 2026-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 jochen 2026-10-02 23:47:12 +02:00
  • 76b563e0ce ADR 0190: the ack-wait race is issue 175 jochen 2026-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 jochen 2026-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-admin 2026-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-admin 2026-10-02 20:14:46 +00:00
  • e4a0c73e2b Merge remote-tracking branch 'origin/main' into issues/192-193-console-registration-and-store-query jschoubben 2026-10-02 22:14:24 +02:00
  • d1aeee42a4 Regenerate the decision index after merging main jschoubben 2026-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-admin 2026-10-02 19:57:16 +00:00
  • 3e30846e0f Design 38: point at ADR 0069's real file name jochen 2026-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 jochen 2026-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-admin 2026-10-02 19:27:39 +00:00
  • da8b4b4ee4 Renumber to ADR 0188: 0187 landed on main first, as the dead-tracker record jschoubben 2026-10-02 21:01:02 +02:00
  • c026d5221e Merge remote-tracking branch 'origin/main' into renumber-0187 jschoubben 2026-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-admin 2026-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 jschoubben 2026-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-admin 2026-10-02 18:42:01 +00:00
  • 9e0288128b ADR 0187: a dead tracker is not the machine's failure; design 32 jschoubben 2026-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 jochen 2026-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-admin 2026-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 jschoubben 2026-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-admin 2026-10-02 16:25:44 +00:00
  • 131a5e4714 Issue 201: what was established about the race while closing the outage half jschoubben 2026-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 jschoubben 2026-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-admin 2026-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 jschoubben 2026-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 jschoubben 2026-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-admin 2026-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 jochen 2026-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-admin 2026-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 jochen 2026-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 jschoubben 2026-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 jschoubben 2026-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-admin 2026-10-02 14:59:44 +00:00
  • 4ce967619a Research 019: a warm twin of the running mesh in the lab jschoubben 2026-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-admin 2026-10-02 14:58:48 +00:00
  • 73047501f6 ADR 0154: the controller seat gains a generic command verb (dated note, by ADR 0175) jochen 2026-10-02 16:53:15 +02:00
  • bf39baf104 Research 018 graduates: ADRs 0173–0177 and to-be 37, the operator's machine jochen 2026-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-admin 2026-10-02 14:29:00 +00:00
  • 8c9a2c7501 ADR 0175: the found front end is uninstalled once a machine is converged; design 08 note jschoubben 2026-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-admin 2026-10-02 14:27:27 +00:00
  • 7fb59bde98 Research 018: the operator's machine as modules jochen 2026-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-admin 2026-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 jschoubben 2026-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-admin 2026-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 jschoubben 2026-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-admin 2026-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) jschoubben 2026-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-admin 2026-10-02 12:17:21 +00:00
  • 0d9208dbbf ADR 0172: the lab is a module, and runs a bed when the mesh asks jschoubben 2026-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-admin 2026-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 jschoubben 2026-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-admin 2026-10-02 11:17:42 +00:00
  • 79642251a1 ADR 0169 accepted; design 08's join order starts with the tunnel jschoubben 2026-10-02 13:17:32 +02:00
  • 331cb94c6e ADR 0169 (proposed): a machine joins through the tunnel, and the bus is never public jschoubben 2026-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 jschoubben 2026-10-02 12:23:28 +02:00
  • 967c793eaa Merge remote-tracking branch 'origin/main' into decision/docker-module jschoubben 2026-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-admin 2026-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-admin 2026-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 jschoubben 2026-10-02 12:22:31 +02:00
  • 9bed54d3be Issue 197 resolved: the wired port is guarded before it is plugged in jschoubben 2026-10-02 12:22:15 +02:00
  • 413daf8ad5 Issue 197: a physical link that is down is not filtered when it comes up jschoubben 2026-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-admin 2026-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 jschoubben 2026-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-admin 2026-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) jschoubben 2026-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-admin 2026-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-admin 2026-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 jschoubben 2026-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-admin 2026-10-02 09:31:49 +00:00
  • c8935aceca Issue 194 resolved: the fixed host forgot its former archive on all four machines jschoubben 2026-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-admin 2026-10-02 09:23:55 +00:00
  • d05ac367f1 Issue 196 resolved: the hub relays the mesh, re-swept live jschoubben 2026-10-02 11:23:37 +02:00
  • 1c0dafb918 Issue 196: the hub relays the mesh only on the ports it publishes itself jschoubben 2026-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-admin 2026-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-admin 2026-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-admin 2026-10-02 07:49:27 +00:00
  • 28d53dcc28 Issue 191 resolved: internal-only routes are served to the mesh, live on both proxies jschoubben 2026-10-02 09:49:25 +02:00
  • df667eb710 ADR 0167: a membership carries what its module receives, and who the mesh is jschoubben 2026-10-02 01:48:03 +02:00
  • 098a2ca485 Issue 191: a route with only an internal name is dropped as naming nothing jschoubben 2026-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-admin 2026-10-02 00:44:29 +00:00
  • db5ff5a5ee Issue 195: every assigned module is counted as a bus user without a credential jschoubben 2026-10-02 02:44:24 +02:00
  • 780c2b6e58 Issue 194: the host's own former archive stops every machine applying anything jschoubben 2026-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 jschoubben 2026-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 jschoubben 2026-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 jschoubben 2026-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 jschoubben 2026-10-02 00:09:38 +02:00
  • 3d54fcbb86 Merge remote-tracking branch 'origin/main' into decision/docker-module jschoubben 2026-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 jschoubben 2026-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 jschoubben 2026-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 jochen 2026-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 jschoubben 2026-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-admin 2026-10-01 20:28:33 +00:00
  • 6f26f97fdb Issue 189: the plan's half is built; the moved word stays for a decision jschoubben 2026-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-admin 2026-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 jschoubben 2026-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-admin 2026-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 jschoubben 2026-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-admin 2026-10-01 19:00:53 +00:00
  • 50e4d9c2a7 ADR 0162: built, and proven live by the first tiered plan jschoubben 2026-10-01 21:00:10 +02:00