jschoubben
4628ba26b4
Delivery parts: take the essential and optional bucket opens from mesh-sdk (issue 1945)
...
mesh/delivery merged: source.main moved to novox/mesh-delivery@db53ec975f01
mesh/delivery-group group fix/1945-ask-again-and-why merged: every member is merged
mesh/check pass 4628ba26b41a on 73be3df28cd4 | unit 167 run, 443 kept | integration 177 run, 509 kept | composition passed on 3 machines
The open helpers were copied into seven parts; code shared between
modules lives in mesh-sdk, so they are mesh-sdk process's now and the
parts are pinned at fix/1945-optional-buckets (e0d1de04), moved to its
main once it merges, one delivery group with mesh-sdk.
2026-10-25 22:30:22 +01:00
jschoubben
20027e53ff
Delivery parts: a bucket the bus refuses at start stops a part only when it cannot work without it (issue 1945)
...
Met twice on 2026-10-25: the builder of #48 exited on a refused read of
the gate's source and crash-looped, and its new reasks bucket would have
done the same. A grant reaches the bus with a delivery, so a refusal or a
timeout at start is often only a grant not there yet; exiting for it
stopped the whole part until a hand step on the bus.
Every startup open in the parts is now essential or optional. Essential
ones (a part's own state and the input it exists for) still stop the
start, with an error naming the bucket and its grant. Optional ones are
said and left: watches the bus refuses too. The builder builds trunk keys
without the gate's source, which it opens again at the next candidate
that asks a trunk head; toolchains and previews open again at their next
event, as a missing bucket did. builder_ask_again says that asking a
running step again builds it twice.
2026-10-25 22:29:31 +01:00
jschoubben
c21bed20a3
Pin mesh-sdk to feat/r6 748c564, which carries main's composer (issue 1943)
2026-10-24 23:06:02 +02:00
jschoubben
aa31e85665
Merge main into feat/r6: keep R4g's composer at a group's mesh-sdk head beside R6's wants and asks
...
The assigner reads mesh-controller.builds again (the composer's runningCommits reads the build record of every open
assignment), puts its compose asks on node-build-go and says its conditions on operator-channel.
2026-10-24 23:03:42 +02:00
jschoubben
36a1fd197f
The switch exception skips the record hold only for a composition the controller judges unchanged; pin mesh-sdk d7a9b96 (issue 1906, ADR 0540 §9)
2026-10-24 21:18:48 +02:00
jschoubben
9a5b3d4881
Pin the assigner, watchman and view to mesh-sdk feat/r6 7f9cc0e (issue 1943)
2026-10-24 20:43:46 +02:00
jschoubben
0f7bc9f531
Pin the assigner, watchman and view to mesh-sdk feat/r6 e45bdc0 (issue 1943)
2026-10-24 20:21:57 +02:00
jschoubben
3b00f3890d
Review round 1: a user-list-only revision of the bus is written at once at the fingerprint it runs, before the record hold; pin mesh-sdk a523a8c (issue 1906)
2026-10-24 18:17:25 +02:00
jschoubben
14c20b21ee
Pin the assigner, watchman and view to the head of mesh-sdk feat/r6 (issue 1943)
2026-10-24 17:52:44 +02:00
jschoubben
e7a3ff1e7e
The record policy is the one the controller holds beside the composition, the operator's own choice included; pin mesh-sdk 64a502d (issue 1906 D4, ADR 0539 §14)
2026-10-24 16:41:58 +02:00
jschoubben
806c8bf0e4
Pin the assigner, watchman and view to mesh-sdk's release 6 head (issue 1943 S3) and give their test wants a composition digest
2026-10-24 16:32:09 +02:00
jschoubben
9d2e9dc6c9
The watchman mirrors each want of the assigner as a pulse owed by the node's agent until the have names its fingerprint (issue 1906 D6)
2026-10-24 16:22:02 +02:00
jschoubben
2259d98c5b
Mark the packages whose tests read files outside their directory, found by the review (issue 1935)
2026-10-24 04:39:03 +02:00
jschoubben
fad96ae67b
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:09 +02:00
jschoubben
c7bddbbeab
Bound a running build step's pulse by the step's own bound from its start, since nothing rewrites the key while it runs (issue 1908)
2026-10-23 16:58:26 +02:00
jschoubben
d3561923aa
Say the unit level's gofmt and go vet time in the check's line, and pin the group's mesh-sdk head that carries it (issue 1887 D7-go, review round 2 item 5)
2026-10-23 16:51:55 +02:00
jschoubben
d32ec6b7f8
Say what the builder, the indexer and the watchman do since R4g in their comments: no build-agent is asked, no build record moves a fingerprint, no checks-running bucket is mirrored (issue 1887, review round 2 item 6)
2026-10-23 16:47:36 +02:00
jschoubben
357e28f31d
Merge remote-tracking branch 'origin/feat/r4g' into feat/r4g
...
# Conflicts:
# modules/mesh-delivery-builder/internal/build/run_test.go
2026-10-23 16:46:05 +02:00
jschoubben
5ddc221833
Bound a build or check ask's step from its start, and drop the checker's whole-check bound, so asks waiting in the streams during a large rebuild are never failed and asked twice (issue 1887, review round 2 item 1; ADR 0525 §3, §6)
2026-10-23 16:45:35 +02:00
jschoubben
76bc810bda
Test that an ask running when the watchman starts gets its pulse from the steps that stand (issue 1909)
2026-10-23 16:34:50 +02:00
jschoubben
e927469460
Pulse a build ask only from when a node takes it, and end the pulse with its step, so a waiting ask is a backlog and not a stuck row (issue 1908)
2026-10-23 16:34:39 +02:00
jschoubben
95f52afab2
Record the checksums of mesh-sdk feat/r4g 9205222a for the group's modules (R4g)
2026-10-23 16:26:11 +02:00
jschoubben
e4a40a1cb0
Pin mesh-sdk at feat/r4g's head 9205222a, the merge of lanes A, B, S8 and F1, so every module r4g touches builds against one SDK
...
go.sum gains its lines from go mod tidy once mesh-sdk feat/r4g is pushed.
2026-10-23 16:22:02 +02:00
jschoubben
dd8e05142d
Merge branch 'feat/r4g-scripts' into feat/r4g
2026-10-23 16:20:17 +02:00
jschoubben
50836eb4d6
Format the watchman's integration test (issue 1887 A8b)
2026-10-23 16:14:03 +02:00
jschoubben
79ef768ea4
Show the backlog of build asks per language and kind: waiting, held by a node, and the oldest waiting ask's age (issue 1887 A8a)
2026-10-23 16:14:00 +02:00
jschoubben
a8ba5c2fd5
Mirror a waiting build ask as a pulse until a node writes its step, and drop the read of the controller's checks-running (issue 1887 A8b)
2026-10-23 16:12:43 +02:00
jschoubben
f37e5d5fa1
Delete merge-check.sh; the checker's levels and the build module's fetch beside run what it ran (issue 1295, S8; ADR 0529)
2026-10-23 16:10:46 +02:00
jschoubben
35ff628458
Commit no module's dependencies: fetch them in the check, the pinned SDK from beside it (issue 1235)
mesh/delivery-group group feat/delivery-parts rejected: a member's own check failed
mesh/merge-gate waits for its group's composed check
mesh/repo-check head 35ff62845811 merged into trunk 7f618177d677 beside mesh-catalog#374@75957fc3 — fail: THE CHANGE ALTERS ITS OWN CHECK (merge-check.sh):…
2026-10-19 15:27:37 +02:00
jschoubben
e5fd3fcd7a
The watchman mirrors no builds in release 2; a check's pulse is renewed at every heartbeat of its key (issue 1135, review round 1)
2026-10-18 21:05:50 +02:00
jschoubben
431f3f023b
The watchman is not a moved module: it names no template (issue 1135)
2026-10-18 20:59:09 +02:00
jschoubben
1191a10be1
The watchman module: manifest, program on the bus, and its whole-process integration test (issue 1135)
2026-10-18 20:58:34 +02:00
jschoubben
bdb6fe7787
The watchman's logic: presence from the bus's events, pulses with a time to live, stuck keys on expiry (issue 1135)
2026-10-18 20:58:34 +02:00
jschoubben
ad127995b2
Pin mesh-sdk at 238440d6f8c4 and vendor the watchman's dependencies (issue 1135)
2026-10-18 20:58:34 +02:00