From 495d740d5ffc8428a83b030c5f4acb8d694f051f Mon Sep 17 00:00:00 2001 From: jochen Date: Mon, 26 Oct 2026 19:17:48 +0100 Subject: [PATCH] =?UTF-8?q?Design=2047:=20a=20placed=20node's=20want=20say?= =?UTF-8?q?s=20self=20and=20names=20no=20composition;=20a=20yes=20names=20?= =?UTF-8?q?the=20composition=20allowed=20(issue=201126,=20ADR=200547=20?= =?UTF-8?q?=C2=A72,=20=C2=A73)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 03-DESIGN/01-to-be/47-delivery-from-commit-to-delivered.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/03-DESIGN/01-to-be/47-delivery-from-commit-to-delivered.md b/03-DESIGN/01-to-be/47-delivery-from-commit-to-delivered.md index 7e474066..54c1db81 100644 --- a/03-DESIGN/01-to-be/47-delivery-from-commit-to-delivered.md +++ b/03-DESIGN/01-to-be/47-delivery-from-commit-to-delivered.md @@ -749,7 +749,10 @@ backup holder backs up nothing, and the have says so. and nothing is asserted (ADR 0547 §5). - **The want names the build.** A want `want..` names the fingerprint, the artifact's digest, the source revision and whether the module holds data; the node's own want `want..node` names the node - (ADR 0547 §2). + (ADR 0547 §2). A want to a node the catalogue places says so: it carries `self` and names no composition, + since the node composes it; every other want still names the one composition it allows, so nothing written + before (the controller's bus upgrade among it) reads a want differently. A person's yes to a move the node + judged is written into the want as `yes`, the digest of the composition allowed (ADR 0547 §3). - **The apply, one module at a time.** At its first start the node agent takes the declaration it kept last as what each module runs and writes each have. Then it applies a module only when its want's fingerprint differs from what runs or the composition it composed differs from the one it runs, and only that module,