Commit Graph

  • 45564e69a6 A placed check ask names the packages it tests, so the first ask's other packages are not run or counted again (issue 890, ADR 0552 §4; review round 1) jschoubben 2026-10-26 14:01:05 +01:00
  • d96b9fd660 buildrun: an ask the build seat gave up on ends its asker's wait as failed with why, for every asker of the build seats (issue 734) jschoubben 2026-10-26 14:00:46 +01:00
  • 2aae6f5580 Merge pull request 'buildstep: a build module ends the steps a previous process left running, and a step says what it is (issue 1890)' (#90) from fix/1890-left-running-steps into main mesh-tools 2026-10-26 12:57:31 +00:00
  • 6b84973142 Build steps: an ask key past the step bound is ended, at start and on the module's round (issue 1890 review 2) jschoubben 2026-10-26 13:51:54 +01:00
  • e7f0dc612e buscompose: a user of a seat pulled by kind reads its seat's dead letters, so an asker hears an ask given up (issue 734) jschoubben 2026-10-26 13:51:35 +01:00
  • 76deab6c67 gofmt the cap's test (issue 1806) jschoubben 2026-10-26 13:49:09 +01:00
  • e66c6fea62 Build steps: test the ask key with a real ask id (issue 1890) jschoubben 2026-10-26 13:43:05 +01:00
  • 6b1c7a5613 Build steps: a restart leaves pulled asks to the stream, ends steps by compare-and-set, and step_end refuses a step this process started (issue 1890 review 1) jschoubben 2026-10-26 13:42:50 +01:00
  • 04902ff24a Build seats yield: idle priority and a per-node processor cap on their runtimes, threads per step within it (issue 1806) jschoubben 2026-10-26 13:37:00 +01:00
  • bb71310337 Let a check ask name what its node needs, decline it where that is lacking, and leave unmet packages to such a node (issue 890) jschoubben 2026-10-26 13:35:12 +01:00
  • 18e0a01c54 Build steps: EndStaleAtStart waits for the runtime and ends the left-running steps (issue 1890) jschoubben 2026-10-26 13:25:58 +01:00
  • ddafe1b1aa Build steps: a step records what it is, a restart ends the steps it left running, a tool ends one (issue 1890) jschoubben 2026-10-26 13:25:13 +01:00
  • b4cd95e7c4 Merge pull request 'Take-over of the bus's user list by the grants part: sealed list layout, followed-list have, handed hashes, named readers (issue 1945)' (#89) from feat/1945-user-list-switch into main mesh-tools 2026-10-26 12:21:39 +00:00
  • 89c5838176 Merge pull request 'Delivery layouts for ADR 0548: merge turns, carried verdicts and the siblings a verdict read (issue 568)' (#88) from feat/548-one-check into main mesh-tools 2026-10-26 12:01:17 +00:00
  • c2a410bb63 The have's user list says why the bus node does not watch the grants part's key (review of the switch, issue 1945) jschoubben 2026-10-26 12:25:27 +01:00
  • af66adc180 Bring in the adoption handing (fix/1945-adopt-hashes 17478994): the have's user list carries Handed beside Follows and Key; a state that names readers is not Readable to a composer that knows no readers (review of the switch, issue 1945) jschoubben 2026-10-26 12:23:07 +01:00
  • 9c61918ac3 delivery: a turn never holds the check of heads that wait in it, so two approved merges in one turn never hold each other's carry (ADR 0548 §3; issue 568, review round 1) jschoubben 2026-10-26 12:12:53 +01:00
  • 83ee7769d8 Make the grants part's state in the switch's test as the part makes a declared state, by its stream (issue 1945) jschoubben 2026-10-26 12:00:29 +01:00
  • 175a5567b8 The bus node follows the grants part's sealed user list, and only the grants part reads the vault's hashes (ADR 0547 clauses 7, 9; issue 1945) jschoubben 2026-10-26 11:53:11 +01:00
  • 1747899419 delivery: the bus node hands the loaded list's hashes to the vault, sealed, in the bus module's have (ADR 0547 clause 9, issue 1945) fix/1945-adopt-hashes jschoubben 2026-10-26 11:28:38 +01:00
  • f5c233a928 delivery: a verdict names the siblings it read and the commits it was carried from, and a composition its fingerprint set, so a trunk or sibling move is carried, not judged again (ADR 0548 §5, §6; issue 568 S2) jschoubben 2026-10-26 11:25:07 +01:00
  • 0abe480dba delivery: the gate's merge turns, so the checker holds new checks off a repository an approved merge waits on (ADR 0548 §3, §4; issue 568 S1) jschoubben 2026-10-26 11:24:06 +01:00
  • 85fa8511c4 Merge pull request 'Build steps: run every test step of a level and name every failure in the verdict (issue 1921)' (#87) from fix/1921-every-failure-r into main mesh-tools 2026-10-26 10:18:05 +00:00
  • 79649c3fa9 Run every test step of a check's level after a failure, and let a verdict name every failed test (issue 1921) jschoubben 2026-10-24 23:41:54 +02:00
  • c3544b6a17 Merge pull request 'buscompose: the grants part may create a placed module's declared buckets, logs and streams, creation only (issue 1790, ADR 0547 clause 1 exception)' (#86) from fix/1790-grants-create-buckets into main mesh-tools 2026-10-26 08:17:16 +00:00
  • 136fa8b2a8 Say how a declared bucket and module stream are created, so the grants part makes the same stream the controller does jschoubben 2026-10-26 09:04:43 +01:00
  • 8f6ee2fd18 Let the grants part create the streams manifests declare, so a new module state no longer waits for a controller start jschoubben 2026-10-26 09:01:32 +01:00
  • 095d41fa3e Merge pull request 'buscompose: the controller's bus composer in the SDK, byte-equal to the controller's, with the mesh-grants grant (ADR 0547)' (#85) from fix/1945-memberships into main jschoubben 2026-10-25 22:43:57 +00:00
  • b7b5c6ef27 The copied composer grants the grants part reading every membership, and its memberships are held to the controller's too (ADR 0547 §5, review of mesh-grants) fix/1945-bus-composer jschoubben 2026-10-25 22:50:21 +01:00
  • 7ac4493ce9 Merge pull request 'process: open a part's buckets as essential (stop, naming the grant) or optional (log what is not heard, keep running) (issue 1945)' (#84) from fix/1945-ask-again-and-why into main mesh-tools 2026-10-25 21:43:08 +00:00
  • 881da7f599 The copied bus composer grants the grants part publishing memberships, as the controller's does (ADR 0547 §5) jschoubben 2026-10-25 22:33:20 +01:00
  • 3db051be57 Merge pull request 'A node's have says which bus user list it wrote: delivery.Have's user-list field (ADR 0547 bridge, issue 1945)' (#83) from fix/1945-user-list-follows into main mesh-tools 2026-10-25 21:16:03 +00:00
  • e0d1de0475 process: a part opens what it cannot work without as essential, the rest as optional (issue 1945) fix/1945-optional-buckets jschoubben 2026-10-25 22:12:20 +01:00
  • b5f8604d03 Copy the controller's bus composer into mesh-sdk as buscompose, held byte for byte to the controller's lists (issue 1377, ADR 0547 §5) jschoubben 2026-10-25 21:54:58 +01:00
  • 0be0ffd615 Compare the have's user list by what it says, so a have is not written again for the same list (ADR 0547 §8) jschoubben 2026-10-25 21:47:30 +01:00
  • f63fa86c74 Say in the bus module's have the user list its node wrote alone, so the bridge of ADR 0547 §8 reports what the bus loads (issue 1945) jschoubben 2026-10-25 21:42:13 +01:00
  • db26f7e8b6 Merge pull request 'The put's words: delivery.Put, a want's put and hold marks, a grant that says which node's accounts it names (ADR 0546)' (#82) from feat/put-version into main mesh-tools 2026-10-25 20:35:28 +00:00
  • d4ae4b6790 Say the put's tools, not a seat's verbs, in the put's words (ADR 0546) jschoubben 2026-10-25 21:08:10 +01:00
  • 2f6741b7f8 No seat and no compose verb for the put: the controller takes no change, so the assigner serves the put as its own tools from compositions the controller already writes (ADR 0546) jschoubben 2026-10-25 21:07:58 +01:00
  • 20a6dc4920 A grant says whether it names a module's accounts on a node, for the assigner and the compose verb (ADR 0546) jschoubben 2026-10-25 20:50:51 +01:00
  • c4f37c279a The assigner's seat with put, release and puts, the controller's compose verb, a put's key and value, and the view answers no option that authorises (ADR 0546) jschoubben 2026-10-25 20:49:29 +01:00
  • 7f89cb51de Merge pull request 'Keep a build node's pause in a state of its own, and pull as not paused when the pause cannot be read (steps bucket full, 2026-10-25)' (#81) from fix/steps-bucket-ages into main jschoubben 2026-10-25 18:06:32 +00:00
  • 518dae5ec9 Pull as not paused when the pause cannot be read, and say so once, instead of ending the puller silently jschoubben 2026-10-25 18:56:17 +01:00
  • e8f8ef63fa Keep a build node's pause in a pauses state of its own, so the steps state can drop its old keys without ending a pause jschoubben 2026-10-25 18:51:04 +01:00
  • 4f4d5ca9c9 Merge pull request 'Wake a parked build puller when its capacity changes, so a node raised from capacity 0 takes asks (issue 1887)' (#80) from fix/puller-wakes-on-capacity into main jschoubben 2026-10-25 17:10:33 +00:00
  • a8fbabbfc3 Fold the puller-wake and Served tests into existing tests to stay within the test budget (issue 1887) jschoubben 2026-10-25 17:44:03 +01:00
  • b9911dc1c1 Start the puller's capacity watch once Serve has the runtime's channel, since a build module pulls before it serves (issue 1887) jschoubben 2026-10-25 17:26:10 +01:00
  • e6b2df6506 Wake a parked build puller on its capacity's own change, so a node started at capacity 0 takes asks once raised (issue 1887) jschoubben 2026-10-25 17:23:28 +01:00
  • a073aeae5e Merge remote-tracking branch 'origin/main' into feat/try-speed feat/try-speed jschoubben 2026-10-25 03:17:34 +01:00
  • f9d11acf23 Merge pull request 'A node's own composition may carry filled paths; a composition that would leave a provisioner file empty is refused (issue 1944)' (#79) from fix/r6-node-composition into main jschoubben 2026-10-25 00:17:36 +00:00
  • 10b6e20232 Let the node's own composition carry its files' filled paths, and refuse a composition that would have a provisioner's file written empty (issue 1945) jschoubben 2026-10-25 01:46:36 +02:00
  • 99407c37df Merge remote-tracking branch 'origin/main' into feat/try-speed jschoubben 2026-10-25 01:29:22 +02:00
  • 9b408db24a buildstep: run a check's levels side by side and answer them in level order, so the integration level no longer waits for the unit level and the first failing level is still named first (issue 1921, try speed S10) jschoubben 2026-10-25 01:22:50 +02:00
  • da7f045575 Merge pull request 'R6: the composition's layout, its signature and digest, the want's digest, the judgement values; the hand tool is mesh-hand-compose (issue 1943)' (#78) from feat/r6 into main jschoubben 2026-10-24 23:17:32 +00:00
  • 571ac521f0 delivery: keep a merged member in its group's candidate, marked merged, so the heads an Approve covers hold until every member merged (issue 1921, issue 1791, try speed S9) jschoubben 2026-10-25 01:17:16 +02:00
  • 4a12ccb78d buildstep: deepen a merge preview's history from the mirror when it holds the trunk commit, so the preview fetches no history from the forge (issue 1921, try speed S6) jschoubben 2026-10-25 01:08:39 +02:00
  • cb548a6a58 buildstep: keep what one command of an ask writes into the caches for its later commands, so vet, unit tests and the integration compile build each package once; the shared cache stays unchanged (issue 1921, try speed S2) jschoubben 2026-10-25 00:58:46 +02:00
  • bc16740feb Run every test step of a check's level after a failure, and let a verdict name every failed test (issue 1921) fix/1921-every-failure jschoubben 2026-10-24 23:41:54 +02:00
  • 748c564cdf Merge main (the R4g finish: the composer command) into feat/r6 (issue 1943) jschoubben 2026-10-24 23:01:18 +02:00
  • 312878befb Merge pull request 'R4g finish: the composer's step contract and the reads-outside marker (issues 1621-1623, 1935)' (#77) from feat/r4g-finish into main jschoubben 2026-10-24 20:56:35 +00:00
  • d7a9b9688b Let the judgement beside a composition say unchanged: equal to the declaration the node last applied (issue 1943; ADR 0540 clause 9) jschoubben 2026-10-24 21:17:14 +02:00
  • 7f9cc0e55c Keep plan-moved and sent among the controller seat's events until the catalogue's main consumes them no more (issue 1943) jschoubben 2026-10-24 20:38:24 +02:00
  • e45bdc0891 Drop plan-moved and sent from the controller seat's events (issue 1943; the review's notes on 1945) jschoubben 2026-10-24 20:20:48 +02:00
  • a523a8cbb0 Say beside a composition that it changes only the bus's user list (issue 1943; the review's A2, for issue 1906) jschoubben 2026-10-24 18:15:32 +02:00
  • 5da87a0dda Let the controller say a bucket it deleted at its first start (issue 1943; for issue 1945, B13) jschoubben 2026-10-24 17:03:54 +02:00
  • e64486b0e6 Sign a composition through a signer that keeps its private half (issue 1943, S5) jschoubben 2026-10-24 16:42:41 +02:00
  • 64a502d16a Carry the module's upgrade policy and its source beside a composition's judgement (issue 1943; for issue 1906) jschoubben 2026-10-24 16:40:45 +02:00
  • de5b33843f Run the captured declarations' test per node in parallel, inside the unit level's bound (issue 1943) jschoubben 2026-10-24 16:36:42 +02:00
  • d8da8f1d36 Sign a composition with a trusted key and compose one by hand with mesh-compose (issue 1943, S5) jschoubben 2026-10-24 16:36:14 +02:00
  • d506f2196a Refuse the plan verbs by name on the controller and delivery seats (issue 1943, S4) jschoubben 2026-10-24 16:32:11 +02:00
  • d6cef5829b Have a want name its composition and a backup answer; give the node its own want, the seventh rule, the held phase and the backup and record asks (issue 1943, S3) jschoubben 2026-10-24 16:29:24 +02:00
  • 826fd73cf2 Give a composition its value, its canonical digest and its files by digest; key a dotted module escaped (issue 1943, S2; issue 1150) jschoubben 2026-10-24 16:26:32 +02:00
  • aee971c198 Name a node's composition bucket, its keys, and the digest with the move's judgement beside it (issue 1943, S1) jschoubben 2026-10-24 16:21:02 +02:00
  • bfc3883af9 Read a manifest's fallback to a predefined key in the composer as the indexer reads it, or against the list a request or -catalogue gives: a run never holds the catalogue's predefined.json, and the composition refused pacman and xterm for it (ADR 0348 §7) jschoubben 2026-10-24 14:57:10 +02:00
  • 19c1d35939 Name the pinned mesh-sdk version when an SDK command is built from a reader's tree, not a bare (devel): the compose job builds mesh-compose there and its verdict must name the reader's SDK (ADR 0482 clause 5) jschoubben 2026-10-24 14:11:20 +02:00
  • bc0c25e510 Merge main into feat/r4g-finish: the controller seat's verb held and event artifacts-gone (#76) jschoubben 2026-10-24 13:25:44 +02:00
  • 8c6e18e822 Merge pull request 'Give the controller seat the verb held and the event artifacts-gone (issue 1937)' (#76) from fix/1937-done-key-blobs into main jschoubben 2026-10-24 10:35:07 +00:00
  • d9fa5536a8 Mark the packages whose tests read files outside their directory, found by the review (issue 1935) jschoubben 2026-10-24 04:38:58 +02:00
  • dd0d156b9e Wait for the third run to start, not only for its take, so the capacity test does not race under a loaded suite jschoubben 2026-10-24 04:25:12 +02:00
  • 51bc6a65b6 Merge remote-tracking branch 'origin/feat/r4g-finish-1935' into join/r4g-finish-sdk jschoubben 2026-10-24 04:23:53 +02:00
  • 66bf26c0d7 Let the composer read its request from a file, since a run step hands it no standard input (issue 1622) jschoubben 2026-10-24 04:10:31 +02:00
  • 34f210e5eb Give the controller seat the verb held and the event artifacts-gone, so the builder rebuilds a done key whose blob the artifact store no longer holds (issue 1937) jschoubben 2026-10-24 04:07:22 +02:00
  • 4e0036cc95 Mark the packages whose tests read files outside their directory, so mesh-build-go never keeps their verdict (issue 1935) feat/r4g-finish-1935 jschoubben 2026-10-24 04:00:48 +02:00
  • 4784762a70 Name every repository's siblings in beside's comment, mesh-controller beside mesh-host's tests, as the checker places them (issue 1295) jschoubben 2026-10-24 03:51:35 +02:00
  • 668fc2a722 Let the Go build seat carry a compose ask and its answer, so the assigner composes a group with its mesh-sdk head (issue 1622) jschoubben 2026-10-24 03:51:35 +02:00
  • 20d18eb4f5 Give mesh-sdk a composer command, so a program linking one mesh-sdk can have another commit's composition judged (issue 1621) jschoubben 2026-10-24 03:51:35 +02:00
  • e1f393bbb1 Merge pull request 'Raise @novox/mesh-sdk to 0.1.17, and a unit test refuses a packed change that keeps its version (issue 1899, met twice)' (#75) from fix/1899-version-guard into main jschoubben 2026-10-23 22:35:42 +00:00
  • 35e86b00d3 Raise @novox/mesh-sdk to 0.1.17 and guard that a changed package carries a new version (issue 1899) jschoubben 2026-10-24 00:15:27 +02:00
  • 53a1de2aaa Merge pull request 'A level's digest is stored as a list, and an end the state refuses is said, so a check of a repository with a package named token ends (issue 1930, with mesh-catalog and mesh-delivery)' (#74) from fix/1930-digest-shape into main jschoubben 2026-10-23 22:08:06 +00:00
  • 403a5d72ab Keep a level's digest as a list and say an end the state refuses, so a check of a repository with a package named token ends (issue 1930) jschoubben 2026-10-23 23:32:00 +02:00
  • 1ff6d33978 Merge pull request 'R4g+R5 (mesh-sdk): asks on the build seats' streams, the assigner's layouts, mesh-pack (design 47, ADR 0524-0530, 0537)' (#73) from feat/r4g into main jschoubben 2026-10-23 17:48:34 +00:00
  • a2c813a6b4 Stand in node-tools beside the toolchain modules in the composition test, as the catalogue's build modules require it since issue 1911, so the test judges the toolchain alone (issue 1887, group check of #73) jschoubben 2026-10-23 17:03:21 +02:00
  • a9560890ee Name the unit level's lint time in a verdict's times, so the check's line can say what gofmt and go vet cost (issue 1887 D7-go, review round 2 item 5) jschoubben 2026-10-23 16:50:22 +02:00
  • bec9585d50 Run an ask no more once its stream delivered it past AskRuns, failing its step with why, so a run that kills its node is not offered to each build node in turn (issue 1907) jschoubben 2026-10-23 16:41:12 +02:00
  • fc4f57c4b3 Restart an ask's bound at each run's start, also on the same node, so a step redelivered after its build module was replaced is not cut by the killed run's time (issue 1887, review: issue 734 path; ADR 0525 §6) jschoubben 2026-10-23 16:36:46 +02:00
  • 88fa74ce5e Bound an ask's step from its start on the node that took it, not from its put, so an ask waiting in its stream during a large rebuild is never failed and asked twice (issue 1887, review round 2 item 1; ADR 0525 §3, §6) jschoubben 2026-10-23 16:32:21 +02:00
  • 9205222a98 Merge branch 'feat/r4g-fallback' into feat/r4g jschoubben 2026-10-23 16:19:25 +02:00
  • 285566eed1 Merge branch 'feat/r4g-scripts' into feat/r4g jschoubben 2026-10-23 16:19:25 +02:00
  • 51756ee9a4 Merge branch 'feat/r4g-asks' into feat/r4g jschoubben 2026-10-23 16:19:24 +02:00
  • d7375c9811 Add mesh-pack: a hand build with the build module's recipe and mesh-sdk's own pack (F1) jschoubben 2026-10-23 16:12:23 +02:00