Commit Graph
72 Commits
Author SHA1 Message Date
jschoubben 74d11f95a2 Choose build nodes by the agreed toolchain and fewest running steps, and agree the two nodes' digests (issue 1607, AC4) 2026-10-21 11:20:31 +02:00
jschoubben 1e6d00b4c7 Claim a build key by create and compare-and-set, never twice, retry a failed key except a refused kind (issue 1607, AC3) 2026-10-21 11:20:09 +02:00
jschoubben 87e550681f Plan a manifest's artifacts for the build modules and refuse image, upstream and package by kind (issue 1607, AC2) 2026-10-21 11:19:38 +02:00
jschoubben c3804b012f Add the builder part: its manifest, its credential and its bus connection (issue 1607, AC1) 2026-10-21 11:18:30 +02:00
jschoubben 07a28b03c4 The indexer writes each module's directory into modules.<m> and keeps it (issue 1606, ADR 0478 clause 8) 2026-10-21 11:16:16 +02:00
mesh-tools 26de6bc625 Merge pull request 'The indexer reads the build modules' toolchains, and an artifact with no lock carried has no lock entry (design 47 R4c-3)' (#11) from feat/r4c3-build-modules into main 2026-10-20 21:43:20 +00:00
mesh-tools a5da6079de Write each module once per merge and watch a build module's toolchains bucket on its toolchain.reported event, with no timer (issue 1444, review round 1)
mesh/repo-check head a5da6079de01 merged into trunk 340bf643883d beside mesh-catalog#389@bcee61ed — pass: its merge-check.sh passed
mesh/merge-gate head a5da6079de01 merged into trunk 340bf643883d — pass: group feat/r4c3-build-modules composed: every machine composes with the change as …
mesh/delivery-group group feat/r4c3-build-modules failed: a member failed
mesh/delivery covered after its failure: a later walk that contains it was delivered: plan-1792582266656254343 (novox/mesh-delivery at d68d7ef3 into main…
2026-10-20 21:02:44 +00:00
mesh-tools 127ac64cce Leave an artifact without its lock file out of Locks (issue 1459) and read the build modules' toolchains (issue 1444), part 2 of 2 2026-10-20 20:48:30 +00:00
mesh-tools 74fef7dd5a Recompute the new-form fingerprints when a build module reports its toolchain (issue 1444), part 1 of 2 2026-10-20 20:47:35 +00:00
mesh-tools 340bf64388 Merge pull request 'The bridge carries each module's manifest and lock hashes, and the indexer writes manifests by digest and each module's new-form inputs (design 47 R4c-2, issues 1448, 1449, 1450, 1444, 1451, 1458)' (#10) from feat/r4c2-new-keys into main 2026-10-20 19:31:05 +00:00
mesh-tools c9f742d5f2 Read a merge's manifests and lock files at most eight at once, so a catalogue merge stays inside the bridge's bound (issues 1448, 1458, design 47 R4c-2)
mesh/repo-check head c9f742d5f20e merged into trunk 2520cc4a88f7 — pass: its merge-check.sh passed
mesh/merge-gate head c9f742d5f20e merged into trunk 2520cc4a88f7 — pass: group feat/r4c2-new-keys composed: every machine composes with the change as it di…
mesh/delivery delivered
mesh/delivery-group group feat/r4c2-new-keys delivered: every member is delivered
2026-10-20 19:06:03 +00:00
mesh-tools f69a561a16 Test how a manifest and lock hashes become a module's new-form inputs (issue 1450, design 47 R4c-2) 2026-10-20 18:55:54 +00:00
mesh-tools 27bfd83fa0 Test the kept manifests, the new-form reasons and the candidate's manifests against real files (issues 1449, 1444, 1451, design 47 R4c-2) 2026-10-20 18:55:29 +00:00
mesh-tools a75d9cc851 Keep manifests and say why no new-form fingerprint exists, so the group check can start from facts (issues 1449, 1450, 1444, 1451, design 47 R4c-2) 2026-10-20 18:54:28 +00:00
mesh-tools ba7ce55887 Give the indexer a manifests bucket and the SDK that knows the new keys (issue 1449, design 47 R4c-2) 2026-10-20 18:53:40 +00:00
mesh-tools 3c1e7ad464 Test the bridge's manifest and lock file conversion (issue 1448, design 47 R4c-2) 2026-10-20 18:53:07 +00:00
mesh-tools 41225bf459 Test the forge bridge's file reads against the stand-in forge and the bus (issue 1448, design 47 R4c-2) 2026-10-20 18:52:27 +00:00
mesh-tools 543d91d626 Read each module's manifest and lock files in the forge bridge, so the indexer gets them (issue 1448, design 47 R4c-2) 2026-10-20 18:51:27 +00:00
mesh-tools d650a41ba6 Copy the real manifests the indexer's new-form tests read (issues 1450, 1444)
Fixtures are copied from the writer, never written by hand: four catalogue manifests at mesh-catalog a67f0196 and build-agent's at mesh-controller f2d7bc94.
2026-10-20 18:48:08 +00:00
mesh-tools 2520cc4a88 Merge pull request 'The parts serve the gate: the bridge performs owed acts and merges, the teller carries asks, the indexer reads source.main, the view shows asks (design 47 R3e, issues 1341-1345)' (#9) from feat/r3e-the-gate into main 2026-10-20 06:49:19 +00:00
mesh-tools c93954e53c Pin mesh-sdk to main's merge of #47 (88581d0a), the same tree as ba684e54 the review read
mesh/repo-check head c93954e53c8e merged into trunk 9c15112d935a beside mesh-catalog#380@cf5c0273 +1 more — pass: its merge-check.sh passed
mesh/merge-gate head c93954e53c8e merged into trunk 9c15112d935a — pass: group feat/r3e-the-gate composed: every machine composes with the change as it did…
mesh/delivery covered after its failure: a later walk that contains it was delivered: plan-1792478961597980735 (novox/mesh-delivery at 2520cc4a into main…
mesh/delivery-group group feat/r3e-the-gate delivered: every member is delivered
2026-10-20 06:33:01 +00:00
mesh-tools bf59b5a27b An answer to an earlier asking no longer blocks the next asking: the teller and the view tell the asking by the answer's warrant id (review round 2, R2-1) 2026-10-20 01:35:26 +00:00
mesh-tools 14e9d56a22 Ask under each asking's own router id, spell the heads in lower case as the gate does, show a removed have plainly; pin mesh-sdk ba684e5 (review round 1: G2, T1, issue 1370) 2026-10-20 01:30:54 +00:00
mesh-tools 34f585106f Show the open asks in the delivery view: the gate's asks with no answer, in the table, the page and the command's JSON (issue 1345) 2026-10-20 00:34:28 +00:00
mesh-tools 05c180cf87 Add the indexer's source revision logic and its tests that the last commit named (issue 1344) 2026-10-20 00:31:19 +00:00
mesh-tools 409c41d4ae Stamp the modules with the gate's source revision, read from source.main (issue 1344) 2026-10-20 00:30:52 +00:00
mesh-tools 5ba1da5b82 Carry the gate's merge asks to the router and write the operator's answer back, a warrant that does not hold said as a condition (issue 1343) 2026-10-20 00:28:36 +00:00
mesh-tools 8ee56dbb5c Grant the bridge's test principal only a read of the gate's buckets, as the controller composes it (issues 1341, 1342) 2026-10-20 00:24:40 +00:00
mesh-tools be5c1b371e Merge the pull request a gate's merges key hands the bridge, with the Approve's heads, one pass stopping at a refusal (issue 1342) 2026-10-20 00:17:44 +00:00
mesh-tools eeb5561a23 Perform the gate's owed acts once per revision from the bridge, a refusal written on FORGE (issue 1341) 2026-10-20 00:16:43 +00:00
mesh-tools a0883a174b Test the bridge's two state buckets, heads and performed (issue 1341) 2026-10-20 00:15:54 +00:00
mesh-tools 7686cfc55d Turn an owed key into the forge call that performs it, and a refusal into a refused message (issue 1341) 2026-10-20 00:15:29 +00:00
mesh-tools 507fac41fe Declare the bridge's performed bucket (issue 1341) 2026-10-20 00:14:42 +00:00
mesh-tools 9c15112d93 Merge pull request 'Take the SDK that counts a build outcome as the controller writes it, so modules get their fingerprints (issue 1281)' (#8) from fix/1281-outcome-is-a-build into main 2026-10-19 23:02:00 +00:00
mesh-tools 3c655c5ab4 Write a failed build as the controller does, an outcome with failed set (issue 1281)
mesh/repo-check head 3c655c5ab449 merged into trunk 6a23627426c6 — pass: its merge-check.sh passed
mesh/merge-gate head 3c655c5ab449 merged into trunk 6a23627426c6 — pass: group fix/1281-outcome-is-a-build composed: every machine composes with the change…
mesh/delivery delivered
mesh/delivery-group group fix/1281-outcome-is-a-build delivered: every member is delivered
2026-10-19 22:47:41 +00:00
mesh-tools 8ffcf02a9c Take the SDK that counts a stateless build record as an outcome; fixtures in the controller's layout (issue 1281) 2026-10-19 22:44:21 +00:00
mesh-tools 6a23627426 Merge pull request 'Recognise a trunk build by repository identity and an empty ref in the indexer and the view (issue 1281)' (#6) from fix/1281-trunk-builds-by-repository into main 2026-10-19 20:58:07 +00:00
jschoubben 4b8e71370c Recognise a trunk build by repository identity and an empty ref in the indexer and the view (issue 1281)
mesh/repo-check head 4b8e71370cc2 merged into trunk fa4be27c1e40 — pass: its merge-check.sh passed
mesh/merge-gate head 4b8e71370cc2 merged into trunk fa4be27c1e40 — pass: group fix/1281-trunk-builds-by-repository composed: every machine composes with th…
mesh/delivery delivered
mesh/delivery-group group fix/1281-trunk-builds-by-repository delivered: every member is delivered
Build records name their repository by clone URL and a plan-asked build has no ref, so no module fingerprint was ever written or compared; both now use the SDK's tests.
2026-10-19 22:39:51 +02:00
mesh-tools fa4be27c1e Merge pull request 'Say which pull requests are open and drop every other candidate (issue 1279, ADR 0443)' (#7) from fix/1279-consumers-from-now into main 2026-10-19 20:22:44 +00:00
jschoubben ca667af562 Keep the head last written per pull request in a bucket of the bridge's own instead of scanning FORGE, and test the bridge under its composed permissions (issue 1279, ADR 0443)
mesh/repo-check head ca667af562b0 merged into trunk 1325c8b452c8 beside mesh-controller#400@a0c971ce — pass: its merge-check.sh passed
mesh/merge-gate head ca667af562b0 merged into trunk 1325c8b452c8 — pass: group fix/1279-consumers-from-now composed: every machine composes with the change…
mesh/delivery delivered
mesh/delivery-group group fix/1279-consumers-from-now delivered: every member is delivered
2026-10-19 22:09:41 +02:00
jschoubben 677f94e901 Say which pull requests are open and drop every other candidate, so the candidates hold only open pull requests (issue 1279, ADR 0443)
mesh/delivery-group group fix/1279-consumers-from-now rejected: a member's own check failed
mesh/merge-gate waits for its group's composed check
mesh/repo-check head 677f94e9012b merged into trunk 1325c8b452c8 beside mesh-controller#400@a0c971ce — fail: its merge-check.sh failed: --- FAIL: TestBridg…
mesh/delivery superseded: a newer head of the same pull request
2026-10-19 21:56:42 +02:00
mesh-tools 1325c8b452 Merge pull request 'The forge bridge, the indexer and the teller run beside today's mesh-delivery, and the view shows candidates and fingerprints (design 47 R3c, issues 1235-1241, 1209)' (#5) from feat/delivery-parts into main 2026-10-19 18:05:16 +00:00
jschoubben 24177aa654 Ask this pull request's check again: its check could not be asked (issue 1272) and a recheck from proposed is refused (issue 1274); no code change
mesh/repo-check head 24177aa654ab merged into trunk 7f618177d677 beside mesh-catalog#374@75957fc3 — pass: THE CHANGE ALTERS ITS OWN CHECK (merge-check.sh):…
mesh/merge-gate head 24177aa654ab merged into trunk 1325c8b452c8 — pass: group feat/delivery-parts composed: every machine composes with the change as it d…
mesh/delivery-group group feat/delivery-parts delivered: every member is delivered
2026-10-19 18:19:34 +02:00
jschoubben 8e6a31bc6a Fix the teller's integration test taking its result twice: it hung the merge check (issue 1240, review round 1)
mesh/delivery-group group feat/delivery-parts checking: 1 of 2 member(s) ready
mesh/repo-check head 8e6a31bc6ab4 merged into trunk 7f618177d677 beside mesh-catalog#374@75957fc3 — pass: THE CHANGE ALTERS ITS OWN CHECK (merge-check.sh):…
mesh/merge-gate head 8e6a31bc6ab4 merged into trunk 7f618177d677 — pass: group feat/delivery-parts composed: every machine composes with the change as it d…
2026-10-19 17:39:44 +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 9e9c2a7a57 Show the candidate groups and each module's fingerprint against its trunk build's in the delivery view (issue 1241) 2026-10-19 15:10:16 +02:00
jschoubben a9c3980a2b Add the teller module that waits for the gate's asks and writes nothing in release 3c (issue 1240) 2026-10-19 15:07:12 +02:00
jschoubben c084a311a1 Write each module's source fingerprint at a trunk merge in the indexer (issues 1239, 1209) 2026-10-19 15:03:57 +02:00
jschoubben 4e87c4e485 Keep the candidate groups from the forge bridge's pull messages in a new indexer module (issue 1238) 2026-10-19 15:00:25 +02:00
jschoubben 1fdeef91ac Say the forge's open pull requests on FORGE at start and at each reconnect (issue 1237) 2026-10-19 14:56:17 +02:00