jschoubben
fecfb40ed4
Hold the controller walk's key in the own-path test and read its walk again before ending it (issue 1931)
2026-10-24 04:30:20 +02:00
jschoubben
a1969403c6
Read the started walk again before ending it in the let-go test: the steps wrote it (issue 1931)
2026-10-24 04:23:23 +02:00
jschoubben
893aa85349
Format the batches test imports (issue 1931)
2026-10-24 04:12:16 +02:00
jschoubben
2ba9eef58d
Keep the started walk started in the let-go test by holding its key, since a walk takes keys at once now (issue 1931)
2026-10-24 04:12:07 +02:00
jschoubben
5ee08cb5e1
Assert the merge walked alone is taken from its key at its own commit, since a cut records no ask (issue 1931)
2026-10-24 04:09:05 +02:00
jschoubben
443ba6b265
Assert the three-repository walk takes each first-tier module from its key at its commit (issue 1931)
2026-10-24 04:03:53 +02:00
jschoubben
64fbef7713
Assert the cut takes its first tier from the key at the carried commit, since the cut asks no build (issue 1931)
2026-10-24 03:59:10 +02:00
jschoubben
a77aa8520e
Hold tier 1's key in the away test and count one shared key in the backups test, since a walk takes keys at once now (issue 1931)
2026-10-24 03:47:45 +02:00
jschoubben
a9de578cb9
End the reconnects test's verb in the serving process: a command verb re-runs the test binary (issue 1931)
2026-10-24 03:41:40 +02:00
jschoubben
d951aa954e
Assert a Retry waits for the builder's key, since the controller asks no build now (issue 1931)
2026-10-24 03:25:05 +02:00
jschoubben
ab9a7771f4
Call a verb that still exists in the reconnects test, since queue was removed (issue 1931)
2026-10-24 03:20:38 +02:00
jschoubben
1c50608246
Merge pull request 'Give route-proxy a build the fixed controller takes in, dropping the incident note #450 added (issue 1933)' ( #452 ) from fix/1933-rebuild-route-proxy-2 into main
...
Reviewed-on: #452
2026-10-24 01:00:18 +00:00
jschoubben
760351b4ae
Merge pull request 'The sweep keeps a fresh build's files, and a take-in holds every file before it records a build (issue 1933)' ( #451 ) from fix/1933-sweep-keeps-fresh-builds into main
...
Reviewed-on: #451
2026-10-24 00:54:55 +00:00
jschoubben
899389c710
Reword route-provider's stdout line, so route-proxy's tree differs from the 01:52 build whose files are gone (issue 1933)
mesh/check checking 899389c7106c on 760351b4ae1b
2026-10-24 02:50:12 +02:00
jschoubben
a203f605d4
Give route-proxy a build the fixed controller takes in, dropping the incident note #450 added (issue 1933)
2026-10-24 02:49:56 +02:00
jschoubben
0741880d31
Keep a fresh build's archives from the controller's own sweep (issue 1933)
...
mesh/check checking 0741880d3137 on 760351b4ae1b
A sweep read what it keeps before what was ever recorded, so a take-in's
build recorded between the two reads, by a concurrent take-in off the
plans' hold, was eligible and let go of seconds after the take-in read
it; a new module's build is unkept until it is registered. Now the sweep
reads the records first and keeps what a build recorded within the hour
or an open plan names, and names every reference it lets go of; a take-in
holds every artifact in the store before recording, failing on one the
store lacks; and RecordBuild clears artifact_collected as RecordMirrored
does.
2026-10-24 02:44:20 +02:00
jschoubben
fa734d3098
Merge pull request 'Give route-proxy a new build: the controller's sweep removed its last build's files from the store, so novox and ace cannot apply (issue 1933)' ( #450 ) from fix/1933-rebuild-route-proxy into main
...
Reviewed-on: #450
2026-10-24 00:39:47 +00:00
jschoubben
f13d42abb4
Give route-proxy a new build: the controller's sweep removed its last build's files from the store, so novox and ace cannot apply (issue 1933)
mesh/check failed: integration: github.com/novox/mesh-controller/cmd/mesh-controller.TestAWarrantForRetryRetriesAFailedPlanInTheStoreAndEndsItsConditi…
2026-10-24 02:37:06 +02:00
jschoubben
fdf26a1fe2
Merge pull request 'A module the catalogue no longer holds ends deleted instead of failing the plan; vendor/ goes; tests name verbs that exist (issues 1922, 1305, 1931)' ( #449 ) from fix/1922-removed-module into main
...
Reviewed-on: #449
2026-10-23 23:47:05 +00:00
jschoubben
343e271ec7
Integration tests stop naming the verbs R4g removed (issue 1931)
mesh/check failed: integration: github.com/novox/mesh-controller/cmd/mesh-controller.TestAWarrantForRetryRetriesAFailedPlanInTheStoreAndEndsItsConditi…
2026-10-23 23:21:39 +02:00
jschoubben
05c872485a
Delete the committed dependencies; builds resolve by go.sum (issue 1305)
2026-10-23 22:16:09 +02:00
jschoubben
12dd2bb3f0
A module the catalogue no longer holds ends deleted instead of failing the plan; the unsent hint names release-backlog (issue 1922)
2026-10-23 22:15:18 +02:00
jschoubben
5831eec770
Merge pull request 'R4g+R5 (mesh-controller): the controller asks no build, build-agent and the merge gate go, register by reference (design 47)' ( #448 ) from feat/r4g into main
...
Reviewed-on: #448
2026-10-23 17:50:22 +00:00
jschoubben
c9a7102bc5
Set aside a retired seat's consume the trunk catalogue still holds, and say it, so a group that retires a seat passes its check
mesh/delivery failed: its walk failed, carrying its own commit: a gate on a first machine (what it carried put back), a build, a machine
mesh/delivery-group group feat/r4g failed: a member failed
mesh/check checking c9a7102bc53b on 791786d5b87f | novox/mesh-controller#448 in group feat/r4g
2026-10-23 18:05:06 +02:00
jschoubben
67279199e9
Say the trunk rule as ADR 0534 §6 has it in the registration's comment
mesh/delivery superseded: a newer head of the same pull request
mesh/check failed: unit: github.com/novox/mesh-controller/internal/broker.TestTheCataloguesDerivedSubjectsMeet: agreement_catalogue_test.go:130: judge…
2026-10-23 17:19:39 +02:00
jschoubben
9d2a9e62d1
Merge remote-tracking branch 'origin/fix/forge-requires-no-status' into feat/r4g
2026-10-23 17:18:58 +02:00
jschoubben
b345d10bec
Pin mesh-sdk at feat/r4g's head a2c813a6, its test fixture fix, with go.sum tidied
mesh/delivery superseded: a newer head of the same pull request
mesh/check failed: unit: git.novox.be/novox/mesh-catalog/checks/config.TestTheUnmovedListHoldsNoModuleTheTrunksDoesNot: realtree_test.go:14: mesh-cata…
2026-10-23 17:06:08 +02:00
jschoubben
13842a7234
Grant the builder the build seats' streams' information and messages by name, so its take-over at start can tell an ask its key names is on its stream (issue 1910)
mesh/delivery-group group feat/r4g rejected: a member's own check failed
mesh/delivery superseded: a newer head of the same pull request
mesh/check failed: g14: novox/mesh-catalog#464: checks/health/go.mod names mesh-sdk a9560890ee26, which is neither on mesh-sdk's trunk nor the group's…
2026-10-23 16:59:03 +02:00
jschoubben
4238318601
Pin mesh-sdk at feat/r4g's head a9560890, re-vendor it and capture its conformance events there (R4g)
2026-10-23 16:54:07 +02:00
jschoubben
758c8e84e5
Bound the build seats' workers' deliveries, so an ask no run ends is offered at most five times even when the holder that says it is poison dies too (issue 1907)
2026-10-23 16:42:13 +02:00
jschoubben
9222575ae9
Vendor the dependencies again for R4g's go.mod (mesh-sdk 9205222a, the mesh-host replace as before), so build-agent compiles the controller offline in the group's first tier (issue 1305)
2026-10-23 16:38:31 +02:00
jschoubben
c5b8fca8bd
Revert "Delete vendor/ and the route proxy's: the build module fetches the modules, the root image builds with -mod=mod (issue 1305, C6)"
...
This reverts commit 9c4bf1f08b .
2026-10-23 16:37:40 +02:00
jschoubben
ff543d3def
Take the watchman's grant on the build seats back: a waiting ask has no pulse, a taken one is read from the steps (issue 1908)
2026-10-23 16:35:28 +02:00
jschoubben
ef211faefb
Prove the registration by hand reads back as a build and is held by the sweep, and name the store check as the test's limit (issue 1888, C8b)
2026-10-23 16:34:29 +02:00
jschoubben
3c247e80af
Fix the view grant test's consumer subjects (issue 1887 A8)
2026-10-23 16:32:43 +02:00
jschoubben
bb0d5e17db
Grant the watchman the build seats' accept subjects and the view the seat workers' information, each by name, so the backlog and the waiting-ask pulse read live (issue 1887 A8)
2026-10-23 16:32:32 +02:00
jschoubben
24ad859629
Record the checksums of mesh-sdk feat/r4g 9205222a for the group's modules (R4g)
2026-10-23 16:26:11 +02:00
jschoubben
5ccc87f4d0
Capture mesh-catalog at feat/r4g (2246ccc4) with the templates its manifests name and its predefined.json, and lay the copy out as a repository's root
...
The catalogue's manifests moved their content into template files and fall back to predefined keys, so a copy of
module.json alone no longer passes the catalogue's own check; the bus's Dockerfile is gone from the catalogue.
2026-10-23 16:24:14 +02:00
jschoubben
68c1220e87
Pin mesh-sdk at feat/r4g's head 9205222a, the merge of lanes A, B, S8 and F1, and capture its conformance events there
...
go.sum gains its lines from go mod tidy once mesh-sdk feat/r4g is pushed.
2026-10-23 16:22:07 +02:00
jschoubben
5b5cd6160a
Merge branch 'feat/r4g-asks' into feat/r4g
2026-10-23 16:20:32 +02:00
jschoubben
d7d70cd539
Merge branch 'feat/r4g-assigner' into feat/r4g
2026-10-23 16:20:32 +02:00
jschoubben
df70ca43a7
Take the controller's publish grants on node-build-agent and mesh-build-machine away, with the cancelled sets and the redelivery of its own asks: it asks no build seat (ADR 0525 §10, C3a)
2026-10-23 16:13:43 +02:00
jschoubben
f60c742d93
Prove the grant through the send of the bus's machine (overTheBus.declare), so removing the write from the live path fails the test (issue 1394, review round 1 item 4)
2026-10-23 16:13:42 +02:00
jschoubben
2db5dcdcb4
Write the hand act of register --reference after the registration was made, not before, and test the why and the record (issue 1888, C8b)
2026-10-23 16:12:16 +02:00
jschoubben
d9cdb3615d
Test that the builder's record names its key and fingerprint after a plan that moves it (issue 1851, C5 criterion)
2026-10-23 16:11:07 +02:00
jschoubben
dec3b83e66
Test that the builder, a build module and the controller are taken from the builder's keys and nothing reaches node-build-agent (issue 1851, C2 criterion)
2026-10-23 16:11:07 +02:00
jschoubben
2e36a63096
Pin mesh-sdk at feat/r4g's head c3915ffb, the merge of lane B's layouts, so every r4g module builds against one SDK
...
go.sum gains its lines from go mod tidy once mesh-sdk feat/r4g is pushed.
2026-10-23 16:01:15 +02:00
jschoubben
eb8286fc68
Merge feat/r4g-assigner into feat/r4g: lane B's grants bucket and its writer beside lane C's deletions
...
The controller's readable states, its bucket lists and the composed golden file keep lane C's removal of the
checks-running and plans-building buckets and the build agent's check subjects, and add lane B's grants bucket.
2026-10-23 15:59:52 +02:00
jschoubben
5540fd4f85
Find the catalogue's repository by its URL or seat source, and fail a plan whose catalogue repository is nowhere, so a take-in from a key no longer waits for ever (issue 1902)
2026-10-23 15:57:30 +02:00
jschoubben
e419d0182f
Delete the builder, the build asks, the build queue and the merge gate: the builder's keys are the only way a module is built (issues 1851, 1299, 1318; C2b-C5, C10)
...
The controller asks no build of anybody (ADR 0501 §5, ADR 0525 clause 6, ADR 0503 §3). Every module of a walk is taken from the
builder's done key; a key not done yet waits, named in the plan, and never fails it.
- C2b/C2c: internal/builder and cmd/mesh-controller's asks go (askABuild, onlyTheBuildersOwn, buildOneAsked, takeIn from an
outcome, buildAgentsOwn, the builder's say and its fallback, the daemon hearing an outcome). The server follows the retired
seats' built subjects only to let go of them, because the installer's carried user list names them.
- C2d: replay, queue, cancel, clear, kill, pause, resume, delivery-check, check-here and merge-gate are refused by name.
- C3: the check queues (CHECKS_READY, CHECKS_OTHER) and their workers, the checks-running and plans-building buckets and
their grants, the build queue and its hold (plans_building.go, queue.go, link/holds.go, builds_nats.go, checks_nats.go).
- C4: merge_gate*.go, the pull request's repo-check path, the Checked event and its layers; a pull request asks the
controller nothing but to tell mesh-config what its head declares.
- C5: the builds bucket is written only by key_takein.
- C10 (help and refusals): the terminal's help lists only what is served.
Integration tests of the plan's tiers, sends, stops and retries now run on a stand-in builder with a done key for every
module (walk_keys_scaffold_integration_test.go); the tests of the asks, the queue, the merge gate and the replays are deleted.
2026-10-23 15:55:15 +02:00