Commit Graph

  • 7f33c8b499 ENG-3, ENG-4: the node-engine keeps no seat table of its own (mesh-contracts' list through mesh-sdk), answers ${seat:...:reach} for both names of the store, and reads both reference forms in composition, image seat and bootstrap (ADR 0605 §9, design 26, issue 1966) jschoubben 2026-11-04 12:11:34 +01:00
  • 18c1735f7c ENG-5: the bootstrap makes a one-off push credential for the holders' first images, writes it for the store's holder and forgets it when its run ends (design 51, issue 1966) jschoubben 2026-11-04 12:07:34 +01:00
  • 2a71a8ff76 ENG-8, ENG-9, ENG-11: a failed pull from a store is tried again once per settled of the store's holder, heard on every node, and the failed have says whom it waits on and what triggered the last retry (design 51, issue 1966; needs mesh-sdk request R1, R2) jschoubben 2026-11-04 11:49:44 +01:00
  • e73aae3686 Merge pull request 'Node-engine: act on a backup answer whatever runs, say why a module stays held, and show the want and the hold in the composition verb (issue 1585)' (#208) from fix/1585-held-answer into main mesh-tools 2026-11-04 10:47:20 +00:00
  • 3eef84d979 ENG-10: the composition writes beside each routed image the seat it came through and that seat's holder, no part of a container's spec (design 51, issue 1966; needs mesh-sdk request R1) jschoubben 2026-11-04 11:46:33 +01:00
  • 60358d01e9 ENG-note: notHandedWhy's impossible branch says it is a fault in the node-engine's composition (review of issue 1966) jschoubben 2026-11-04 11:43:46 +01:00
  • 05418b4fe5 ENG-7: every new image of a module of two containers or more is pulled before any of its containers is set aside, and a pull that fails replaces nothing (design 51, issue 1966) jschoubben 2026-11-04 11:43:17 +01:00
  • 2779f5312b ENG-2: the node's record says the capabilities its tool runner states of its calls, asked of the runner's PING at each report (issue 1966) jschoubben 2026-11-04 11:41:11 +01:00
  • e2380404a1 Act on a backup answer whatever runs, say why a module stays held, and let the engine's read tool show its want and its hold (issue 1585) jschoubben 2026-11-04 11:36:14 +01:00
  • 998d8f7370 Merge pull request 'Node-engine: a stop never cuts a save off, an archive's unpack is recorded at once, and an answer the want carries is acted on at start (issue 1585)' (#207) from fix/archive-record-at-unpack into main mesh-tools 2026-11-04 10:04:25 +00:00
  • 5dc3a8e17f Keep what an archive unpacked in the engine's own state directory, never beside the archive, and stop no slower than the host waits (issue 1585, review round 1) jschoubben 2026-11-04 10:52:42 +01:00
  • 768f637bd0 Act at the engine's start on a backup answer the want already carries, so an answer written before a restart is never swallowed (issue 1585) jschoubben 2026-11-04 10:36:48 +01:00
  • ee0f46b78f Stop between applies and save the node's state as one writer, so a stop never cuts a save off and loses its records (issue 1585) jschoubben 2026-11-04 10:36:48 +01:00
  • 84a14b08d5 Write down what an archive unpacked as soon as it is unpacked, so a lost record never makes the host's own files foreign (issue 1585) jschoubben 2026-11-04 09:52:33 +01:00
  • fabfdf04f7 Merge pull request 'Node-engine: hand a moved module by its manifest, its build and the machine, never by the vault's reading of its plan (issue 1966)' (#206) from fix/handed-one-rule into main mesh-tools 2026-11-04 09:16:13 +00:00
  • 966093d8d0 Hand a moved module by its manifest, its build and the machine, never by the vault's reading of its plan, so a node with no plan yet makes the plan that hands it (issue 1966) jschoubben 2026-11-04 02:26:27 +01:00
  • 4d47ff5ce7 Merge pull request 'Node-engine: a node names its provisioner account even when no module's files are filled this pass (issue 774)' (#205) from fix/node-account-always into main mesh-tools 2026-11-04 08:39:53 +00:00
  • 8e32583089 A node names its provisioner client's account whenever a client runs there, filled files or not (issue 774) jschoubben 2026-11-04 02:17:01 +01:00
  • 6019c6d514 Merge pull request 'Node-engine: a held provisioner client keeps its account; a module waiting for a yes has its new build read (issues 774, 1585)' (#204) from fix/frombus-inown-build into main mesh-tools 2026-11-04 01:05:49 +00:00
  • 054754482c The running provisioner account is kept only for a client held this pass, and rows hold the guard (issue 774, review) jschoubben 2026-11-04 01:53:29 +01:00
  • f7129fdb41 node-engine.composition shows the node's own fields and what the last pass held (issue 774) jschoubben 2026-11-04 01:50:21 +01:00
  • f7abd05981 A node composition that drops the provisioner client's account what runs names is said (issue 774) jschoubben 2026-11-04 01:48:12 +01:00
  • 514cf23aef The provisioner client's account stays named while the client is held: a held client keeps the node's handing (issue 774) jschoubben 2026-11-04 01:47:19 +01:00
  • 95b509e0d2 A module in InOwn wanted at a build of the new form has its build taken in: the reader and the composition fold by one rule (issue 1585) jschoubben 2026-11-04 01:31:27 +01:00
  • 83e135f101 Merge pull request 'L3 final: the node-engine reads core-credentials and tool-runner with no fallback, and states its manifest reads (ADR 0601 §4, ADR 0614 §4, issue 774)' (#203) from feat/l3-final into main mesh-tools 2026-11-04 00:23:56 +00:00
  • 30b86ea602 An input carries the modules it holds as their stubs across the bus, and the sandbox names why the node-engine holds one (issue 774, group check 278aa5f0ccbe) jschoubben 2026-11-04 00:45:35 +01:00
  • 32a99144f6 The node record states the reader capabilities of the mesh-sdk the engine is built with (ADR 0614 §4, issue 774) jschoubben 2026-11-03 23:29:17 +01:00
  • 3544d644ba Pin mesh-sdk 85ba0a9a70d8, the head of feat/l3-final: the contract states the reader capabilities a node-engine reads and the node record carries them (ADR 0614 §4, issue 774) jschoubben 2026-11-03 23:27:52 +01:00
  • a0ce37fb2c Pin mesh-sdk b7abe203a929, the group's head of feat/l3b-bus: it keeps, deprecated, the exported names the running parts still use jschoubben 2026-11-03 18:50:12 +01:00
  • a24a1d72ad Pin mesh-sdk cf5812101b0b, the group's final head: the module graph is no part of mesh-sdk (ADR 0603, ADR 0604, issue 1367) feat/l3b-bus jschoubben 2026-11-03 17:02:14 +01:00
  • 02c7f8e052 Pin mesh-sdk 65b7adc8bdd9; the seat table here takes the SDK's mesh-catalog entry with its four verbs (ADR 0604 section 1) jschoubben 2026-11-03 16:24:55 +01:00
  • 53b0e8d318 Genesis installs no catalog module: the catalogue step and the take of mesh-catalog go (ADR 0604 section 7, issue 774) jschoubben 2026-11-03 16:17:27 +01:00
  • c777fbae8f Pin mesh-sdk e7ce86ff62b5, the group's head of feat/l3b-bus (review round 2) jschoubben 2026-11-03 14:12:50 +01:00
  • 98719a1bd5 Pin mesh-sdk 825483043549, the group's head of feat/l3b-bus (review round 1) jschoubben 2026-11-03 14:05:07 +01:00
  • 72bcf20870 The bus module's integration test publishes the backup's end at once: the node agent hears it before it asks, so no sleep (review round 1, finding 5) jschoubben 2026-11-03 14:02:01 +01:00
  • b47668421f The witness judges the tool runner's process by its id, <its module>.runtime, which the composition gives only the module whose manifest says it is the tool runner, never by a name (ADR 0601 §4; review round 1, finding 4) jschoubben 2026-11-03 14:02:01 +01:00
  • 2239fb253d Rows for the composer's composition of today: the same inputs give the running digest, a changed input another, a build it cannot compose none (ADR 0601 §1; review round 1, finding 2) jschoubben 2026-11-03 14:02:01 +01:00
  • 7da4deb3f1 What a node keeps of a module as it runs, for a manifest that does not yet say it, is carried on the module's have by module, so the watchman raises its condition (ADR 0601 §4; review round 1, finding 3) jschoubben 2026-11-03 14:02:01 +01:00
  • b461b005e9 Pin mesh-sdk 09ec82cb3551, the group's head of feat/l3b-bus (ADR 0601) jschoubben 2026-11-03 13:46:47 +01:00
  • 75e3a26336 The integration test of the bus module's first want shows its node backing it up through the backup seat before that apply and before the one that replaces the server, as every module that keeps data (ADR 0601 §2) jschoubben 2026-11-03 13:37:42 +01:00
  • 5b455cecfe A have waiting for a yes says whether the move changes the build alone: the composer composes the build the module runs with today's settings and secrets and the agent compares it with what runs, so a release's Approve answers it and a changed setting is still asked (ADR 0601 §1) jschoubben 2026-11-03 13:35:12 +01:00
  • faa2005538 A node agent that meets a manifest which does not yet say it is the tool runner, or that its own secrets are the core's credentials, keeps what runs of it, its tool runner process and its sealed secrets alike, known by what runs and said; never composed without it (ADR 0601 §4) jschoubben 2026-11-03 13:31:44 +01:00
  • 6ea23b6731 The sandbox's composer marks a node it does not judge in the contract's field (Machine.NotJudged), neither composed nor refused, never by a prefix of its reason (ADR 0593 §9; the prepare's seams finding on "not judged") jschoubben 2026-11-03 13:29:21 +01:00
  • db7cd273f0 The node-engine finds the tool runner by what its manifest says (tool-runner), never by its name, pinned at mesh-sdk a973bfa (issue 774, the operator 2026-11-03) jschoubben 2026-11-03 11:55:26 +01:00
  • 12c80d7c2e The node-engine carries a module's own secrets sealed by the vault when its manifest says they are the core's credentials, pinned at mesh-sdk 4f141ff (issue 774, the operator 2026-11-03) jschoubben 2026-11-03 11:38:03 +01:00
  • 649ed21d55 The sandbox refuses no module the node holds composing without the change, a module blamed for a refusal among them (issue 774, review round 1) jschoubben 2026-11-03 11:29:26 +01:00
  • 23cbf9294a The node agent's applies run through a runner its options name, so one integration test proves the bus module's first want takes the bus server over from the node's own composition without moving it, and a build that changes it replaces it once (ADR 0599 §4, §6) jschoubben 2026-11-03 11:07:16 +01:00
  • 03b7fcd7bb The sandbox fails a node whose change refuses a module the node-engine did not hold, in that module's words, instead of passing it with the rest composed (issue 774, review of the sandbox input) jschoubben 2026-11-03 10:59:55 +01:00
  • 7b8f5e7805 The sandbox composes a node as its node-engine does, from an input that says how, and names a node it cannot judge from an older engine's input (issue 774, ADR 0593 §9) jschoubben 2026-11-03 09:38:21 +01:00
  • 2c5f818d15 Review round 1 of the bus want: a removal keeps the bus server, the have says a server made anew runs the want's fingerprint, the old build is read before the first write, and an unanswered inspect fails the apply rather than replacing the server (ADR 0594 §2, §4) feat/774-bus-want jschoubben 2026-11-03 09:18:31 +01:00
  • a096abac92 The node agent's applies run through a runner its options name, and one integration test proves an unwarranted bus want keeps the server and a warranted one replaces it (ADR 0594 §2-§4, §8) jschoubben 2026-11-03 09:06:19 +01:00
  • 052004d1cf The node's own key says its agent keeps the bus server, so the assigner writes the bus want only to such a node (ADR 0594 §8) jschoubben 2026-11-03 09:03:30 +01:00
  • 9fd5429853 The node agent keeps the bus server unless the want carries the warrant's mark, and the bus's have says what the server runs (ADR 0594 §2-§4, §6) jschoubben 2026-11-03 09:03:24 +01:00
  • ffcd8f6d61 An apply leaves the resources its scope keeps as they run, so the bus server is not replaced by an unwarranted want (ADR 0594 §2) jschoubben 2026-11-03 08:56:36 +01:00
  • 089ac78007 Pin mesh-sdk at the bus-want group's head 959b157, so the node agent reads the warrant, the server's fingerprint and the server's list (issue 774) jschoubben 2026-11-03 08:56:36 +01:00
  • 798d73eb11 Merge pull request 'compose-candidate reads each manifest once and answers within its bound, from each ask's arrival' (#200) from fix/1126-compose-wait into main mesh-tools 2026-11-03 01:02:32 +00:00
  • df13a83a91 The sandbox composes a node from the input its engine took in, through one shape jschoubben 2026-11-03 01:55:08 +01:00
  • 61a3bd996d The sandbox composer carries the module the mesh provides itself jschoubben 2026-11-03 01:44:15 +01:00
  • b8158affa7 compose-candidate is answered off its subscription, so its bound counts from the ask jschoubben 2026-11-03 01:28:45 +01:00
  • ebb4f4af18 compose-candidate reads each manifest once and answers within the bus's reply window jschoubben 2026-11-03 01:23:17 +01:00
  • 27a956448c Merge pull request 'compose-candidate reads the candidate by its group, as the indexer stores it' (#199) from fix/compose-candidate-key into main mesh-tools 2026-11-02 23:14:57 +00:00
  • 0bbdae1d9d compose-candidate reads the indexer's candidate by its group key, not the check's key jschoubben 2026-11-03 00:05:04 +01:00
  • 4c7056de42 Merge pull request 'sdk1: the node-engine alone composes and answers compose-candidate (ADR 0593)' (#198) from feat/sdk1 into main mesh-tools 2026-11-02 20:42:47 +00:00
  • ae4b86e333 route-proxy's proof skips aloud when mesh-networking is not beside, since the running checker places none for the node-engine until this release is delivered jschoubben 2026-11-02 20:39:56 +01:00
  • 8f1e5f2547 Stop judging the controller's manifest at genesis's step 9: the controller's repository is emptied jschoubben 2026-11-02 20:23:02 +01:00
  • 60518f532d Pin mesh-sdk at f02f142, the sdk1 head whose tests no longer leak package globals, so the group's check builds against it jschoubben 2026-11-02 20:14:16 +01:00
  • cdd17eaae8 Pin mesh-sdk at the sdk1 group's head 1c7356c, so the group's check builds every module against the narrowed SDK it was written for jschoubben 2026-11-02 19:29:53 +01:00
  • 3293f6ddcd Take the environment's rendering integration tests with the code they test jschoubben 2026-11-02 19:21:10 +01:00
  • 1ada760a64 Hold the proofs that a manifest composes, which left the judge's and route-proxy's tests jschoubben 2026-11-02 19:19:49 +01:00
  • d68e241724 Take the catalogue's composition rules into the node-engine jschoubben 2026-11-02 19:15:55 +01:00
  • be0226b624 Stop verifying composition signatures: the node applies only its own jschoubben 2026-11-02 19:01:12 +01:00
  • acb720d2bf Merge five moved overlay tests into two, offsetting the tests this release adds jschoubben 2026-11-02 18:39:51 +01:00
  • f6bda12a32 The node whole publishes its compositions and answers a candidate (H6) jschoubben 2026-11-02 18:39:12 +01:00
  • 4b8b5c7329 The composition verb reads the revisions the engine publishes (H5) jschoubben 2026-11-02 18:35:00 +01:00
  • 3fa41dfe1a Serve node-engine.compose-candidate from the node's shadow (H4) jschoubben 2026-11-02 18:33:58 +01:00
  • 4f51393b72 Publish every composition the node makes in composed-<node> (H3) jschoubben 2026-11-02 18:29:20 +01:00
  • 9a12f2851f The node-engine owns the composition it alone runs (H1, H2) jschoubben 2026-11-02 18:24:05 +01:00
  • 98fbc490a4 Merge pull request 'The node-engine without the controller's stream and lease (issue 1126 group B)' (#197) from feat/1126-removal into main mesh-tools 2026-11-02 13:41:28 +00:00
  • 049c3b8c11 Pin mesh-sdk to the group head of issue 1126 jschoubben 2026-11-02 12:27:34 +01:00
  • 813f3cae87 Pin mesh-sdk to the group head of issue 1126 jschoubben 2026-11-02 12:20:14 +01:00
  • 77c1b50019 Pin mesh-sdk to the group head of issue 1126 jschoubben 2026-11-02 11:56:55 +01:00
  • 6bcc4eab24 Say in the comments that the enrolment seat and the packages key stand alone now jschoubben 2026-11-02 11:37:11 +01:00
  • 692b0f0160 Prove a rolled-back build is not placed again on the node tools, the one process judged by default jschoubben 2026-11-02 11:35:33 +01:00
  • 897a5efe7c Name no controller signer or composer the SDK no longer holds jschoubben 2026-11-02 11:34:53 +01:00
  • 98f4ff6163 Read the bus's user-list file's place from what the node runs, not from the controller's compositions jschoubben 2026-11-02 11:34:15 +01:00
  • ec4fe14457 Remove what only served the controller's compositions: the own-secret resync, the shadow's wants watch and the vault key's follower jschoubben 2026-11-02 11:29:47 +01:00
  • 75eb2bb534 Say in the usage that overlay take is refused jschoubben 2026-11-02 11:28:36 +01:00
  • 18521ba7af Remove the mesh-cli forward to the controller jschoubben 2026-11-02 11:28:35 +01:00
  • a9a0f7b4e0 Say the node's facts in its haves alone, and enrol through the seat alone jschoubben 2026-11-02 11:27:25 +01:00
  • f5ccbb2700 Open every link with no signer instead of following the controller's key jschoubben 2026-11-02 11:24:01 +01:00
  • 0d1bbe967d Answer the node seat's packages from the engine's own key alone jschoubben 2026-11-02 11:22:54 +01:00
  • ff4dc71ce4 Witness the node tools alone: the controller's lease names no build any more jschoubben 2026-11-02 11:22:21 +01:00
  • 84737f4cb2 Merge pull request 'The node-engine trusts the vault alone, loads the grants part's user list alone and applies only its own compositions (issue 1126)' (#196) from fix/1126-gates-host into main mesh-tools 2026-11-02 09:51:15 +00:00
  • 38d666f223 Apply only the node's own compositions, never the controller's jschoubben 2026-11-02 10:40:50 +01:00
  • 5cfc4ff4a7 Trust the vault's key alone and write the grants part's user list alone jschoubben 2026-11-02 10:37:27 +01:00
  • 14a12cc7b6 Merge pull request 'The engine dials as the login node-logins names, rotates it after a test-dial, and enrols through the enrolment seat (issue 774)' (#195) from feat/l3-enrol into main mesh-tools 2026-11-02 07:56:45 +00:00
  • 44db32c31b Pin mesh-sdk at dff0ce2, the enrolment group's rebased head, so every member builds the same contract (issue 774) jschoubben 2026-11-02 01:49:39 +01:00
  • 12168ba4da The engine carries its login fall back in its health report, and says the enrolment fallback is the pre-lease path jschoubben 2026-11-02 01:03:04 +01:00
  • 72aca552e1 The engine's rotation against a real bus whose user list is reloaded step by step jschoubben 2026-11-02 00:45:29 +01:00
  • 9ae30a7bbb mesh-host enrol redeems through the seat mesh-enrolment and refuses an answer the token's key did not sign jschoubben 2026-11-02 00:44:21 +01:00