From ba9f063c7761ec85ec84c36817f5531a1131bbfa Mon Sep 17 00:00:00 2001 From: mesh-tools Date: Tue, 20 Oct 2026 23:34:42 +0000 Subject: [PATCH] Read a hand push's plan first, and assign a new module to one machine first, from the night's build-module faults --- 00-META/process/07-feature-branches.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/00-META/process/07-feature-branches.md b/00-META/process/07-feature-branches.md index 64afb569..7e90f89b 100644 --- a/00-META/process/07-feature-branches.md +++ b/00-META/process/07-feature-branches.md @@ -299,6 +299,20 @@ the merge's plan started first, the chosen Retry was refused and nobody asked it never tells the operator to answer a Retry while an Approve is open, and reads the failed plan again after the answer: a Retry refused is asked again once the other plan ends. +**A push by hand is read from its plan first.** `mesh-controller.push` sends a machine everything it is owed, not +only what the lead changed: on 2026-10-21 a push of the control node to tell the bus of two new accounts also moved +mail's module to a build its upgrade policy holds for a person's word, and recreated one of its containers. Before +every push by hand, the lead reads `mesh-controller.plan` with `diff` for that machine, and for the machine holding +the bus when a push issues accounts, and pushes only when the plan names what the lead means to change. + +**A new module's first assignment is its first real composition.** The merge gate composes every machine as it is +assigned, so a module that no machine runs yet is composed by no check: on 2026-10-21 the build modules' first +assignment found two faults no merge check could see (issue 1537, a template the controller filled for a value the +forge serves only later; issue 1542, the node-engine refusing the module's own `.ssh`). So a new module is assigned +to one machine first, its plan read before the push and its apply read after it (`mesh-controller.node`: the +answer, and `status` for a failed resource), and taken back at once when that machine cannot compose or apply, so +the machine keeps applying everything else; the other machines follow once it runs there. + ## Models | Who | Model | Why |