ADR 0100 accepted; the node host, connectivity, the node lifecycle and raising a mesh amended for a node adopted before it is converged
This commit is contained in:
@@ -2,8 +2,9 @@
|
||||
layer: to-be
|
||||
status: in-progress
|
||||
code: [mesh-host]
|
||||
updated: 2026-09-21
|
||||
updated: 2026-09-22
|
||||
decisions:
|
||||
- 02-DECISIONS/0100-a-node-in-use-is-adopted-before-it-is-converged.md
|
||||
- 02-DECISIONS/0019-how-this-repository-works.md
|
||||
- 02-DECISIONS/0004-a-node-and-how-it-joins.md
|
||||
- 02-DECISIONS/0005-the-node-host.md
|
||||
@@ -130,6 +131,19 @@ the link; never asked downward.
|
||||
[`09-the-node-lifecycle.md`](09-the-node-lifecycle.md)**, in full and in one place. This document
|
||||
is the component; that one is what happens to it.
|
||||
|
||||
## What it finds, on an adopted node
|
||||
|
||||
*2026-09-22, [ADR 0100](../../02-DECISIONS/0100-a-node-in-use-is-adopted-before-it-is-converged.md).* A declaration says whether the node is adopted. On an adopted node
|
||||
the host does not replace a file it finds at a declared path: it records what was there — its
|
||||
content, so the original is kept before anything is written — and holds the file as found. A
|
||||
module's files are converged when that module is assigned, because assigning a module is
|
||||
migrating it; the rest when the node is converged. The host's report says which files it is
|
||||
holding rather than converging, so an adopted node never reads as converged. This is the
|
||||
companion the host's ownership rule needed: *never touch what you did not create, unless adoption
|
||||
made it yours — and while the node is adopted, keep it as you found it.* *How it is checked:*
|
||||
unit tests hold the host to keeping a found file on an adopted node and replacing it on a
|
||||
converged one, and the adoption bed asserts a found file byte for byte unchanged.
|
||||
|
||||
## Where a declaration comes from
|
||||
|
||||
One behaviour, two sources
|
||||
|
||||
Reference in New Issue
Block a user