From a81334b1afaff7d69c59f25ea6f4b7322deeb76b Mon Sep 17 00:00:00 2001 From: jochen Date: Wed, 4 Nov 2026 00:46:40 +0100 Subject: [PATCH] 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 --- 03-DESIGN/01-to-be/32-what-a-module-declares.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/03-DESIGN/01-to-be/32-what-a-module-declares.md b/03-DESIGN/01-to-be/32-what-a-module-declares.md index dcf03d58..c55a817e 100644 --- a/03-DESIGN/01-to-be/32-what-a-module-declares.md +++ b/03-DESIGN/01-to-be/32-what-a-module-declares.md @@ -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