Issue 092: it happened twice more — the registry's mesh name, and the mesh's own trust naming the default port
This commit is contained in:
@@ -38,6 +38,20 @@ keeping every key already there, and the runtime **reloaded** rather than restar
|
||||
was running stopped ([ADR 0102](../../02-DECISIONS/0102-the-mesh-writes-into-a-shared-file-never-over-it.md)).
|
||||
Genesis then continued.
|
||||
|
||||
**Then it happened twice more**, on the same machine, within the hour:
|
||||
|
||||
- **By name, not only by address.** Once the mesh's builder built a module, it pushed the result to
|
||||
the registry by its **mesh name** and port. The runtime trusted the numeric address genesis was
|
||||
given and nothing else, so the push failed the same way. The trust has to cover every name the
|
||||
mesh will use for that registry, not the one the operator typed.
|
||||
- **The mesh's own trust names the wrong port.** The networking module writes the registry's trust
|
||||
into the runtime's configuration — correctly written *into* it, keeping what was there
|
||||
([ADR 0102](../../02-DECISIONS/0102-the-mesh-writes-into-a-shared-file-never-over-it.md)) — and
|
||||
the value it wrote names the registry's **default** port while the node was given another. So the
|
||||
mesh trusts an address its registry does not serve. That is the same fault as
|
||||
[issue 088](../088-the-forges-own-address-names-a-port-it-may-not-have/00-report.md): an address
|
||||
with a port in it that does not follow the node's setting.
|
||||
|
||||
## Why it matters beyond this instance
|
||||
|
||||
Genesis is meant to take a machine from nothing to a mesh without anyone editing files on it. It
|
||||
@@ -57,3 +71,7 @@ to the one the mesh is about to raise.
|
||||
rather than pushed?
|
||||
- Should preflight refuse a genesis whose runtime does not trust the registry it is being given,
|
||||
rather than letting it fail at step 10?
|
||||
- Whatever writes that trust, which names of the registry must it cover: the address given, the
|
||||
mesh name, loopback? The builder used the mesh name without being told to.
|
||||
- Should the registry's trust be derived from what the registry module *serves* on that node,
|
||||
rather than from its default port?
|
||||
|
||||
Reference in New Issue
Block a user