Design 32: the rename window closes on the next delivered while ADR 0618 is only reserved, and no waiter on the vault's rotation wakes on own-retired

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
This commit is contained in:
2026-11-04 00:46:40 +01:00
parent 546a18a20e
commit a81334b1af
@@ -516,10 +516,10 @@ value it holds under the old name to the new name in its own state, without the
module reports applied a build of it that reads the new name. mesh-config hears the status view's `delivered`
events and, at its start and on each, asks its `node_haves` for every node, away ones included, since `delivered`
counts only the nodes present (design 47); until then mesh-config answers both names. A node away when the last
`delivered` was said closes its window when it returns, with no other delivery: what wakes mesh-config then is the
node-engine seat's event for a node's stated manifest-reads, said also on its return, decided in ADR 0618 as for
the old seat name (design 51; the event's family is filled in once it is proposed), never a watch of the
node-engine's have state (ADR 0596). A node holding a window open
`delivered` was said should close its window when it returns, with no other delivery: what wakes mesh-config then
is to be decided in ADR 0618 (reserved), the node-engine seat's event for a node's stated manifest-reads, said also
on its return, as for the old seat name (design 51), never a watch of the node-engine's have state (ADR 0596).
**Until ADR 0618 is accepted**, such a node closes the window on the next `delivered`, whichever delivery says it. A node holding a window open
for seven days is mesh-config's finding naming the node, cleared when the window closes; `config_rename_close`
drops a node from a window by hand, recorded as a hand act.
- **The checker asks the seat, never the module.** The seat `mesh-config` gains the optional verb `renames` (the
@@ -571,7 +571,9 @@ C24 below), of the checker's and of the vault's existing whole-module tests: the
holder that does not serve it refuses `renamed-from` naming the verb, one meeting an open window refuses dropping
`renamed-from` naming the nodes, and a check that cannot ask fails saying so; `retire` with the warrant removes the
secret and emits `retired` and `own-retired`, without it, with a warrant for another name, or from a caller not on the list it is
refused; `config_rename_close` drops a node from a window and records the hand act; a window held seven days and a
refused; a waiter on the vault's `rotated` or `own-replaced` does not wake on `own-retired`; a node that was away,
returning with a build that reads the new name, closes the rename window on the next `delivered` (until ADR 0618 is
accepted); `config_rename_close` drops a node from a window and records the hand act; a window held seven days and a
retirement held seven days each write their finding naming the node, cleared when it closes.
### The mesh delivery cases this design carries