cdbe2945cf
Merge pull request 'Build modules' steps live two days and their pause has a state of its own, so the steps bucket no longer fills (2026-10-25)' (#481) from fix/steps-bucket-ages into main
jschoubben2026-10-25 18:06:39 +00:00
4e82a824be
Announce the pauses state in the three build modules, and pin mesh-sdk 518dae5 (an unreadable pause pulls as not paused)
jschoubben2026-10-25 18:57:08 +01:00
78d26867d2
Give the build modules' steps state an age of two days, and keep a node's pause in a pauses state of its own
jschoubben2026-10-25 18:53:04 +01:00
0c216d99d0
Gate takes a merge learnt after the fact as past: no trunk move, the forge's time, never source.main (issue 1275, review round 2)
jschoubben2026-10-25 18:37:59 +01:00
145c54d19c
Gate settles pull requests closed with no event, looks again at a line's bound, and keeps a waiting head's condition over a restart (issue 1275, review round 1)
jschoubben2026-10-25 18:32:19 +01:00
67092161bd
Gate hands every member of an approved group, in pin order, and says a stopped pass (issue 1275)
jschoubben2026-10-25 18:20:58 +01:00
2df0503034
Merge pull request 'Let the build modules follow their capacity on the bus, so a node raised from capacity 0 starts pulling (issue 1887)' (#479) from fix/puller-wakes-on-capacity into main
mesh-tools2026-10-25 17:02:40 +00:00
23c827e791
Take the mesh-sdk head that wakes a puller on its capacity, within the test budget, in the three build modules (issue 1887)
jschoubben2026-10-25 17:44:50 +01:00
3138570c6b
Let the build modules follow their capacity on the bus, so a node raised from capacity 0 starts pulling (issue 1887)
jschoubben2026-10-25 17:28:00 +01:00
a85d903741
Merge pull request 'nextcloud: the module makes its own mesh-admin account right on a 401 and backs off on a refusal, so its shares poll stops being refused every minute (issue 1253)' (#478) from fix/nextcloud-admin-401 into main
jschoubben2026-10-25 16:01:37 +00:00
1cc54959af
nextcloud: repair the account only on a 401, never reset the throttle (issue 1253, review 2)
jschoubben2026-10-25 16:57:46 +01:00
962bc359a7
nextcloud: repair only the module's own account, read its existence from the user list, no admin group (issue 1253, review 1)
jschoubben2026-10-25 16:54:51 +01:00
67b13c42d3
nextcloud: repair the account on a throttle too, since a throttle follows refusals (issue 1253)
jschoubben2026-10-25 16:40:54 +01:00
4021724ca4
nextcloud: make the mesh's own account match its secret when Nextcloud refuses it, and back off a refusal that stays (issue 1253)
jschoubben2026-10-25 16:40:01 +01:00
f27f4c8cd5
Merge pull request 'mesh-build-go: a package that fails without an assertion carries its real cause, never "PASS" (issue 1901)' (#477) from fix/1901-package-cause into main
jschoubben2026-10-25 15:07:40 +00:00
155124b59a
mesh-build-go: a cause is the runtime's line at column 0, and only go's exact summary lines are dropped (issue 1901, review round 1)
jschoubben2026-10-25 15:58:07 +01:00
6ec6fdaad2
mesh-build-go: a race the race detector reports is a failure's cause, in a test or after PASS (issue 1901)
jschoubben2026-10-25 15:52:20 +01:00
663f3de975
mesh-build-go: a package that fails without an assertion carries its real cause, never "PASS" (issue 1901)
jschoubben2026-10-25 15:38:28 +01:00
68f7431d98
Merge pull request 'The provisioner client fills every module again when the socket returns and when its node's own composition moves (issue 1944)' (#476) from fix/r6-node-composition into main
jschoubben2026-10-25 00:18:25 +00:00
52d22f07d7
mesh-build-go: fail a change that adds an executable or a file over 5 MB in the lint step unless .binaries-allowed lists it; ignore every module's in-place build binary, and remove the two that were committed (issue 1921, try speed S13)
jschoubben2026-10-25 02:06:05 +02:00
53749833bf
Fill every module again when the node-engine's socket returns and when the node's own composition moves, so a file an apply left empty is filled (issue 1945)
jschoubben2026-10-25 02:01:47 +02:00
8f6a2b1f82
mesh-build-go: tests that a workspace is left with only its tree leave out the ask's own cache layer and slots, every such test at once (issue 1921, try speed S2, S10)
jschoubben2026-10-25 01:46:01 +02:00
a0fbd6bcb5
mesh-build-go: the real-go integration tests expect a lint finding as the lint step's, beside the tests (ADR 0542 §2; issue 1921, try speed S4)
jschoubben2026-10-25 01:40:02 +02:00
5ce46cd197
mesh-build-go: report a lint finding as the lint step's, not the unit level's (ADR 0542 §2), and pin mesh-sdk's try speed-up head with main in it in both Go and Node build modules (issue 1921, try speed S4, S11)
jschoubben2026-10-25 01:31:10 +02:00
8943a290f5
Merge remote-tracking branch 'origin/main' into feat/try-speed
jschoubben2026-10-25 01:29:43 +02:00
537e2ef31f
mesh-build-go: check with CGO_ENABLED=0 as production builds do, and let the lint's go vet, a compile alone, warm the shared cache for later checks (issue 1921, try speed S11)
jschoubben2026-10-25 01:29:21 +02:00
545a172bbf
mesh-build-go: bound the processes of an ask's levels together, the processors divided by the build capacity, through lock files in its workspace, now that the levels run side by side (issue 1921, try speed S10)
jschoubben2026-10-25 01:26:50 +02:00
391095ccb9
mesh-build-go: run in the integration level only the tests its tags add, read from the source, so the unit tests are not run twice (issue 1921, try speed S7)
jschoubben2026-10-25 01:13:21 +02:00
8536021f82
mesh-build-go: bring the mirror to the trunk commit so the merge preview deepens from it, and place the siblings side by side (issue 1921, try speed S6)
jschoubben2026-10-25 01:10:19 +02:00
23307935b9
mesh-build-go: start the integration level's store and bus beside its compile, and compile the go.mod directories side by side without running a test binary (issue 1921, try speed S5)
jschoubben2026-10-25 01:06:53 +02:00
d5d6fd7412
mesh-build-go: run a unit level's lint beside its tests under one bound, so its wall time is the longer of the two; a lint failure still fails the level (issue 1921, try speed S4)
jschoubben2026-10-25 01:04:35 +02:00
2e69099354
mesh-build-go: lint only the packages a unit level runs, in one vet pass with every tag unless a tag leaves a file out, so a small change's lint costs a few packages (issue 1921, try speed S3)
jschoubben2026-10-25 01:02:08 +02:00
5c65b1f3dc
mesh-build-go: give each ask a cache layer in its workspace, so what its vet compiles its unit tests and integration level find compiled (issue 1921, try speed S2)
jschoubben2026-10-25 01:00:32 +02:00
2167b95a36
Merge pull request 'R6: the gate keeps only the merge's states; walk, plan and step code and their verbs go (issue 1946)' (#475) from feat/r6 into main
mesh-tools2026-10-24 23:00:25 +00:00
4f074e87c7
mesh-build-go: say how long each phase of a fetch ran, so a check's "clone" time splits into mirror, fetch, preview, repack, siblings and modules (issue 1921, try speed S1)
jschoubben2026-10-25 00:54:55 +02:00
d09cbf1523
Ignore the binaries a local go build leaves in three module roots (issue 1943)
jschoubben2026-10-25 00:02:45 +02:00
ac6712cbb5
Pin mesh-sdk to feat/r6 748c564, which carries main's composer (issue 1943)
jschoubben2026-10-25 00:02:45 +02:00
5b32342ac2
Merge main into feat/r6: keep R6's gate, which already carries #474's catch-up at start, and drop the seat and walk adoption R6 removed
jschoubben2026-10-24 23:03:42 +02:00
6fb0ceeef8
Merge pull request 'R4g finish: mesh-build-go's compose job, the reads-outside marker in the digest, merge-check.sh gone (issues 1295, 1621-1623, 1935)' (#473) from feat/r4g-finish into main
jschoubben2026-10-24 20:56:49 +00:00
c651161787
Merge pull request 'gitea's forge-account reads the forge's own host key file before scanning its sshd, so a forge restart no longer refuses every forge account (issue 1939)' (#472) from fix/1939-forge-host-key into main
mesh-tools2026-10-24 20:05:39 +00:00
ee216e4e63
Merge pull request 'The gate keeps a merge it hears before it holds its seat and catches source.main up when it does, so a missed merge no longer leaves the checker on an old trunk (issue 1726)' (#474) from fix/1726-trunk-catch-up into main
jschoubben2026-10-24 19:47:47 +00:00
b67b5af5e6
Pin the gate to mesh-sdk feat/r6 at d7a9b968 (issue 1946)
jschoubben2026-10-24 21:18:26 +02:00
d700ceca20
Pin the gate to mesh-sdk feat/r6 at 7f9cc0e5 (issue 1946)
jschoubben2026-10-24 20:43:41 +02:00
3a1017f559
Pin the gate to mesh-sdk feat/r6 at e45bdc08 (issue 1946)
jschoubben2026-10-24 20:22:07 +02:00
a17d0c8e93
The messenger holds and tells what the delivery view says is in motion, not the controller's plans (issue 1946)
jschoubben2026-10-24 18:25:38 +02:00
9fa6710296
Pin the gate to mesh-sdk feat/r6 at a523a8cb (issue 1946)
jschoubben2026-10-24 18:18:06 +02:00
05f849979c
Match a fix to a delivered revision by what the gate says of its merge; keep #474's source catch-up at start (issues 1946, 1726)
jschoubben2026-10-24 18:13:40 +02:00
4dee77df23
Pin the gate to the head of mesh-sdk feat/r6 (issue 1946)
jschoubben2026-10-24 17:54:30 +02:00
8a79877a15
A newer delivered revision covers the older merges of its repository, as the forge says ancestry (issue 1946)
jschoubben2026-10-24 17:03:20 +02:00
2139e83a8a
Remove a binary built by mistake
jschoubben2026-10-24 16:58:33 +02:00
e7ca8f7af1
The backup module says on the bus when a backup asked for now has ended, so no one polls backed-up (issue 1944, ADR 0539 §16)
jschoubben2026-10-24 16:58:19 +02:00
eb79996336
The tracker derives a fix's delivered from the delivery view's event, not the gate's gone states (issue 1946)
jschoubben2026-10-24 16:50:50 +02:00
1a271a1fb1
The group's integration test hears the forge's merges once both members are handed (issue 1946, R6-C3)
jschoubben2026-10-24 16:43:48 +02:00
30d04f6bef
Pin the gate to mesh-sdk's release 6 verb tables and prove it holds the seat as they have it (issue 1946, R6-C3)
jschoubben2026-10-24 16:35:15 +02:00
5ff337e0dc
Gate keeps the merge's six states and asks the controller nothing (issue 1946, R6-C1, C2, C4)
jschoubben2026-10-24 16:26:36 +02:00
2fabbe556e
Pin to the group's new mesh-sdk head bfc3883a, whose composer reads a fallback to a predefined key as the indexer does (ADR 0348 §7)
jschoubben2026-10-24 14:57:35 +02:00
89b9212c4d
Pin to the group's new mesh-sdk head 19c1d359, whose composer names the reader's pinned SDK instead of a bare (devel) (ADR 0482 clause 5)
jschoubben2026-10-24 14:12:09 +02:00
40da368ee3
Date an adopted merge once, by the walk it was adopted from, so a later walk it follows never makes it look newer than a forge merge heard after it (issue 1726, review)
jschoubben2026-10-24 13:55:10 +02:00
865f3b6455
Say what pacman-tools reads outside: the root predefined.json (issue 1935)
jschoubben2026-10-24 13:48:18 +02:00
03524ecd13
Mark pacman-tools as reading outside its directory: its upgrade-order test reads the root predefined.json, which its digest does not cover (issue 1935)
jschoubben2026-10-24 13:48:09 +02:00
15101c9ce6
Move source.main for a merge the gate caught up after a gap, so the checker re-checks open heads on the trunk that is (issue 1726)
jschoubben2026-10-24 13:41:56 +02:00
f910b0ceb8
Pin mesh-build-go to the group's mesh-sdk head after main's merge, so it builds on the SDK the group delivers
jschoubben2026-10-24 13:28:16 +02:00
545c72bb59
Merge pull request 'gitea's watcher answers its handshake without waiting for the forge, so a slow forge at a tool-runner restart no longer kills its tools and events (issue 1726)' (#471) from fix/1726-gitea-handshake-not-on-forge into main
jschoubben2026-10-24 11:10:39 +00:00
7afcd0282d
Set up the forge's webhook without holding the bundle's import, so a slow forge never costs gitea its handshake and its tools (issue 1726)
jschoubben2026-10-24 13:00:57 +02:00
75156fce00
gitea: forge-account reads the forge's own host key file before scanning its sshd (issue 1939)
jschoubben2026-10-24 12:50:20 +02:00
16d7b1898d
Mark the packages whose tests read files outside their directory, found by the review (issue 1935)
jschoubben2026-10-24 04:38:48 +02:00
f04465537b
Say in realtree_test that a missing trunk fails, not skips (issue 1295)
jschoubben2026-10-24 04:37:52 +02:00
e870a7f65f
Pin to the finish group's mesh-sdk head dd0d156b, so every member names one SDK (issue 1622)
jschoubben2026-10-24 04:28:14 +02:00
e8a59171c7
Merge remote-tracking branch 'origin/feat/r4g-finish-composer' into HEAD
jschoubben2026-10-24 04:26:03 +02:00
ebb25757a2
Merge remote-tracking branch 'origin/feat/r4g-finish-1935' into HEAD
jschoubben2026-10-24 04:26:02 +02:00
6a70735489
Run a compose ask on the Go build seat: build mesh-sdk's composer at the asked commit once, fill its manifests from the indexer and run it shut off (issue 1622)
feat/r4g-finish-composer
jschoubben2026-10-24 04:13:55 +02:00
a715c8821f
mesh-build-go: a catalogue module's non-Go files enter its packages' digests; markers where tests read other modules (issue 1935)
feat/r4g-finish-1935
jschoubben2026-10-24 03:59:08 +02:00
b6ed8599c8
mesh-build-go: a package marked reads-outside is never kept, so tests that read files outside their directory run on every check (issue 1935)
jschoubben2026-10-24 03:46:45 +02:00
ae6f7d5b54
Make a missing trunk copy a failure again, now the checker places it (issue 1295)
jschoubben2026-10-24 03:43:49 +02:00
25176e1ccd
Merge pull request 'mesh-build-go: lint the unit level's directories as many at once as its tests, so a large repository's check ends within its bound (issue 1930)' (#470) from fix/1930-parallel-lint into main
jschoubben2026-10-24 00:16:55 +00:00
7e1f3de77a
mesh-build-go: lint directories side by side like the tests, so a large repository's check stays inside its bound (issue 1930)
jschoubben2026-10-24 02:01:36 +02:00
4b1bed4b9d
Merge pull request 'mesh-mail-reader: read messenger's sent_on as a list, so an unchanged set of mails is signalled once, not every 160 s (issue 1926)' (#469) from fix/1926-mail-signal-once into main
jschoubben2026-10-23 22:36:10 +00:00
25d69406b7
Merge pull request 'mesh-build-go: a failed test keeps its last lines and its cause, not its first fifteen (issue 1901, with mesh-delivery)' (#466) from fix/1901-rebased into main
jschoubben2026-10-23 22:35:57 +00:00
f836c021e1
Merge pull request 'gitea: the checker's owed results are taken at once and written in the background, so the runner keeps the watch and every mesh/check reaches the forge (issue 1726)' (#468) from fix/1726-owed-watch-not-blocked into main
jschoubben2026-10-23 22:35:33 +00:00
450f0bbe79
Merge pull request 'The build modules pin mesh-sdk's list-form level digest, so a check of a repository with a package named token ends (issue 1930, with mesh-sdk and mesh-delivery)' (#467) from fix/1930-digest-shape into main
jschoubben2026-10-23 22:08:24 +00:00
5a7076a6a2
Take the checker's owed without waiting on the forge, so a large owed never times its watch out (issue 1726)
jschoubben2026-10-23 23:52:52 +02:00
30b22c198e
Pin the build modules to mesh-sdk 403a5d7, whose level digest is a list, so a check of a repository with a package named token ends (issue 1930)
jschoubben2026-10-23 23:36:31 +02:00
753e8fc202
mesh-mail-reader: read tell's sent_on as the list it is, so a told set is not sent again; leave past-due and duplicate mails out (issue 1926)
jschoubben2026-10-23 23:27:23 +02:00
e5202445ba
Merge pull request 'mesh-build-go: build_go_test takes packages as a typed list too, so checks run again (issue 1925)' (#465) from fix/1925-packages-shape into main
mesh-tools2026-10-23 20:44:09 +00:00
dcae699323
mesh-build-go: a clipped failure starts with its cause, not the marker, for an older checker (issue 1901/AC3)
jschoubben2026-10-23 22:26:29 +02:00
70ef99595a
mesh-build-go: build_go_test takes packages as a typed list too (issue 1925)
jschoubben2026-10-23 22:21:41 +02:00
746eb885a3
Test 1901/AC3: an older pair of build module and checker still agree (issue 1901)
jschoubben2026-10-23 22:14:28 +02:00
2cdb9b8fc4
mesh-build-go: a failed test keeps its last lines and its error line, not its first fifteen (issue 1901)
jschoubben2026-10-23 18:07:23 +02:00
e830045545
Merge pull request 'R4g+R5 (mesh-catalog): the build modules pull asks, scripts become tests, build-agent references go (design 47)' (#464) from feat/r4g into main
jschoubben2026-10-23 17:49:43 +00:00
454fb8a918
Write a pull request's check verdict into its key after the key is created: the status event can be taken first (R4g, issue 1887)
jschoubben2026-10-23 19:42:54 +02:00
c32474ee40
Judge the delivery-before-check order from the step records, not a poll: at capacity 1 the check starts the instant the delivery ends (R4g, issue 1887)
jschoubben2026-10-23 19:19:45 +02:00
f95f3f430e
Give the delivery-ask integration test a bus of its own: the level shares one bus across directories, so a named stream there could be taken by another test (R4g, issue 1887)
jschoubben2026-10-23 19:15:52 +02:00
6eacbd160d
mesh-build-go: a failed test keeps its last lines and its error line, not its first fifteen (issue 1901)
fix/1901
jschoubben2026-10-23 18:07:23 +02:00
0f768bc97b
Skip the trunk comparison, saying NOT COMPARED, when the catalogue's own copy is not beside: the checker before R4g places none, so R4g's own check could never pass (issue 1295)
jschoubben2026-10-23 17:38:28 +02:00
721db20887
Take the committed 10 MB repositories binary back out of the gitea module and ignore it (R4g review)
jschoubben2026-10-23 17:22:20 +02:00
1fc7b84ad2
Merge remote-tracking branch 'origin/feat/r4g' into feat/r4g
jschoubben2026-10-23 17:20:26 +02:00
70b16dc594
Merge origin/main (keep-main-rules) and fix/forge-requires-no-status (ADR 0534): no required status anywhere, and with keep-main-rules false the program takes away a required status once and changes nothing else
jschoubben2026-10-23 17:20:19 +02:00