jochen
e8c8f0488b
Review round 1: check the process's whole publish set, not merely that each wanted subject is in it (issue 1180)
2026-10-19 03:18:26 +02:00
jochen
cfb6a8c531
Review round 1: assert the own secret's mode, not merely log it (issue 1170)
2026-10-19 03:18:22 +02:00
jochen
9b7f9a7fd2
Review round 1: a carried module's queue consumer survives PruneHeard, a work-queue stream's restricted metadata is proven on the server config (issue 1178)
...
ConsumersOf's carried-module path (a module the tool runner carries, no
account of its own — mesh-mail's real shape) was not passing Queues
through, so its work-queue consumer was missing from the composed list
and PruneHeard would have removed what issueProcess made for it. Fixed,
with a test through Users -> ConsumersOf.
Extracted EnsureStream's config building into StreamConfigFor, a pure
function, so the dead-letters test can assert the restricted metadata
EnsureStream would actually send for a work-queue stream instead of
setting the dead letter's header by hand, which passed whether or not
modstreams.go's out.Restricted = true was there at all.
2026-10-19 03:18:18 +02:00
jochen
65632e7999
Review round 1: mesh-mail's real shape has no broker, rollout mint issues its processes, the acceptance test connects with the minted account (issue 1181)
...
mayIssue no longer requires a module's own broker secret when one of its
processes declares bus: mesh-mail's real manifest has none, its tools
served by the tool runner. rollout mint gained a KindProcess case, so a
process's account rotates the same way every other bus account does. The
release's acceptance test now composes its principals the real way
(inventory.ProcessesOf -> broker.Users -> broker.ComposeAccounts), mints
through the store as module issue does, and sets each connection's own
inbox prefix so replies are not refused; it moved from internal/broker
(which cannot import inventory) to cmd/mesh-controller. Added an
integration test proving the mint, accept and vault hand-off, and that
issuing again rotates the password.
2026-10-19 03:18:08 +02:00
jochen
f6a48ac5ef
Let module issue mint and deliver a bus process's account (issue 1181)
2026-10-19 02:55:29 +02:00
jochen
93a82cb032
Grant a bus process an account scoped to its own declaration (issue 1180)
2026-10-19 02:44:38 +02:00
jochen
de651e0fd1
Give a work-queue stream its one consumer, drop-only dead letters (issue 1178)
2026-10-19 02:33:22 +02:00
jochen
97ee33e8f4
Let a process say what it does on the bus (issue 1179)
2026-10-19 02:17:39 +02:00
jochen
a069898c0c
Let a module stream declare work-queue retention (issue 1177)
2026-10-19 02:11:05 +02:00
jochen
ffad53aad2
Let an own secret name its owner (issue 1170)
2026-10-19 02:04:00 +02:00
mesh-tools
89cfa9431d
Merge pull request 'The controller takes what the watchman says: key-ttl buckets, the checks running readable, stuck keys raised, silence from presence (design 47 R2b)' ( #388 ) from feat/delivery-watch into main
2026-10-18 23:34:07 +00:00
mesh-tools
5939bbdefe
Merge pull request 'An approved merge's first build passes the guard of a build through a verb, and a failed one is recorded (issues 1146, 1169)' ( #387 ) from fix/1146-first-build-ask into main
2026-10-18 23:20:17 +00:00
jschoubben
ec85cdf70c
The system-exports reload test waits for the event naming the user it connected, past the watchman's own (issue 1169)
mesh/merge-gate head ec85cdf70c07 merged into trunk cec26d859695 — pass: builds mesh-controller → novox; no bus step; every machine composes with the chang…
mesh/repo-check head ec85cdf70c07 merged into trunk cec26d859695 — pass: its merge-check.sh passed
2026-10-19 01:06:56 +02:00
jschoubben
cd303f68ed
The first-build test reads the asks its stub records under a lock: the merge path asks on its own goroutine (issue 1146)
2026-10-19 01:02:02 +02:00
jschoubben
2cbebbc011
A failed first build of a root module is kept under a key the bus takes, and the real ask's test has the identity store (issue 1146)
2026-10-19 00:58:08 +02:00
jschoubben
ac79e29319
Merge remote-tracking branch 'origin/main' into feat/delivery-watch
...
mesh/repo-check head ac79e29319ee merged into trunk 5939bbdefe5a — pass: its merge-check.sh passed
mesh/merge-gate head ac79e29319ee merged into trunk 5939bbdefe5a — pass: group feat/delivery-watch composed: every machine composes with the change as it d…
mesh/delivery-group group feat/delivery-watch delivered: every member is delivered
# Conflicts:
# cmd/mesh-controller/doctor.go
2026-10-19 00:53:02 +02:00
jschoubben
ef0ca69cb0
The first build of a module a merge adds on the operator's Approve passes the guard of a build through a verb on the warrant it checked (issue 1146, AC9)
2026-10-19 00:48:56 +02:00
mesh-tools
cec26d8596
Merge pull request 'An approved merge into a repository nothing is built from asks its modules' first builds (issue 1146)' ( #386 ) from fix/1146-first-build-of-new-repo into main
2026-10-18 22:32:41 +00:00
jschoubben
e621e15d2f
Its comment names D18 too (issue 1146)
mesh/merge-gate head e621e15d2f5d merged into trunk b1cfb85f86ed — pass: builds build-agent, mesh-controller → ace, g14, novox, shanks; no bus step; every …
mesh/repo-check head e621e15d2f5d merged into trunk b1cfb85f86ed — pass: its merge-check.sh passed
2026-10-19 00:20:31 +02:00
jschoubben
a08498b240
Name the waiting first merge's probe D18: designs 06 and 54 already name probe D17 (issue 1146)
2026-10-19 00:20:20 +02:00
jschoubben
39ae7de6d3
Say a first merge that waits past ten minutes for mesh-delivery's word, with probe D17 (issue 1146, AC8)
2026-10-19 00:19:03 +02:00
jschoubben
4e12fc19b7
A first merge into a new repository waits kept for mesh-delivery's word, and the word's arrival asks the builds, with no timer; AC7 on the bus in both orders (issue 1146)
2026-10-19 00:16:36 +02:00
jschoubben
19f15d8ea0
A merge on the operator's Approve into a repository the mesh builds nothing from asks the first build of the modules it holds (issue 1146, AC6, AC7)
2026-10-19 00:11:52 +02:00
mesh-tools
b1cfb85f86
Merge pull request 'The have bucket takes a node's whole facts, as large as a chain value, never cut (issue 1162)' ( #385 ) from fix/1162-have-node-size into main
2026-10-18 22:07:27 +00:00
jschoubben
75a27ec1a4
The have bucket takes a node's whole facts, as large as a chain value, never cut (issue 1162)
...
mesh/merge-gate head 75a27ec1a4bc merged into trunk 85af245f1af1 — pass: builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus…
mesh/repo-check head 75a27ec1a4bc merged into trunk 85af245f1af1 — pass: its merge-check.sh passed
A node's own key carries its profile and was refused at 4 KiB on novox and g14
(nats: message size exceeds maximum allowed).
2026-10-18 23:51:56 +02:00
mesh-tools
85af245f1a
Merge pull request 'A delivery plan passes a machine silent past its bound at a middle tier, as at the last (issue 1160)' ( #384 ) from fix/1160-silent-mid-tier into main
2026-10-18 20:15:32 +00:00
jschoubben
1ec27e6ba1
Read tier 1's build and the note once the plan has reached them in the silent middle tier test (issue 1160)
mesh/merge-gate head 1ec27e6ba18f merged into trunk 461fa9c7b4ed — pass: builds mesh-controller → novox; no bus step; every machine composes with the chang…
mesh/repo-check head 1ec27e6ba18f merged into trunk 461fa9c7b4ed — pass: its merge-check.sh passed
mesh/delivery covered after its stop: a later merge that contains it was delivered: novox/mesh-controller@75a27ec1a4bc (merged as b1cfb85f into main, wal…
2026-10-18 21:24:07 +02:00
jschoubben
425134784a
A machine silent past the bound at a tier between the first and the last is named and left as it was, as at the last tier (issue 1160)
2026-10-18 21:15:48 +02:00
jschoubben
fb66608a13
A machine whose presence says online is heard now; last heard is otherwise the later of last_seen and the presence time (issue 1156)
2026-10-18 21:04:59 +02:00
jschoubben
7be2df627f
The controller raises what the watchman says stopped moving, and takes a machine's silence from its presence (issue 1156)
2026-10-18 21:00:10 +02:00
jschoubben
cb006fc8dd
A refused send key raises a condition in place of the timer that stood in for it (issue 1157)
2026-10-18 20:57:10 +02:00
jschoubben
0273609090
The checks running are readable through reads and carry when each started (issue 1155)
2026-10-18 20:55:18 +02:00
jschoubben
3b49d7044f
A state entry may say key-ttl and its bucket allows a time to live per key (issue 1154)
2026-10-18 20:53:42 +02:00
jschoubben
ba59283b4b
Pin mesh-sdk at the stuck bucket's merge (issue 1156)
2026-10-18 20:51:32 +02:00
mesh-tools
461fa9c7b4
Merge pull request 'The have bucket and its grants, a module and build per resource, the bus's connect events for the watchman, and a new module registered at its merge's Approve (issues 1136, 1145, 1147, 1146)' ( #383 ) from feat/delivery-have into main
2026-10-18 18:36:12 +00:00
jschoubben
06bf8cb2fb
Merge branch 'feat/delivery-have-broker' into feat/delivery-have
mesh/repo-check head 06bf8cb2fb7a merged into trunk 48e9656c670b beside mesh-host#118@aab65b81 — pass: its merge-check.sh passed
mesh/merge-gate head 06bf8cb2fb7a merged into trunk 48e9656c670b — pass: group feat/delivery-have composed: every machine composes with the change as it di…
mesh/delivery-group group feat/delivery-have delivered: every member is delivered
2026-10-18 19:27:59 +02:00
jschoubben
222c9c1d72
Judge migration 105 alone now that 106 follows it, and list the new store tests (issue 1145)
2026-10-18 19:27:15 +02:00
jschoubben
0520773412
The connections request asks for user names, which the server leaves out otherwise (issue 1147)
2026-10-18 19:27:12 +02:00
jschoubben
eba864dc5f
Pin mesh-host at 9d9e3a46c4f5 and recapture it beside (issue 1145)
2026-10-18 19:18:38 +02:00
jschoubben
2d3d5ab616
Test that declarationWith sets modules and builds for a node that reads them (issue 1145); the Approve of a head it did not cover refuses a new module, heads keyed by the repository (issue 1146)
2026-10-18 19:18:11 +02:00
jschoubben
dc65fe2319
Send each resource's module and each module's build to a node that reads them; pin mesh-host at 0b391f49a25f (issue 1145)
2026-10-18 19:11:10 +02:00
jschoubben
fc43238267
Merge branch 'feat/delivery-have-broker' into feat/delivery-have
2026-10-18 19:09:38 +02:00
jschoubben
8c8bc5021e
The bus's system account exports MESH's connect and disconnect events and connections request, heard only by the watchman (issue 1147)
2026-10-18 19:07:06 +02:00
jschoubben
557c11af1e
A second new module from a repository is judged alongside, with no warrant asked: test (issue 1146, AC5)
2026-10-18 19:06:15 +02:00
jschoubben
661e8eff2f
The broker asserts the have bucket and grants each node its own keys of it, the controller none (issue 1136)
2026-10-18 19:04:55 +02:00
jschoubben
8c0fa40e65
A new module from a repository nothing registered is built from registers on the operator's Approve of its merge (issue 1146, ADR 0432)
2026-10-18 19:04:38 +02:00
jschoubben
6746ab6492
Pin the SDK with delivery's keys, from a commit the forge keeps (issue 1136)
...
The old pin named mesh-sdk #28 's head, which no branch holds, so a fresh
download of the controller could not fetch it.
2026-10-18 19:00:44 +02:00
mesh-tools
48e9656c67
Merge pull request 'Lay the builds out before the start reads them, so the controller does not exit on its own start (issue 1121)' ( #382 ) from fix/lay-builds-out-before-serving into main
2026-10-18 12:50:37 +00:00
jschoubben
a825a4c904
The first read of a chain not laid out lays it out, so no read of the start is refused (issue 1121)
...
mesh/merge-gate head a825a4c90446 merged into trunk d3556f452e8c — pass: builds build-agent, mesh-controller → ace, g14, novox, shanks; no bus step; every …
mesh/repo-check head a825a4c90446 merged into trunk d3556f452e8c — pass: its merge-check.sh passed
The layout gate is switched on when the stores open (UseChainOpener), before
attachTheChain; a read of the start came first, was refused, and the
controller exited. A read that finds no marker now lays the builds out once,
under a lock, and is refused only when that fails (a process without the
lease).
2026-10-18 14:39:43 +02:00
jschoubben
315c622386
Lay the builds out before the start reads them, so the controller does not exit on its own start (issue 1121)
...
mesh/merge-gate waiting in the build queue since 14:36
mesh/delivery superseded: a newer head of the same pull request
Delivery 2 (#381 ) gated every chain read on the layout marker and laid the
builds out beside the start; a read of the start then met the gate, the
controller exited, and systemd started it again every five seconds from
14:34 on 2026-10-18. The layout now runs once inside attachTheChain, before
anything reads; it skips keys laid out before, so it takes seconds, and a
failure is retried beside the serving as before.
2026-10-18 14:36:04 +02:00