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/check failed: integration: github.com/novox/mesh-controller/internal/identity.TestACertificateChainsToTheMeshsOwnAuthority: authority_test.go:45:…
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
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/check checking b7d03b68974d on 8f2d22db0caa
mesh/delivery-group group feat/quiet-deliveries delivered: every member is delivered
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/check failed: integration: github.com/novox/mesh-controller/internal/identity.TestACertificateChainsToTheMeshsOwnAuthority: authority_test.go:45:…
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
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
jschoubben
11815c0fb3
Have the delivery test's view hear a plan a verb let go, so a loaded machine cannot read it still waiting (issue 1399)
2026-10-21 21:45:58 +02:00