Designs follow ADR 0636 as accepted: a waiting reader, the bootstrapped three
mesh/delivery merged: source.main moved to novox/hq@674f88f9abb8
mesh/check being carried to b81c05c36e95 on 674f88f9abb8 | from 160f384e4fcd

The accepted record renumbers its clauses and settles what the review asked: a
reader without the seat list starts nothing new but keeps running, its wait
reaches the operator through the condition keeper and the router, which are
bootstrapped with mesh-catalog, a missing definition blocks new claims only,
a move of a definition is a handover, and the private network's value is the
seat's contract. The renames also refuse old names in consumes and say what an
old installer meets; design 47's done milestones keep the name they shipped.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
This commit is contained in:
2026-11-05 13:40:32 +01:00
parent e1713bf59a
commit b81c05c36e
3 changed files with 79 additions and 60 deletions
+5 -5
View File
@@ -61,7 +61,7 @@ is listed under [Homonyms](#homonyms), with the qualified form each domain uses.
- **seat definition** — the one language-neutral file (a schema with conformance fixtures) that names a seat's
verbs and their messages, its events, its states and the forms of its provisions; its Go and TypeScript types
are generated from it. The indexer keeps every trunk's and open pull request's as bus state (ADR 0608 §1, §2).
Every seat has one, written by hand in its domain's contracts module, either whole or at the seat list's grain
Every seat has one, naming its domain, written by hand in its domain's contracts module, either whole or at the seat list's grain
(its name, scope, verbs and provision), and every reader of the list of seats learns it from the bus, never from a
compiled package (ADR 0635 §1, §2).
*Not:* ~~seat-set package~~ (hq)
@@ -878,10 +878,10 @@ it should not. **Recorded by** the controller. **Upstream of** Provisioning and
The network the machine sits on without it is the **underlay**.
*Not:* ~~overlay~~ (hq)
- **the-private-network** — the node seat of the private network, held by the module `mesh-wireguard`, whose
provision is the value a module reads to reach the private network. Its contract and its client, which keeps only
that value's layout and no key material, are in `mesh-connectivity-contracts`, a folder module of the
mesh-networking repository beside its holder; the private network's manifest and peer generator are the holder's own
(ADR 0634 §6, ADR 0636 §4).
provision is the value a module reads to reach the private network. Its contract, holding that value's layout and
no key material, is in `mesh-connectivity-contracts`, a folder module of the mesh-networking repository beside its
holder; it has a client only where its callers share logic, and the private network's manifest and peer generator
are the holder's own (ADR 0634 §6, ADR 0636 §6).
- **anchor** and **hub** — the roles a node plays for the private network: the anchor is reachable from
outside and every node reaches it; a hub relays for nodes that cannot reach each other directly.
- **resolver** — a seat holder that answers the mesh's names, of the replicated seat `mesh-dns-resolver`; a node