jschoubben
d5d53893a4
Send the bus its user list before a starting controller writes (issue 1800)
...
A new controller's grants reached the bus only after its gate, so the
buckets it newly writes were refused until then. At start it now sends
the bus's machine the user list alone, every build there kept.
2026-10-22 20:51:08 +02:00
jschoubben
a0b2d98002
Merge main (upgrade safety's declared packages, issue 1840) and pin the R4e mesh-sdk member's final head 875c680d, re-vendored here and in modules/route-proxy; the controller announces declared-packages readable (issue 1790, D1; E)
2026-10-22 20:44:59 +02:00
jschoubben
bc80683b9e
Count the work the take-ins start in the background, so a test's mesh closes only once that work has ended (issue 1851, A5-A7; issue 1790, D3)
2026-10-22 20:41:30 +02:00
jschoubben
420ae3d0e7
Test the group check's answer without swapping standard output, and wait for a take-in to forget a new module's wait (issue 1299, C2; issue 1851, A5)
2026-10-22 20:19:57 +02:00
jschoubben
7c0e1d223f
Serve a removed verb as its refusal, not as a verb this build is behind on, and fit the tests of the verbs and the stopped checks (issue 1851, A11a; issue 1299, C1; issue 1318, C3)
2026-10-22 19:38:02 +02:00
jschoubben
dfc2f2aa98
Take a walk's key in again when it was recorded at an earlier merge, so the module is registered at the commit the walk carries before it is built (issue 1851, A6)
2026-10-22 19:05:05 +02:00
jschoubben
ab33f015ec
Say again what the controller keeps at every push, so a word refused before its grant is kept once a push carries it (issue 1790, D1)
2026-10-22 19:05:05 +02:00
jschoubben
791c2a3d48
Refuse a removed verb by name before reading its arguments, as the SDK member's table now offers none (issue 1851, A11a; issue 1318, C3)
2026-10-22 19:05:05 +02:00
jschoubben
d36e0ea278
Announce the controller's states, keep every module's word, and grant a read only where its owner announced the state readable; the copied list of the controller's mirrors goes (issue 1790, D1-D4, ADR 0495, ADR 0513 §3)
2026-10-22 19:05:04 +02:00
jschoubben
45d091778c
Refuse delivery-plan and forget-checks by name and take a merge's warrant from the teller alone, no longer mesh-delivery's (issue 1318, C3, ADR 0450 §8)
2026-10-22 19:05:04 +02:00
jschoubben
3a1937914e
Ask build-agent no composed check of a delivery group, and answer that the checker judges it (issue 1299, C2, ADR 0503 §3)
2026-10-22 19:05:04 +02:00
jschoubben
25fdf9920e
Read a commit as the same as itself however short, and fit the pending assignments' tests to a mesh that asks no build (issue 1851, A9, A10)
2026-10-22 19:05:04 +02:00
jschoubben
323e1270cc
Ask no pull request check of build-agent but the own merge-check.sh of a repository whose trunk requires mesh/repo-check alone, and say every verdict with no gate layer (issue 1299, C1, ADR 0503 §3, §5)
2026-10-22 19:05:04 +02:00
jschoubben
e7e23c57cc
Read a module whose every artifact names its paths from those paths and its manifest alone, so a change elsewhere in its directory moves nothing (issue 1758, B1, ADR 0499 §5)
2026-10-22 19:05:04 +02:00
jschoubben
a8387ebad8
Name, before the switch, which modules it moves: the held build's digests against the builder's done key, images and packages said as what cannot be compared (issue 1851, A13)
2026-10-22 19:05:04 +02:00
jschoubben
1963d84a7a
Refuse, in the one function every ask goes through, an ask of build-agent for any module but the builder's own (issue 1851, A12, ADR 0453 §5)
2026-10-22 19:05:04 +02:00
jschoubben
b71425867f
Register a module from a repository the catalogue does not build at the controller's terminal alone, from its done trunk key, naming exactly its repository and path (issue 1851, A11b, ADR 0501 §4)
2026-10-22 19:05:04 +02:00
jschoubben
c7039d81e1
Refuse build, rebuild and replay --register by name, naming what replaced them, and delete the hand builds (issue 1851, A11a, ADR 0501 §5)
2026-10-22 19:05:04 +02:00
jschoubben
f76da2ce9c
Ask the checker for a try of a branch head, not build-agent, and read its word in today's answer (issue 1851, A11, ADR 0501 §5)
2026-10-22 19:05:04 +02:00
jschoubben
7f6d418205
Mark the walks the integration tests drive around the one ask left as the builder's own, and expect no ask of a moved module (issue 1851, A5, A6)
2026-10-22 19:05:04 +02:00
jschoubben
0aec975d19
Keep an assignment of a module whose key is coming pending on that key and ask no build; nothing asks a request again at start (issue 1851, A10)
2026-10-22 19:05:04 +02:00
jschoubben
9da79ef8c3
Move no module whose fingerprint is unchanged, and let a key's build stand on the held build-agent build of the same digests at the switch (issue 1851, A9)
2026-10-22 19:05:04 +02:00
jschoubben
7743bd0d4b
Delete the walk's reuse of a check's build: a walk takes keys and asks build-agent only for the builder's own module (issue 1851, A8)
2026-10-22 19:05:04 +02:00
jschoubben
62268cf43d
Take a walk's modules from the builder's done keys and ask no build but the builder's own: a key building or unreferenced holds the tier and says so, a failed key fails the walk in its words (issue 1851, A6, A7)
2026-10-22 19:05:04 +02:00
jschoubben
ea3c8ad7f6
Register a new module from the builder's first done key and ask no first build; its condition reads the key and names a manifest word this controller does not read (issue 1851, A5a, A5b)
2026-10-22 19:05:04 +02:00
jschoubben
d984f0a55d
Take a module in from the builder's done key of its trunk fingerprint: one record of the key's artifacts, its manifest judged against the catalogue trunk's predefined keys (issue 1851, A3, A4b, A4c)
2026-10-22 19:05:04 +02:00
jschoubben
f00b6aff8b
Judge a recorded build, not build-agent's outcome, and read a registration's warrant from the merge a key names, so a done key registers under the same rules (issue 1851, A4a)
2026-10-22 19:05:04 +02:00
jschoubben
e022a3fd6f
issue 1840/S3: look the declared packages up by name in the mirror's integration test, since every node also runs the mesh's own modules and their packages
2026-10-22 17:52:40 +02:00
jschoubben
684a8783e5
Merge remote-tracking branch 'origin/main' into feat/upgrade-safety
2026-10-22 17:40:00 +02:00
jschoubben
1e9b87e03a
Hold every refused module of a first merge and ask each again by its own path (issue 1173)
...
mesh/merge-gate head 1e9b87e03acd merged into trunk b8f77577fed2 — pass: builds build-agent, mesh-controller → ace, g14, novox, shanks; no bus step; every …
mesh/repo-check head 1e9b87e03acd merged into trunk b8f77577fed2 — pass: its merge-check.sh passed
mesh/check failed: integration: github.com/novox/mesh-controller/internal/identity.TestACertificateChainsToTheMeshsOwnAuthority: authority_test.go:45:…
A held merge was asked again by the rule of a first merge, which finds nothing once a sibling module of the
same merge registered, so it stayed held forever; and a second refusal in a merge already held fell through to
a failed build. The hold now keeps a list of module, path and word, a refusal in a held waiting merge joins it,
and the delivery of build-agent asks each held path again on the merge's Approve warrant.
2026-10-22 16:50:06 +02:00
jschoubben
4538d05732
Ask a held first build again when a delivery of build-agent ends (issue 1173)
...
ADR 0482 section 5: the build waiting for a build-agent that reads its manifest is asked once the plan delivering it ends.
2026-10-22 16:19:45 +02:00
jschoubben
980d396d40
Keep a first merge whose manifest word the running build-agent does not read, and name it (issue 1173)
...
ADR 0482 section 5: a merged manifest the running reader refuses waits for the newer reader, never failed.
2026-10-22 16:18:39 +02:00
mesh-tools
b8f77577fe
Merge pull request 'Say a delivery's start and end with the machines its merges declare, and word a needed new head as its author's (ADR 0505)' ( #436 ) from feat/quiet-deliveries into main
2026-10-22 14:01:22 +00:00
jschoubben
b3786cc67e
Merge remote-tracking branch 'origin/main' into feat/upgrade-safety
...
# Conflicts:
# go.mod
# go.sum
# testdata/beside/CAPTURED
# vendor/modules.txt
2026-10-22 14:25:33 +02:00
jschoubben
b7d03b6897
Word a delivery that needs its author's new head as its author's, with no Stop (ADR 0505 §5)
mesh/repo-check head b7d03b68974d merged into trunk 8f2d22db0caa beside mesh-catalog#444@09e749bc — pass: its merge-check.sh passed
mesh/merge-gate head b7d03b68974d merged into trunk 8f2d22db0caa — pass: group feat/quiet-deliveries composed: every machine composes with the change as it…
mesh/delivery-group group feat/quiet-deliveries delivered: every member is delivered
mesh/check checking b7d03b68974d on 8f2d22db0caa
2026-10-22 14:25:26 +02:00
jschoubben
485eb44de4
issue 1840/S3: keep each node's declared packages on the bus, so the pacman verbs can say what a node declares
2026-10-22 14:23:58 +02:00
jschoubben
8d562f9b22
Say a walk's start and end again with the machines whose declaration its merges change (ADR 0505 §2)
2026-10-22 14:23:54 +02:00
mesh-tools
8f2d22db0c
Merge pull request 'Move route-proxy's program into its module and run it on the pinned alpine image (issues 1633, 1634, 1635, ADR 0480 §1-§4, §11)' ( #433 ) from feat/r4d into main
2026-10-22 12:19:07 +00:00
jschoubben
f501eaca43
Remove an image's pushed names with its build tag, and take no work under the free-space floor (issue 1834)
...
mesh/delivery covered: a later merge that contains it was delivered: novox/mesh-controller@01f615aa0ad6 (merged as 8f2d22db into main, walk plan-17926707…
mesh/merge-gate head f501eaca4305 merged into trunk 4463991e0609 — pass: builds build-agent, mesh-controller → ace, g14, novox, shanks; no bus step; every …
mesh/repo-check head f501eaca4305 merged into trunk 4463991e0609 — pass: its merge-check.sh passed
mesh/check failed: integration: github.com/novox/mesh-controller/internal/identity.TestACertificateChainsToTheMeshsOwnAuthority: authority_test.go:45:…
The registry push tags the image a second time, so removing only the build tag freed nothing.
The held image a comparison pulls goes after it is read, and a node under the floor leaves the ask
to another build node instead of taking it and failing.
2026-10-22 13:19:58 +02:00
jschoubben
4357b3688f
Tell mesh-config what a head declares at every head, so a head that reverts a key drops its held value (issue 1826)
mesh/repo-check head 4357b3688f58 merged into trunk 3d4ad6fefb7c — pass: its merge-check.sh passed
mesh/merge-gate head 4357b3688f58 merged into trunk 3d4ad6fefb7c — pass: group fix/1826-held-config composed: every machine composes with the change as it …
mesh/delivery-group group fix/1826-held-config delivered: every member is delivered
mesh/check failed: integration: github.com/novox/mesh-controller/internal/identity.TestACertificateChainsToTheMeshsOwnAuthority: authority_test.go:45:…
2026-10-22 11:07:34 +02:00
jschoubben
03927a6f6c
Carry a config value held for a pull request's new key into its composed check (issue 1826)
...
The controller tells mesh-config what a pull request declares, asks the approved held values with each check, and the build agent and merge gate lay them over the change's composition only: a key the trunk does not declare yet can then be approved before the merge (ADR 0502).
2026-10-22 11:01:12 +02:00
jschoubben
499ff5c218
Move the route proxy into its module and run it from the trust image, on mesh-sdk's public membership (issues 1633, 1634, 1635)
...
mesh/repo-check out of date: judged beside mesh-catalog#434 at c948f3a61c74, it is now at 7451e7edf4e5; judged again on a recheck or when it is merged
mesh/merge-gate group feat/r4d: composed again for the group's new heads
mesh/delivery superseded: a newer head of the same pull request
mesh/delivery-group group feat/r4d rejected: a member's own check failed
mesh/check failed: unit: i3/cmd/i3-tools.TestTheMainFileAndEveryModulesContributionLoadTogether: manifest_test.go:247: expected the launcher, clipboar…
A bundle is built only from its module's directory (ADR 0480 clause 4), so the proxy leaves
examples/ and the controller's internal/broker; the broker keeps no second copy of what the
proxy shares with mesh-sdk. The image and its Dockerfile go, and a test holds that only
build-agent declares one (clause 11).
2026-10-22 09:53:56 +02:00
jschoubben
af2c6b5e94
Run builds and checks in a per-node build slice with CPU, IO and memory limits (issue 1798)
2026-10-22 00:24:45 +02:00
mesh-tools
a929df9b0e
Merge pull request 'The checker runs beside today's check: checks wait while a delivery builds; a group's SDK member merges; a flaky test fixed' ( #430 ) from feat/the-checker into main
2026-10-21 21:46:26 +00:00
jschoubben
d491356f59
Remove a build's throwaway containers with their anonymous volumes, so a build node's disk does not fill (issue 1772)
mesh/merge-gate head d491356f59dd merged into trunk 1f3fdf311167 — pass: builds build-agent, mesh-controller → ace, g14, novox, shanks; no bus step; every …
mesh/repo-check head d491356f59dd merged into trunk 1f3fdf311167 — pass: its merge-check.sh passed
2026-10-21 22:40:16 +02:00
jschoubben
47e1819101
Merge remote-tracking branch 'origin/fix/1106-sdk-member-merges' into feat/the-checker
mesh/repo-check out of date: judged beside mesh-sdk#66 at 78364e318bdc, it is now at 580da61a9107; judged again on a recheck or when it is merged
mesh/delivery-group group feat/the-checker checking: 4 of 4 member(s) ready
mesh/delivery superseded: a newer head of the same pull request
mesh/merge-gate head 47e1819101a1 merged into trunk 1f3fdf311167 — fail: group feat/the-checker composed: 1 problem(s) the change brings; the first: mesh-d…
2026-10-21 22:01:42 +02:00
jschoubben
0e25ed7c5a
Merge remote-tracking branch 'origin/fix/1399-person-word-test' into feat/the-checker
2026-10-21 22:01:42 +02:00
jschoubben
79e2923dc8
Merge remote-tracking branch 'origin/fix/1652-checks-wait' into feat/the-checker
...
# Conflicts:
# internal/broker/testdata/composed.conf
# internal/link/builds_nats.go
2026-10-21 22:01:42 +02:00
mesh-tools
1f3fdf3111
Merge pull request 'Judge a duplicate hand-out before marking a build in hand, and never hand every build back over a stale mark (issue 1768)' ( #429 ) from fix/1768-in-hand-marker into main
2026-10-21 19:59:30 +00:00
jschoubben
9902a3f16c
Name every group member's trunk in the composed verdict, the announced one when the seat names none (issue 1106)
2026-10-21 21:57:30 +02:00