jschoubben
fc53353609
Probe: the placement files with every seat held once (issue 1126); not to be merged
mesh/delivery closed: the pull request closed unmerged
mesh/check being carried to fc5335360967 on 69056948bfa8 | from 9cdac09ad962
2026-10-28 11:41:15 +01:00
mesh-tools
2a03c106f4
Merge pull request 'Gate seeds a never-merged repository's trunk head and follows a retargeted base; gitea announces a retarget and sets a default branch and a pull request's base (issue 1422; group fix/1422-trunk-unknown)' ( #537 ) from fix/1422-trunk-unknown into main
2026-10-28 10:34:46 +00:00
jschoubben
f5d4b2f86e
Gate: take a retargeted pull request's new base, so a retarget to main is seeded and asked and one away from main is not (issue 1422)
...
mesh/delivery merged: source.main moved to novox/mesh-catalog@2a03c106f4b9
mesh/delivery-group group fix/1422-trunk-unknown merged: every member is merged
mesh/check being carried to f5d4b2f86ed4 on 2a03c106f4b9 | from 9fd95693db54, mesh-delivery ae7ec702a5e9
A re-announcement updated the base head but never the base: a pull request retargeted from nox-mesh to main stayed 'into
nox-mesh' and was never asked or seeded, and one retargeted away from main kept its open ask.
2026-10-28 11:12:21 +01:00
jschoubben
7c2aa0a739
gitea: set a default branch and a pull request's base by named tools; announce a retargeted pull request again (issue 1422)
2026-10-28 11:07:31 +01:00
jschoubben
e057670bc4
Gate: seed source.main from the latest announcement's base head, not the newest delivery's (issue 1422)
...
A delivery made earlier can be announced again after a newer one, with main's head moved on: its base_sha is the freshest.
The gate now keeps when each base_sha was announced and seeds from the latest.
2026-10-28 11:05:38 +01:00
jschoubben
0c6b7b5d64
Gate: seed source.main with the trunk head of a repository it names none of (issue 1422)
...
source.main moved only at a merge, so a repository never merged through the gate had no trunk head and the checker could
never judge its pull requests. The gate already hears main's head on each gitea.pull.updated (base_sha); it now adds it for
a repository source.main lacks, from the newest open pull request into main, in one compare-and-set write that never
replaces a head. A pull request into another base seeds nothing (ADR 0484 §11).
2026-10-28 11:03:40 +01:00
mesh-tools
9fd95693db
Merge pull request 'mesh-vault takes what runs of a node's own secret through move-in, on the node's ask (issue 1126 C4, group fix/1126-seed-same)' ( #535 ) from fix/1126-seed-same into main
2026-10-28 09:46:28 +00:00
mesh-tools
1a9570f5e9
Merge pull request 'messenger: say what waits in its burst window, and stop reporting a state failure that has passed (issue 1507)' ( #536 ) from fix/1507-config-ask-silent into main
2026-10-28 09:17:59 +00:00
jschoubben
d871258f8b
Hold that the state error clears once a write succeeds again (issue 1507, review)
mesh/delivery merged: source.main moved to novox/mesh-catalog@1a9570f5e92f
mesh/check being carried to d871258f8b00 on 1a9570f5e92f | from 3fb7951524e6
2026-10-28 10:08:13 +01:00
jschoubben
e7abe3e3e4
messenger: clear the state problem once a write succeeds again, so the status stops saying a failure that passed (issue 1507)
2026-10-28 10:05:09 +01:00
jschoubben
0974d1a57d
mesh-vault's own_drift row carries the id as a node runs it, its module's name first, and the vault pins mesh-sdk 3028c7e (issue 1126, cause C4; review round 2)
mesh/delivery merged: source.main moved to novox/mesh-catalog@9fd95693db54
mesh/delivery-group group fix/1126-seed-same merged: every member is merged
mesh/check being carried to 0974d1a57d99 on 2a03c106f4b9 | from 9fd95693db54
2026-10-28 10:02:46 +01:00
jschoubben
6cea12a023
messenger: say what waits in the outbox in the history, so an ask held for its burst window does not read as lost (issue 1507)
2026-10-28 10:02:27 +01:00
jschoubben
a17356a162
Fill go.sum for mesh-sdk 1062b33, the group's head (issue 1126)
2026-10-28 09:53:34 +01:00
jschoubben
35ad58e6e2
mesh-vault pins the group's mesh-sdk head 1062b33 (issue 1126; go.sum is filled once that head is pushed)
2026-10-28 09:51:48 +01:00
jschoubben
da5da4f6f7
The vault takes what runs through move-in's replace_running, not a verb of its own, so no seat promises anything new (issue 1126, cause C4)
2026-10-28 09:48:14 +01:00
jschoubben
671a6a1f47
own-take-running has a person's switch, own_take_switch, kept in the vault's store (issue 1126, cause C4)
2026-10-28 09:39:16 +01:00
jschoubben
47ed384d97
The vault takes the value that runs on a machine over the one it was first handed, from that machine alone (issue 1126, cause C4)
...
move-in never replaces a value the vault holds, so where the controller made an own secret anew after the move, the
new value runs while the vault keeps the first. The verb own-take-running takes it from the node-engine of the machine
it is for, keeps the replaced value as the previous generation, raises the generation and says own-replaced without a
value; own_drift lists every own secret a node's shadow answer says another value of, mesh-wide. The module needs the
mesh-sdk head of fix/1126-seed-same-own-resync (delivery.OwnValuesDiffer, the seat's verb).
2026-10-28 09:37:54 +01:00
mesh-tools
3fb7951524
Merge pull request 'claude-code: render a 660 s timeout for the mesh console, so mesh_wait is not cut at a minute (issue 1871)' ( #533 ) from fix/1871-wait-returns-early into main
2026-10-28 07:46:26 +00:00
jschoubben
ae96afcaa8
Render a 660 s timeout for the mesh console and the MCP idle bound, so mesh_wait is not cut at a minute (issue 1871)
mesh/delivery merged: source.main moved to novox/mesh-catalog@3fb7951524e6
mesh/check being carried to ae96afcaa8da on 3fb7951524e6 | from 0c63b4c906c6
2026-10-28 03:52:32 +01:00
mesh-tools
0c63b4c906
Merge pull request 'mesh-delivery-gate: ask the operator's Approve only once the check has a verdict (issue 1733) — wait for its check before approving this one' ( #530 ) from fix/ask-after-check into main
2026-10-27 23:25:26 +00:00
jschoubben
354d62340d
mesh-delivery-gate: the group re-push row holds no verdict at the new heads, so only the missing-run rule keeps it unasked (issue 1733, review round 2)
mesh/delivery merged: source.main moved to novox/mesh-catalog@0c63b4c906c6
mesh/check being carried to 354d62340d4d on 0c63b4c906c6 | from 00d155da60f5
2026-10-28 00:07:39 +01:00
jschoubben
dea390ac97
mesh-delivery-gate: the Approve's verdict bound counts from the latest head, restarts with its check, and speaks the operator's time (issue 1733, review round 1)
...
A group member made ready in an event handler has no ready run when its sibling
is looked at; the bound counted from the older sibling alone, so a re-push past
60 minutes asked at once as unanswered. Such a member now counts as ready now.
The bound also counts from a check starting again at the same heads, or its
verdict being taken away, so a pass that turns back into running never asks at
once as unanswered. Times in the wait and the ask are the operator's zone
(Europe/Brussels, as the messenger says them), and a placement change whose pass
holds no composition says that no node answered its placement.
2026-10-28 00:05:36 +01:00
mesh-tools
00d155da60
Merge pull request 'Take the placement files out again: every node composing its own fails (issue 1126, revert of #528 ) — approve now' ( #529 ) from revert/1126-seed-4 into main
2026-10-27 22:59:36 +00:00
jschoubben
89c30c44be
mesh-delivery-gate: while the check gates no merge, ask the Approve only once the check has a verdict (issue 1733)
...
The operator, 2026-10-27 23:54: "if you don't want me to approve it, don't send
the approval request". The gate asked the Approve the moment a pull request
opened, before its check answered, and five changes were approved unchecked.
Now the ask waits for the checker's verdict at the heads it covers (a group's
verdict of all its heads together; a placement change's verdict ends only once
its nodes answered, ADR 0559 §5). A pass or a failure is asked, the failure in
its words, since check-gates-merge false lets the operator merge it anyway. A
check with no verdict 60 minutes after the heads became ready is asked anyway,
saying so, and asked again in new words when its verdict comes.
Quick fix (only the ask's wording) against thorough (the one place that decides
when to ask, ungatedWaits): thorough, which is one place here.
2026-10-27 23:59:09 +01:00
jschoubben
bd65c839a8
Take the placement files out again: every node composing its own fails (novox: nats' ${dir:mesh-state} not declared; ace, g14, shanks: the build index unread at a bus pause), so each returns to the controller's compositions (issue 1126)
mesh/delivery merged: source.main moved to novox/mesh-catalog@00d155da60f5
mesh/check checking bd65c839a881 on 00d155da60f5
2026-10-27 23:56:08 +01:00
mesh-tools
b7a036e186
Merge pull request 'Seed the placement files a third time (issue 1126) — Approve ONLY after the lead says all four nodes answer 'same'' ( #528 ) from feat/1126-seed-3 into main
2026-10-27 22:53:41 +00:00
jschoubben
3abf7cd50b
Seed the placement files a third time, now that every node agent reads its placement only on a successful read and its shadow names every difference (issue 1126, ADR 0549 §4)
mesh/delivery merged: source.main moved to novox/mesh-catalog@b7a036e18693
mesh/check checking 3abf7cd50bdf on b7a036e18693
2026-10-27 23:52:35 +01:00
mesh-tools
d7e8a8824e
Merge pull request 'Take the placement files out again: since the seed no delivery reaches any node (issue 1126, revert of #525 )' ( #527 ) from revert/1126-seed-3 into main
2026-10-27 22:48:46 +00:00
jschoubben
83e9ce5b19
Take the placement files out again: since the seed no delivery reaches any node, because every node agent runs the controller's compositions while the wants ask them to compose their own (issue 1126, revert of #525 )
mesh/delivery merged: source.main moved to novox/mesh-catalog@d7e8a8824e9c
mesh/check checking 83e9ce5b1957 on d7e8a8824e9c
2026-10-27 23:47:52 +01:00
mesh-tools
653cead338
Merge pull request 'Seed the placement files again from what each node runs now (issue 1126, ADR 0549 §4) — Approve only after every node answers 'same'' ( #525 ) from feat/1126-seed-2 into main
2026-10-27 22:02:13 +00:00
jschoubben
d1ca199265
Seed the placement files again from what each node runs now, so placement lives in the catalogue (issue 1126, ADR 0549 §4)
mesh/delivery merged: source.main moved to novox/mesh-catalog@653cead33815
mesh/check checking d1ca19926529 on 653cead33815
2026-10-27 22:04:46 +01:00
mesh-tools
bf94af0a82
Merge pull request 'gitea: gitea_team_rights reads a forge team's members and units and a user's effective rights, read-only (issue 1563)' ( #524 ) from fix/1563-team-rights into main
2026-10-27 21:00:57 +00:00
mesh-tools
476a59162f
Merge pull request 'mesh-build-go, mesh-build-node: a missing bubblewrap fails the sandbox proofs on a build node instead of skipping them (issue 1309)' ( #523 ) from fix/1309-bwrap-fatal into main
2026-10-27 21:00:53 +00:00
jschoubben
36d5993323
gitea_team_rights: refuse a forge user that does not exist; keep ForgeRepository's doc comment on it (issue 1563)
mesh/delivery merged: source.main moved to novox/mesh-catalog@bf94af0a820f
mesh/check checking 36d59933239e on bf94af0a820f
2026-10-27 21:54:51 +01:00
jschoubben
f8ddcc98f6
Add gitea_team_rights: read a forge team's members, units and a user's effective rights, with the administrator's login, GET only (issue 1563)
2026-10-27 21:50:59 +01:00
jschoubben
9109524502
A missing bubblewrap fails the sandbox proofs on a build node instead of skipping them
...
mesh/delivery merged: source.main moved to novox/mesh-catalog@476a59162f55
mesh/check checking 9109524502f9 on bf94af0a820f
The levels a build module judges hand the tests MESH_BUILD_NODE=1; the tests that run a step in bubblewrap fail on it when bwrap is missing. Issue 1309
2026-10-27 21:36:28 +01:00
mesh-tools
9bd8247915
Merge pull request 'mesh-issues: cover a merged fix from the delivery view's reached head, not only its once-said event (issue 1950)' ( #522 ) from fix/1950-delivered-on-machines into main
2026-10-27 20:32:21 +00:00
jschoubben
116751130f
Cover a merged fix from the delivery view's reached head in the sweep, not only from its once-said event, so a fix named after the saying is delivered (issue 1950)
mesh/delivery merged: source.main moved to novox/mesh-catalog@9bd824791509
mesh/check being carried to 116751130f5c on 9bd824791509 | from c05aa5e6eafd
2026-10-27 21:17:53 +01:00
mesh-tools
c05aa5e6ea
Merge pull request 'Take the placement files out again, so every node returns to the controller's compositions (recovery, issue 1126)' ( #521 ) from revert/1126-seed into main
2026-10-27 14:06:34 +00:00
jschoubben
b95b0a4750
Take the placement files out again: the node agents cannot watch their haves with '>' (refused by their grant), so no node can compose its own; without its placement key each node returns to the controller's compositions (issue 1126)
mesh/delivery merged: source.main moved to novox/mesh-catalog@c05aa5e6eafd
mesh/check checking b95b0a475044 on c05aa5e6eafd
2026-10-27 09:23:26 +01:00
mesh-tools
04fa2e3286
Merge pull request 'Seed the placement files from what each node runs today, so placement lives in the catalogue (issue 1126, ADR 0549 §4)' ( #520 ) from feat/1126-seed into main
2026-10-27 08:20:33 +00:00
jschoubben
0c61bad102
Seed the placement files from what each node runs today, so placement lives in the catalogue (issue 1126, ADR 0549 §4)
mesh/delivery merged: source.main moved to novox/mesh-catalog@04fa2e3286df
mesh/check checking 0c61bad10238 on 04fa2e3286df
2026-10-27 08:34:10 +01:00
mesh-tools
02597b66d7
Merge pull request 'The issue tracker learns the merge of a fix it never heard, so an old resolved issue no longer reads 'nothing heard from the delivery' (issue 1950)' ( #517 ) from fix/1950-old-fixes into main
2026-10-27 07:21:13 +00:00
mesh-tools
457c60972c
Merge pull request 'The placement check and the delivery gate read the group's mesh-sdk, so replicated seats pass and placement pull messages are read (issue 1126)' ( #519 ) from feat/1126-l2b into main
2026-10-27 07:21:09 +00:00
mesh-tools
5ae337b14d
Merge pull request 'Every build module clears at start what a previous process left running, held by the catalogue's check (issue 1890)' ( #518 ) from fix/1890-step-owner into main
2026-10-27 07:19:39 +00:00
jschoubben
2ac511ce6b
Pin checks/placement and mesh-delivery-gate to mesh-sdk cadd7b1, the group's final head (issue 1126)
mesh/delivery merged: source.main moved to novox/mesh-catalog@457c60972c59
mesh/delivery-group group feat/1126-l2b merged: every member is merged
mesh/check checking 2ac511ce6b19 on 457c60972c59 | novox/mesh-catalog#519 in group feat/1126-l2b
2026-10-27 02:44:12 +01:00
jschoubben
e955b53bf0
Pin mesh-delivery-gate to mesh-sdk 062c29c, so it reads a catalogue pull message that carries placement files instead of refusing it (issue 1126; review round 1)
2026-10-27 02:43:13 +01:00
jschoubben
454ac0fec7
Pin checks/placement to mesh-sdk 062c29c, the L2b group's head, so the catalogue's placement check judges with the replicated-seat rule the seed needs (issue 1126)
2026-10-27 02:30:16 +01:00
jschoubben
3c6f2dc274
mesh-issues: a learned merge is kept as of now, closed untimed issues get no fix time, the forge read is declared, the sweep rotates its asks (issue 1950)
mesh/delivery merged: source.main moved to novox/mesh-catalog@02597b66d7de
mesh/check checking 3c6f2dc274a9 on 457c60972c59
2026-10-27 01:30:37 +01:00
jochen
39419b1892
Pin the build modules to mesh-sdk db1007ff, which deletes a gone process's ask key so its redelivery still answers (issue 1890)
mesh/delivery merged: source.main moved to novox/mesh-catalog@5ae337b14def
mesh/delivery-group group fix/1890-step-owner merged: every member is merged
mesh/check checking 39419b1892c9 on 5ae337b14def
2026-10-27 01:30:31 +01:00