jschoubben
0231974226
Rebased onto main: ADR 0188 renumbered to 0201, and issue 202's evidence re-taken
...
The bundles refactor took 0188 on main while this waited in a pull request,
and the mesh's own code cites that one, so this record moves. Only the number
moved; the decision is the one taken on 2026-10-02, and the record says so.
Issue 202 re-checked against the refactored main: the fault stands, and the
test that surfaced it now fails one step earlier on issue 203's new credential
guard. Proven again past both — mint the credential, compose twice, and all
eight of dnsmasq's resources appear only with the setting set. ADR 0164 is
noted as the decision that answers half of it, and is not built.
2026-10-04 02:44:58 +02:00
jschoubben
92c029d10e
ADR 0189: the store keeps what the records name, and a maintenance step holds its writers still
...
Issue 108: the artifact store has never collected anything. Fifty-three
repositories on the machine that serves everything else, and the only outcome
of leaving it is a full disk reported as somebody else's failure.
The mesh decides what may go — from its own build records, so it never names
a digest it did not put there — and the store reclaims the bytes in a nightly
window with its server held still. Deletion on the one door takes nothing a
push did not already have.
Designs 18 and 20 amended; issue 108 resolved.
Also issue 202, found running the controller's suite: a module whose required
setting nobody set is left out of the machine in silence, and dnsmasq became
that module this morning.
2026-10-04 02:40:25 +02:00
jschoubben
2a60da821d
ADR 0188: a provider declares what it derives for each consumer, and the mesh tells both ends
...
Issue 124: a value the mesh's own rule produced reached neither end as a
statement. The object store's provisioner derived each consumer's bucket in
its own code; all three consumers transcribed the rule into their own
definitions, one of them wrong, and each of the three also named the machine
it happens to run on.
A served value may now name the consumer the mesh is serving. Design 27
amended; issue 124 resolved.
2026-10-04 02:40:06 +02:00
jochen
db71b83711
Issues 213 and 223 resolved: the controller runs as a process, and genesis hands over to it
2026-10-04 02:19:09 +02:00
jochen
24a51a8e53
ADR 0200: genesis pivots to the controller as a container, and the first push hands it to a process
2026-10-04 01:41:30 +02:00
jochen
63d328147e
Issues 215, 221 resolved with live proof; 222 diagnosed and resolved
2026-10-04 01:29:32 +02:00
jochen
df503d1cff
Issues 219, 220 resolved, 221 located, 222 and 223 opened; WP4c built and proven
2026-10-04 01:14:44 +02:00
jochen
8d8e5c9a7e
Issues 211, 212, 214, 216, 217 resolved with their proofs; 215's fix recorded
2026-10-04 00:24:53 +02:00
jochen
9ddbc4c68e
Issues 219-221: the builder's ordering gaps seen while rolling out issue 218
2026-10-04 00:16:08 +02:00
jochen
029698fdc8
Issue 218 resolved: the runtime follows its membership, and a refused subscription is not fatal
2026-10-04 00:14:04 +02:00
jochen
4b8c5e3b11
Issue 218 located: the controller issued a mesh seat to every claimant; fixed in mesh-controller#248
2026-10-03 23:31:13 +02:00
jochen
557760e537
Issue 218: a mesh seat is answered by a module on a machine that does not hold it
2026-10-03 23:25:17 +02:00
mesh-admin
6b1ebd1d4a
Merge pull request 'Issue 217: a refused announcement took down every container's runtime, and the console with it' ( #336 ) from issues/217-a-refused-announcement into main
mesh/delivery held for a person: merged without a passing check: only a person decides that it goes on
2026-10-03 21:20:06 +00:00
jochen
08cea893bd
Issue 217: a refused announcement took down every container's runtime, and the console with it
2026-10-03 22:47:28 +02:00
jochen
04625d3e35
Issues 211, 214, 215, 216 diagnosed: root causes and the branches that fix them
2026-10-03 22:28:40 +02:00
jochen
c9418af42e
Issues 214–216: a plan losing its own controller, a module pinned silently, a bundle never delivered
2026-10-03 22:15:19 +02: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
jochen
5fa43ff755
Issue 212: a toolchain rebuild keeps the SDK it cached
2026-10-03 21:24:39 +02: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
jochen
7e464e3b22
Issue 210 resolved by mesh-host #80 : an unchanged process keeps its record
2026-10-03 13:44:49 +02: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
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
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
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
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
73c4d24024
Merge pull request 'Issues 203–206 diagnosed and located' ( #310 ) from issues/203-206-diagnosed into main
mesh/delivery held for a person: merged without a passing check: only a person decides that it goes on
2026-10-03 09:43:00 +00:00
jochen
273b932329
Issue 208: a seat's worker is made only when the controller starts, so a holder assigned later finds none
2026-10-03 11:33:08 +02:00
jochen
2f0ce4ce19
Issue 207: a re-made worker replayed every ask the stream kept, and the mesh re-registered its past
2026-10-03 11:05:40 +02:00
jochen
bf3338898e
Issue 204: diagnosed and located — a declaration was numbered after composing, and a dying sender recorded nothing
2026-10-03 04:03:51 +02:00
jochen
4891cdeac5
Issues 203, 205, 206: diagnosed and located
2026-10-03 03:51:41 +02:00
jochen
561f26fb34
Issue 206: a seat's worker changing type strands its holder, and the build that would fix it
2026-10-03 03:45:33 +02:00
jochen
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
2026-10-02 23:47:12 +02:00
mesh-admin
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/delivery held for a person: merged without a passing check: only a person decides that it goes on
2026-10-02 20:14:58 +00:00
jschoubben
e4a0c73e2b
Merge remote-tracking branch 'origin/main' into issues/192-193-console-registration-and-store-query
2026-10-02 22:14:24 +02:00
jschoubben
d1aeee42a4
Regenerate the decision index after merging main
2026-10-02 22:14:21 +02:00
jschoubben
131a5e4714
Issue 201: what was established about the race while closing the outage half
2026-10-02 18:19:12 +02:00
jschoubben
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
2026-10-02 18:16:24 +02:00
jschoubben
d0d5799884
Issue 201: a push recreated the controller at a digest older than the seat row its successor wrote
2026-10-02 17:15:22 +02:00
jschoubben
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
...
Another session's 0169 landed first. The collision check from issue 155
covered issue folders only; it covers decision records now, and would have
refused this.
2026-10-02 14:51:22 +02:00
jschoubben
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)
2026-10-02 14:25:03 +02:00
jschoubben
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
2026-10-02 12:23:28 +02:00
jschoubben
967c793eaa
Merge remote-tracking branch 'origin/main' into decision/docker-module
2026-10-02 12:23:27 +02:00
mesh-admin
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/delivery held for a person: merged without a passing check: only a person decides that it goes on
2026-10-02 10:22:51 +00:00
jschoubben
426f741ad0
Issue 198: the home network's DNS server ran outside the mesh, and its filter closed it
2026-10-02 12:22:31 +02:00
jschoubben
9bed54d3be
Issue 197 resolved: the wired port is guarded before it is plugged in
2026-10-02 12:22:15 +02:00
jschoubben
413daf8ad5
Issue 197: a physical link that is down is not filtered when it comes up
2026-10-02 12:22:15 +02:00