Commit Graph

  • 9859923664 Delete the dead table paths, the move, the store's assignments mirror and its tick (issue 1110) jschoubben 2026-10-18 05:30:19 +02:00
  • fdab58ae4f Read what a node was sent from its assignment keys; a pulled-in module keeps a standing key; a hand send is a time (issue 1109) jschoubben 2026-10-18 05:22:28 +02:00
  • 3b989d8bb3 Callers of the pending assignments on the bucket: a replaced wait keeps its condition; one read of the key through assign (issue 1108) jschoubben 2026-10-18 05:19:32 +02:00
  • 88ea361bf6 Fold a pending assignment into the value of its assignment key (issue 1094) jschoubben 2026-10-18 05:17:30 +02:00
  • 0149a3d7de Fix the six tests the merge gate refused: assignments beside pulled-in modules, migration tests on the tables, the event compared as JSON, the restarted move settled to the table (issues 1090, 1092, 1093, 1095) feat/chain-on-the-bus jschoubben 2026-10-18 03:48:35 +02:00
  • b56c1d00a3 The store's mirror of the assignments may not write while they are switching or moved, asked before every write (issue 1093) jschoubben 2026-10-18 03:38:25 +02:00
  • e16cb4207b Review round 1 of milestone 5: the move settles changed rows under the lock; reports counted by kind; route-proxy at the new SDK; the plan pass never revives an ended assignment; the store's mirror is refused once moved (issues 1090, 1092, 1093) jschoubben 2026-10-18 03:36:05 +02:00
  • a47c63799e Try the move once before serving and again while serving; read each commit's build once when moving assignments (issue 1095) jschoubben 2026-10-18 03:23:49 +02:00
  • 703badcf5a Name the commit, build and rollout on the assignment and the assignments on the rollout (issue 1095) jschoubben 2026-10-18 03:22:57 +02:00
  • cb00bbbfcf End an unassigned key with ended and remove no key of the chain (issue 1093) jschoubben 2026-10-18 03:17:47 +02:00
  • 0e4feb0d3a Keep assignments in the assignments bucket and move the rows there at start (issue 1093) jschoubben 2026-10-18 03:15:44 +02:00
  • 275ddd76e8 Keep rollouts and the merges they answer in the rollouts bucket (issue 1092) jschoubben 2026-10-18 03:06:50 +02:00
  • e0fb241263 Keep a build request as the build in state asked (issue 1091) jschoubben 2026-10-18 02:53:39 +02:00
  • f89d870308 Keep builds in the builds bucket and move the build rows there at start (issue 1090) jschoubben 2026-10-18 02:49:51 +02:00
  • 36c4ce605e Say where the assignments bucket is declared why it keeps its marker age (issue 1089) jschoubben 2026-10-18 02:40:10 +02:00
  • fc55785956 Add the chain package and its buckets: builds, rollouts and assignments with history 64 (issue 1089) jschoubben 2026-10-18 02:39:11 +02:00
  • 54070f5bc3 Merge pull request 'A plan cut from a batch takes its backups before asking its first tier (issue 1086)' (#377) from fix/1086-backup-before-send-silent into main mesh-tools 2026-10-18 00:15:19 +00:00
  • b6f8aef4d4 Keep a no-holder machine as ADR 0404 says; prove the cut takes the backups before its first tier (issue 1086, review round 1) jschoubben 2026-10-18 01:57:00 +02:00
  • 7103e33294 A plan's cut takes the backups before asking its first tier, and a machine it cannot ask holds it (issue 1086) jschoubben 2026-10-18 01:54:10 +02:00
  • 47f9290b37 Merge pull request 'A delivery plan backs up the data it moves before its first tier; a failed backup holds it and is said (issues 1065, 1066)' (#376) from feat/backup-before-send-controller into main mesh-tools 2026-10-17 22:20:19 +00:00
  • 0bb54e2c1f Open the controller half alone: #375's delivery was stopped to split its group (issue 980) jschoubben 2026-10-18 00:12:34 +02:00
  • 91a7c1eaff Keep a plan's backups in the store: a migration and the plan's read and write (issues 1065, 1066) jschoubben 2026-10-17 23:25:57 +02:00
  • 08e000bb56 Read the backup holders of every machine, and the notes fixture's data at a resource (issues 1065, 1066) jschoubben 2026-10-17 23:04:52 +02:00
  • a39d6ce78d Fail a backup whose holder cannot be asked at the bound, not retry forever (issue 1066) jschoubben 2026-10-17 22:53:59 +02:00
  • c531c78eb5 Hold a plan whose backup failed or stayed silent, say it, and ask again by a verb (issue 1066) jschoubben 2026-10-17 22:48:28 +02:00
  • 9a20547dbd Ask the backup seats before the first tier (issue 1065) jschoubben 2026-10-17 22:45:09 +02:00
  • 7c9c187ca6 Merge pull request 'A group is one batch and one delivery plan, ordered by the module graph and gated by its composed check; unit and integration tests split (issues 977, 895)' (#374) from feat/one-group-one-plan into main mesh-tools 2026-10-17 20:11:00 +00:00
  • 2d24fbb716 Drop the two deleted release-branch tests from the store tests list (issue 977) jschoubben 2026-10-17 21:49:58 +02:00
  • 9cdc7d6276 Bound the unit level at 5 s, twice the measure, while issue 1055 brings it to 1 s (issue 895) jschoubben 2026-10-17 21:40:42 +02:00
  • 1a309a3783 Merge remote-tracking branch 'origin/main' into feat/one-group-one-plan jschoubben 2026-10-17 21:39:24 +02:00
  • b77a298a7e Merge pull request 'merge-check.sh runs the integration level with the integration tag and times each level, before any test carries the tag (issue 895)' (#373) from fix/895-script-first into main mesh-tools 2026-10-17 19:39:02 +00:00
  • 64415f8984 Merge branch 'feat/one-group-one-plan' into g/977 jschoubben 2026-10-17 21:37:37 +02:00
  • 07b050790e Review of issue 977: keep the plan's own order for its gates, hold a group only for a composed mesh-delivery, keep mark-ready one release, compare with the batch's start, fail a lone cycle (issue 977) jschoubben 2026-10-17 21:37:37 +02:00
  • 8db72edd3c merge-check.sh runs and vets the integration level with the integration tag and times each level; the unit bound is not enforced yet (issue 895) jschoubben 2026-10-17 21:32:53 +02:00
  • 66dc501fc4 Split the unit level from the integration level in cmd, builder, link, catalogue, inventory; cheap fixtures for the archive-entry bound, the registry waits and the catalogue copy (issue 895) jschoubben 2026-10-17 21:32:23 +02:00
  • aac4bae5a4 A group member's own check runs its repository's check alone, a cycle fails the composed check, and mark-ready leaves the delivery seat (issue 977, part D, ADR 0403) jschoubben 2026-10-17 21:22:55 +02:00
  • 8b3a9163d0 Hold a group's batch open for its last member and keep both kinds of member in one batch and one plan (issue 977, part C, ADR 0418) jschoubben 2026-10-17 21:06:33 +02:00
  • e43d52c1ea Draw a plan's order per module from the graph and the manifests' change, and read no after: line (issue 977, part B, ADR 0419) jschoubben 2026-10-17 20:57:30 +02:00
  • 0d83c6ffc9 Merge branch 'feat/one-group-one-plan' into g/977 jschoubben 2026-10-17 20:43:10 +02:00
  • b752b1f1df Remove the release-branch judge from the controller, the wire and the build seat (issue 977, part A, ADR 0401) jschoubben 2026-10-17 20:43:06 +02:00
  • d209de58b7 Merge branch 'feat/one-group-one-plan' into t/895 jschoubben 2026-10-17 20:41:57 +02:00
  • 14fe2ad736 Split the unit level from the integration level outside cmd, builder, link, catalogue, inventory; merge-check.sh times and bounds the unit level (issue 895) jschoubben 2026-10-17 20:41:57 +02:00
  • d977f64ec9 Read an empty source ref as the trunk and say a merge into another branch starts no delivery (issue 977, part A, issue 889) jschoubben 2026-10-17 20:37:58 +02:00
  • d5d5449835 Merge pull request 'build-agent and route-proxy live whole in mesh-controller (issue 1019, ADR 0420)' (#370) from feat/whole-modules into main mesh-tools 2026-10-17 17:31:58 +00:00
  • 874a91a3c6 Ask the checks again on today's main (issue 1019) jschoubben 2026-10-17 19:21:21 +02:00
  • 4669a8d1ab Merge pull request 'Judge machines with the node-engine that knows unknown and knows (issue 1024)' (#372) from feat/owned-paths-controller into main mesh-tools 2026-10-17 17:10:03 +00:00
  • 34197afa01 Judge machines with the node-engine that knows unknown and knows (issue 1024, ADR 0422) mesh-tools 2026-10-17 16:43:49 +00:00
  • 0125ccd7d2 A member's own merge gate sees a move through the core clones beside it (issue 1043) jschoubben 2026-10-17 18:40:34 +02:00
  • fe5472bab4 Tests read build-agent and route-proxy from this repository when they live here (issue 1019) jschoubben 2026-10-17 18:37:33 +02:00
  • 48f5a7d3a9 module check refuses an artifact context naming another repository (issue 1019) jschoubben 2026-10-17 18:18:22 +02:00
  • 4864a43413 The merge gate refuses an artifact context naming another repository (issue 1019) jschoubben 2026-10-17 18:17:10 +02:00
  • cd88dbd336 One route-proxy Dockerfile: the module's, which the Makefile builds (issue 1019) jschoubben 2026-10-17 18:15:52 +02:00
  • 65d570f114 Vendor route-proxy's SDK so its provider builds offline (issue 1019) jschoubben 2026-10-17 18:15:43 +02:00
  • 1586bd1134 Bring build-agent and route-proxy in whole (issue 1019) jschoubben 2026-10-17 18:15:33 +02:00
  • c43772fd94 Merge pull request 'The controller accepts a reviewed move of a module between repositories on the operator's Approve (issue 1025, ADR 0420)' (#369) from feat/move-a-module into main mesh-tools 2026-10-17 15:39:57 +00:00
  • 7ee2b42230 issue 1025: the nested-module check is a file of its own, and the gate test keeps the app module in its repository jschoubben 2026-10-17 17:27:46 +02:00
  • e42becb479 issue 1025: the bus test makes the controller's consumers before it publishes mesh-delivery's word jschoubben 2026-10-17 17:18:56 +02:00
  • 43b59c5dff issue 1025: the merge check vets and tests every nested Go module (ADR 0420 §5) jschoubben 2026-10-17 15:58:46 +02:00
  • 81715273d3 issue 1025: the operator's Approve of a reviewed group registers a moved module from its new repository (ADR 0420 §7) jschoubben 2026-10-17 15:56:49 +02:00
  • 085b661936 issue 1025: the merge gate judges a group's move of a module as a move (ADR 0420 §6) jschoubben 2026-10-17 15:43:28 +02:00
  • 21414307c8 issue 1025: a context naming the module's own repository is its own build source (ADR 0420 §4) jschoubben 2026-10-17 15:41:35 +02:00
  • b8c810a349 Merge pull request 'Rollouts advance on events, and builds and checks wait on three work queues (issue 974, design 47 milestone 2)' (#368) from feat/events-and-queues into main mesh-tools 2026-10-17 12:52:34 +00:00
  • 0f21fe7888 issue 974: review 2: a check stopped by its key says no verdict, an error judges nothing, and an unacknowledged check goes to a second builder jschoubben 2026-10-17 14:12:50 +02:00
  • bd257afbd5 issue 974: the builders say the checks they run in a bucket that ages, and a builder drops a waiting request for a head and trunk commit another is running jschoubben 2026-10-17 14:10:26 +02:00
  • 357e08a4f6 issue 974: a broker test shows the build agent's reads reach its module principal as a read and watch of the pull requests' keys jschoubben 2026-10-17 14:04:27 +02:00
  • a83b921af0 issue 974: acceptance 5: two merges within a minute leave each open pull request one queued check jschoubben 2026-10-17 14:03:26 +02:00
  • 3d09d5235f issue 974: the checks are queued by pull request on two work-queue streams, taken after a delivery build, dropped when judged, stopped when their key moves; the reordering and the forge-asking end are gone jschoubben 2026-10-17 14:01:33 +02:00
  • f883830975 issue 974: two work-queue streams for the checks of pull requests (CHECKS_READY, CHECKS_OTHER), their workers, grants and writer jschoubben 2026-10-17 13:53:22 +02:00
  • 96325c295c issue 974: the serving controller follows its own plan-moved, so a plan moved from the terminal is looked at jschoubben 2026-10-17 13:47:47 +02:00
  • 9ca2c2bfb3 issue 974: review 1: a verb's end, a provisioner client's word and a failed key read each ask or retry a look; the silent bucket ages; the acceptance test starts the rollout through the serving wiring jschoubben 2026-10-17 13:45:41 +02:00
  • 20c8d9454a issue 974: the step's acceptance test: a rollout advances on events with no ticker, a silent machine is named when its key expires, a replaced controller resumes jschoubben 2026-10-17 13:33:49 +02:00
  • 3d192a4857 issue 974: every plan is written through the one hook that says plan-moved, proven by reading the sources and by the moves a merge and a cut make jschoubben 2026-10-17 13:30:27 +02:00
  • 8af77c2c75 issue 974: a rollout advances on events (a look asked by each plan saved, report and expired silent key), the 30 s ticker goes, and each tier send is said as sent jschoubben 2026-10-17 13:28:34 +02:00
  • fd522f4322 issue 974: a rollout's wait for a machine is a key on the bus that its report deletes and its expiry names silent jschoubben 2026-10-17 13:18:27 +02:00
  • 7d80155d16 Merge pull request 'No merge is dropped, and the merge window lives on the bus (issues 973 step 2, 921)' (#367) from feat/merge-window-on-the-bus into main mesh-tools 2026-10-17 10:54:04 +00:00
  • bafc31bf85 The ssh-client test offers every key ssh-client's files ask of forge-account, read from them (issue 985) jschoubben 2026-10-17 12:43:21 +02:00
  • fbf5a3f909 The held-merges integration test waits for the batch's window to close, as a joined batch's window opens again (issue 921) jschoubben 2026-10-17 12:42:30 +02:00
  • 20e14872ef Make the merges consumer before the events consumer narrows, from the old one's ack floor, so no merge is lost to the change (issue 973) jschoubben 2026-10-17 12:33:18 +02:00
  • 5702187695 Leave a merge unsettled whenever the controller's context ended, whatever the error (issue 921) jschoubben 2026-10-17 12:30:49 +02:00
  • a79182e53b Give the forge's merges a durable consumer of their own: no max-deliver, no reset, a growing delay while held (issue 973) jschoubben 2026-10-17 12:28:27 +02:00
  • ff16938096 Leave a held merge unsettled when the controller ends or the hold fails, never take it (issue 921) jschoubben 2026-10-17 12:20:40 +02:00
  • e3f22c737f Round a merge window key's time to live up to a whole second, as the server rounds down (issue 973) jschoubben 2026-10-17 12:20:24 +02:00
  • 2b99d455fc Integration test of the merge path on a test bus: a held merge is recorded and carried, a window closes by its key's expiry (issues 921, 973) jschoubben 2026-10-17 12:14:43 +02:00
  • 9e99f31c23 Remove the five-minute merge catch-up, its signal S5 and its watchdog: the event and its durable consumer keep every merge (issue 973) jschoubben 2026-10-17 12:12:19 +02:00
  • df39a499ef Close a batch's merge window by the expiry of a key on the bus, heard by a watcher, and drop the five-second cutter (issue 973) jschoubben 2026-10-17 12:10:30 +02:00
  • 11725908ec The merge window's bucket: keys that expire, written by the controller (issue 973) jschoubben 2026-10-17 12:07:57 +02:00
  • 379a52c2e8 Hold a merge the controller cannot record now, and hand it over again, instead of taking it (issue 921) jschoubben 2026-10-17 12:03:00 +02:00
  • b0d489a86c Merge pull request 'A batch that shares nothing with a running rollout starts beside it (issue 973, step 1)' (#366) from feat/merge-window-on-the-bus into main mesh-tools 2026-10-16 23:11:17 +00:00
  • 6355176fda The ssh-client test offers the forge from another node, as the catalogue's ssh-client now requires forge-account (issue 985) jschoubben 2026-10-17 01:00:40 +02:00
  • 300d3c1bf4 Cut a closed batch beside the open walks it shares nothing with, queue a related one with the reason, fold only related waiting walks (issue 973) jschoubben 2026-10-17 00:49:53 +02:00
  • baf1501d81 A walk, a retry and a let-go wait only for a started walk they are related to (issue 973) jschoubben 2026-10-17 00:46:27 +02:00
  • a5ba47e23c Name the open walk a change is related to, own path related to all (issue 973) jschoubben 2026-10-17 00:45:00 +02:00
  • 6a62a7e552 Merge pull request 'The merge gate composes each machine with its engine's contract, so moved modules are handed there as on the mesh (issue 969)' (#365) from fix/969-gate-composes-handing into main mesh-tools 2026-10-16 21:53:07 +00:00
  • 5890eb104d List the gate's store test so it cannot skip unseen (issue 969) fix-969 2026-10-16 23:18:14 +02:00
  • 262b39ae09 Test the gate's handing end to end: snapshot, store, and the composition either side (issue 969) fix-969 2026-10-16 23:16:38 +02:00
  • 2f2a8bb57e Compose each machine in the merge gate with its engine's contract, so moved modules are handed there as on the mesh (issue 969) fix-969 2026-10-16 23:12:16 +02:00
  • 1cdf12df00 Merge pull request 'Test the refusal of a jail whose pattern names the host twice' (#364) from fix/959-jail-pattern-test into main mesh-tools 2026-10-16 20:19:49 +00:00
  • f614eeb445 Test the refusal of a jail whose pattern names the host twice jschoubben 2026-10-16 22:04:36 +02:00
  • 53a3c91f53 Merge pull request 'Feature providers-after-switch-on, step 1: plans keep their route names and name the credential tool (issues 923, 928)' (#363) from feat/providers-after-switch-on into main mesh-tools 2026-10-16 19:12:52 +00:00
  • df5f01bfa1 Name the credential tool of a software-issued offer in the plan (issue 928) fix-ctl-pas 2026-10-16 19:35:56 +02:00