a7cf5c0c1b
Issue 142: the host is the one thing the mesh does not deliver
jschoubben2026-09-29 00:03:24 +02:00
c6f86ae935
Merge pull request 'ADR 0140: the filter constrains what arrives from outside' (#171) from decision/0140-filter-constrains-what-arrives-from-outside into main
mesh-admin2026-09-28 21:32:10 +00:00
1aeb4fe8d8
ADR 0140: the filter constrains what arrives from outside, and says nothing about a machine's own guests
jschoubben2026-09-28 23:31:50 +02:00
08108b569d
Merge pull request 'ADRs 0138 and 0139: an endpoint's reach, and networks forwarded because a module declared them' (#170) from decision/0138-endpoint-reach-and-0139-declared-networks into main
mesh-admin2026-09-28 21:03:49 +00:00
14ff89fa40
ADRs 0138 and 0139: an assignment binds an endpoint and says how far it reaches, and a network is forwarded because a module declared it
jschoubben2026-09-28 23:03:32 +02:00
2126e7b2cb
Merge pull request 'Issues 140 and 141: an endpoint's reach, and a forward chain that does not follow the modules' (#169) from issue/140-endpoint-reach-and-141-forward-chain into main
mesh-admin2026-09-28 20:58:03 +00:00
dcdfcf104e
Issues 140 and 141: an endpoint's reach is declared nowhere, and the forward chain follows constants instead of the modules
jschoubben2026-09-28 22:57:38 +02:00
d23ace1646
Merge pull request 'Issues 138 and 139' (#168) from issue/138-the-uplink-seat-and-139-an-internal-route-name into main
mesh-admin2026-09-28 19:46:22 +00:00
5dbde0b13a
Issues 138 and 139: a seat with interchangeable holders that are not, and an internal route name that resolves to the wrong machine
jschoubben2026-09-28 21:46:20 +02:00
db3868e2b0
Merge pull request 'ADR 0137: a machine says which networks it routes' (#167) from decision/0137-a-machine-says-which-networks-it-routes into main
mesh-admin2026-09-28 19:31:03 +00:00
05039c4f10
ADR 0137: a machine says which networks it routes, and issue 137 is how that was found
jschoubben2026-09-28 21:31:01 +02:00
b7bf601ca4
Merge pull request 'Issue 136: a module may name a program the machine does not have' (#166) from issue/136-a-module-may-name-a-program-the-machine-lacks into main
mesh-admin2026-09-28 18:50:37 +00:00
bff32e3370
Issue 136: a module may name a program the machine does not have, and everything reports success
jschoubben2026-09-28 20:50:35 +02:00
d6b62387f2
Merge pull request 'Issue 135: a container's mesh names are not compared' (#165) from issue/135-a-containers-mesh-names into main
mesh-admin2026-09-28 15:19:37 +00:00
4789624857
Issue 135: a container's mesh names are not compared, so a moved address is never noticed
jschoubben2026-09-28 17:19:35 +02:00
e00862e317
Merge pull request 'ADR 0112 is accepted, and issue 134 records what it is not yet' (#164) from decision/0112-accepted-and-issue-134 into main
mesh-admin2026-09-28 15:12:15 +00:00
3a92e4b80c
ADR 0112 is accepted, and issue 134 records what it is not yet
jschoubben2026-09-28 17:12:12 +02:00
bfddf78bf3
Merge pull request 'Design 32: what shipped today, and the records it rests on' (#163) from design/28-and-32-what-shipped into main
mesh-admin2026-09-28 14:50:44 +00:00
0b291d89f3
Design 32: what shipped today, and the records it rests on
jschoubben2026-09-28 16:50:41 +02:00
a924efcc28
Merge pull request 'ADR 0136: a step gates its module, not the machine' (#162) from decision/0136-a-step-gates-its-module into main
mesh-admin2026-09-28 13:38:18 +00:00
b421c73a5a
ADR 0136: a step gates its module, not the machine
jschoubben2026-09-28 15:38:16 +02:00
017b1401e4
Merge pull request 'ADR 0135: a module version prepares its state before it runs' (#161) from decision/0133-0134-migrations-and-deploy-facts into main
mesh-admin2026-09-28 09:57:47 +00:00
476cda417d
ADR 0135 supersedes 0133: a module version prepares its state before it runs
jschoubben2026-09-28 11:57:16 +02:00
74ba3ff1d4
Merge pull request 'ADR 0133 and 0134: who runs migrations, and the mesh saying what it applied' (#160) from decision/0133-0134-migrations-and-deploy-facts into main
mesh-admin2026-09-28 09:45:49 +00:00
891c7a945e
ADR 0133 and 0134: who runs migrations, and the mesh saying what it applied
jschoubben2026-09-28 11:45:47 +02:00
83cbeb8db8
Merge pull request 'Issue 133: the control plane's schema is migrated at birth and never again' (#159) from issue/133-the-control-plane-migrates-before-it-serves into main
mesh-admin2026-09-28 08:27:32 +00:00
ab6db9369b
Issue 133: the control plane's schema is migrated at birth and never again
jschoubben2026-09-28 10:27:30 +02:00
84571b4825
Merge pull request 'ADR 0132: a seat carries the tools its holder must serve' (#158) from decision/0132-a-seat-carries-the-tools-its-holder-must-serve into main
mesh-admin2026-09-28 08:17:01 +00:00
d57196102d
ADR 0132: a seat carries the tools its holder must serve
jschoubben2026-09-28 10:16:59 +02:00
e6402cf777
Merge pull request 'Issue 132: a module can be recorded without the directory it lives in' (#157) from issue/132-a-module-can-be-recorded-without-its-directory into main
mesh-admin2026-09-28 07:20:07 +00:00
4f0d144833
Issue 132: a module can be recorded without the directory it lives in
jschoubben2026-09-28 09:20:05 +02:00
98d94ef71e
Merge pull request 'Design 28: 5.5 done, the mesh has one bus; issue 131 resolved' (#156) from design/28-one-bus-issue-131-resolved into main
mesh-admin2026-09-28 01:59:41 +00:00
4e13280604
Design 28: 5.5 done, the mesh has one bus; issue 131 resolved
jschoubben2026-09-28 03:59:39 +02:00
8783a13448
Merge pull request 'Design 28: the mesh runs on the new bus' (#155) from design/28-the-mesh-runs-on-nats into main
mesh-admin2026-09-28 00:40:29 +00:00
a31cfcf461
Design 28: 5.3 is built and was used for the hand-over
jschoubben2026-09-28 02:28:06 +02:00
75b3861911
Design 28: the mesh runs on the new bus
jschoubben2026-09-28 02:27:49 +02:00
694555214a
Merge pull request 'Design 26: which assignment holds a seat is on record, and changes as one act' (#153) from design/26-a-seat-is-held-on-record into main
jschoubben2026-09-27 21:22:56 +00:00
a7249541df
Design 26: which assignment holds a seat is on record, and changes as one act
jschoubben2026-09-27 23:20:36 +02:00
95d8253f71
Merge pull request 'ADR 0131: everything on the mesh speaks to the broker seat, and AMQP is not a provision' (#152) from decision/0131-everything-speaks-to-the-broker-seat into main
jschoubben2026-09-27 21:06:02 +00:00
784b487bf9
ADR 0131: everything on the mesh speaks to the broker seat, and AMQP is not a provision
jschoubben2026-09-27 23:03:05 +02:00
7ae711ba0b
Merge pull request 'Building the bus: the decisions the work needed, and what it taught back' (#150) from feat/nats-genesis into main
jschoubben2026-09-27 17:06:40 +00:00
51739c4302
The order the repositories land in is part of the rollout
jschoubben2026-09-27 19:04:45 +02:00
5cac268457
Two checks were wrong about where a seat is judged
jschoubben2026-09-27 18:57:49 +02:00
ce6ae943b7
Merge main: renumber this branch's records around the trunk's
jschoubben2026-09-27 18:23:41 +02:00
9ef9830dcf
ADR 0122: the predecessor is ending, and its broker goes with it
jschoubben2026-09-27 18:11:11 +02:00
dfac01a6dd
5.2: the readiness half is in, and what a failed move actually costs
jschoubben2026-09-27 17:59:26 +02:00
51f5ce5c0f
4.5 done: the catch-up needed nothing built, which was the answer
jschoubben2026-09-27 17:23:49 +02:00
fc64a2c1a4
4.4 done: a person's account and their client
jschoubben2026-09-27 17:07:28 +02:00
9fc4e74b0d
Merge pull request 'to-be 31: a module declares its fail2ban jail, mesh composes them per node' (#149) from design/a-module-declares-its-jail into main
jschoubben2026-09-27 15:00:16 +00:00
225dfa9451
to-be 31: a module declares its fail2ban jail, mesh composes them per node
jschoubben2026-09-27 16:59:56 +02:00
bfefb1dbdb
4.3: the installer can raise a mesh on the new bus
jschoubben2026-09-27 16:39:48 +02:00
85c0a3e567
4.2 done: a build is work submitted to a role, on both buses
jschoubben2026-09-27 16:02:17 +02:00
a39765c924
Merge pull request 'ADR 0122: a seat is data the controller owns; a rename is a database update' (#148) from design/a-seat-is-data into main
jschoubben2026-09-27 13:41:10 +00:00
a8921fe737
ADR 0122: a seat is data the controller owns; a rename is a database update
jschoubben2026-09-27 15:40:55 +02:00
c8f430290e
ADR 0121: a seat carries the protocol of its role
jschoubben2026-09-27 15:24:17 +02:00
d98d6fca11
Merge pull request 'to-be 30: the mesh updates itself on a push' (#147) from design/the-mesh-updates-itself into main
jschoubben2026-09-27 12:49:32 +00:00
b8cdfce16d
to-be 30: the mesh updates itself on a push
jschoubben2026-09-27 14:49:02 +02:00
c4a8455e2e
Issue 127 resolved; design 29 says what wildcards are and how the rule is checked
jschoubben2026-09-27 14:45:08 +02:00
bf7297b7ed
Merge pull request 'ADR 0121: keep distribution, retire only verdaccio; node-* seats migrated' (#146) from design/0121-keep-distribution-fix into main
jschoubben2026-09-27 12:36:54 +00:00
5a9917f802
Merge pull request 'ADR 0121: a system seat is named for its scope; a module may define its own' (#145) from design/system-seats-are-named-by-scope into main
jschoubben2026-09-27 12:15:22 +00:00
8a6ee9177c
ADR 0121: a system seat is named for its scope; a module may define its own
jschoubben2026-09-27 14:15:05 +02:00
dd577e9ebe
1.7 is done; 4.1 waits on nothing but the bed
jschoubben2026-09-27 03:20:42 +02:00
a9b8f41570
Design 25 §4: the server verifies no client certificate, and writes only accounts
jschoubben2026-09-27 02:51:40 +02:00
92a5e8fc05
Merge pull request 'ADR 0120: a roster fact carries its format as a template; rewrite to-be 29' (#144) from design/roster-fact-is-a-template into main
jschoubben2026-09-26 23:51:21 +00:00
8c91ba1cfa
1.7 in progress: the list is derived and the keys are kept
jschoubben2026-09-27 01:50:04 +02:00
0f7f628730
ADR 0120: note the shared/region interaction with hq 128
jschoubben2026-09-27 01:42:00 +02:00
970da74136
1.7: the composer exists and the composition does not
jschoubben2026-09-27 01:39:20 +02:00
4d4012cdf6
ADR 0120: a roster fact carries its format as a template; rewrite to-be 29 around it
jschoubben2026-09-27 01:33:12 +02:00
0a61531c42
WBS 3.5 done; 4.1 waits on one thing, an enrolment user per token
jschoubben2026-09-27 01:32:26 +02:00
4b0b659084
Merge pull request 'ADR 0119: a taken tunnel's predecessor is retired once the take is proven' (#143) from decision/0119-a-taken-tunnels-predecessor-is-retired into main
jschoubben2026-09-26 22:59:15 +00:00
0042ca9258
0119: link ADR 0118 now that it is on main
jochen2026-09-27 00:58:55 +02:00
63c19456b4
0119 review: rollback needs the private network unassigned first; a configuration written back is retired again with the first original kept; only the interface's own file, never a link
jochen2026-09-27 00:53:13 +02:00
2f195d501e
to-be 08: the found tunnel's configuration is retired once the take is proven (ADR 0119)
jochen2026-09-27 00:40:57 +02:00
8a78ff4efe
ADR 0119: a taken tunnel's predecessor is retired once the take is proven
jochen2026-09-27 00:40:31 +02:00
762300a380
Merge pull request 'issue 130: undeclaring a service stops it, even one the mesh only reloads or keeps running' (#142) from issue/130-undeclaring-a-service-stops-it into main
jschoubben2026-09-26 22:58:43 +00:00
248c99ca6c
0118/130: link ADR 0117 now that it is on main
jochen2026-09-27 00:58:17 +02:00
13208f0f48
0118: give a unit back the state it was found in — never-stop broke the converge rollback; process removal found and fixed
jochen2026-09-27 00:21:18 +02:00
ebd19c4c6c
ADR 0118: undeclaring removes what the mesh made, gives back what it changed, leaves the machine's units as they are — resolves issue 130
jochen2026-09-27 00:16:01 +02:00
dd4cbabffb
130: ADR 0117 named, not linked, until it is on main
jochen2026-09-27 00:08:23 +02:00
5b76a09da6
issue 130: undeclaring a service stops it, even one the mesh only reloads or keeps running
jochen2026-09-27 00:08:09 +02:00
a363a605cb
Merge pull request 'issue 129: nothing makes a machine trust the mesh's own certificate authority' (#141) from issue/129-nothing-makes-a-machine-trust-the-meshs-authority into main
jschoubben2026-09-26 22:57:30 +00:00
24835ab710
Merge pull request 'issue 128: the machine's hosts file is written whole, and on a workstation it is shared' (#140) from issue/128-the-hosts-file-is-written-whole into main
jschoubben2026-09-26 22:57:02 +00:00
ba397d4cbe
Merge pull request 'ADR 0117: a machine's uplink is a seat — the mesh configures the manager, never the link' (#139) from decision/0117-the-uplink-is-a-seat into main
jschoubben2026-09-26 22:56:27 +00:00
f555d523c7
WBS 3.4 is done both halves; issue 127 holds 4.2, 4.3 and catch-up
jschoubben2026-09-27 00:55:07 +02:00
4f93d304d7
WBS: a person's account is done; the client is not blocked by step 3
jschoubben2026-09-27 00:18:05 +02:00
d898bd87e8
Step 5.4 was wrong from 0119 onward; removed
jschoubben2026-09-27 00:16:45 +02:00
7e4da874a9
Design 25 §2: the eaten reply address is verified, not assumed
jschoubben2026-09-27 00:15:00 +02:00
53092020eb
WBS: asking a tool is through the seam; a build is a different shape
jschoubben2026-09-27 00:11:44 +02:00
df4a3538c3
0117 review: a holder's service declares no state — the manager's lifecycle is the machine's; a start-only setting's gap on a fresh machine
jochen2026-09-27 00:07:42 +02:00
00817fb9e3
Design 25: the store window, and what moving it into the server changes
jschoubben2026-09-27 00:06:15 +02:00
90b8eeff6b
129 review: the example name is a routed name, not a doubled suffix
jochen2026-09-27 00:03:36 +02:00
a865fc7d79
128 review: located; the fix as built (block, at, never held, order)
jochen2026-09-27 00:03:30 +02:00