Files
jschoubben c4030947b0 The routing record is 0066, not 0056
0056 is 'the authority is the control plane, not a database'. A citation
pointing at the wrong decision is worse than none: it reads as corroboration.

Claude-Session: https://claude.ai/code/session_01LrgweAeERJYBg88c5cKDzF
2026-09-11 00:09:56 +02:00

17 lines
1.1 KiB
SQL

-- The public domain a node's routed names are composed under.
--
-- novox/hq ADR 0066. A public route used to carry its whole hostname in the module manifest, so
-- running the same catalogue against a different domain — a lab standing in for production, a
-- second operator's mesh — meant overriding that literal on every routed module. That made the
-- mesh hold a map of names to services: the one thing it must not, because the subdomain is the
-- operator's choice and the domain is the node's.
--
-- So the domain becomes a fact about the node, held here beside the node's other node-level
-- configuration (its endpoint, its site, its overlay address). A module contributes only the label
-- (the subdomain); the mesh composes <label>.<public-domain> and never interprets what it means.
--
-- Null for a node with no public domain, which is the ordinary case: most machines serve nothing
-- to the outside. A routed module on such a node composes no name and the proxy simply has nothing
-- to serve for it — additive, so an unmigrated catalogue carrying full hostnames is untouched.
alter table node add column public_domain text;