ADR 0138, in the catalogue. 75 endpoints across 50 modules now have names, and 35 route contributions
name the endpoint they serve instead of repeating its port.
Named from what each one is for rather than by a rule:
mail's seven protocol ports are smtp, pop3, imap, smtps, submission, imaps, pop3s,
beside its web, web-tls and autoconfig
unifi's nine are web, inform, stun, discovery, discovery-l2, portal, portal-tls, speedtest and syslog
minio's two are s3 and console; the resolver's two are dns-udp and dns-tcp; the proxy's are http and https; the forge's are web and ssh
plex's single one is stream, which is the endpoint clients dial directly
Checked before writing any of it: an unknown manifest key is refused, so a catalogue using name
against a control plane that does not know the word would stop resolving. The words shipped a release
ahead in mesh-controller #138 and #139, and the control plane running right now is built from that
merge commit — verified, not assumed.
And checked after: all 72 manifests parse through the control plane's own ParseManifest, 75 named
endpoints and 33 routed endpoints resolve by name, no route names a bare port, none names both, and the
one naming neither is gitea's path-level deny rule — a rule about a name rather than an endpoint, which
is correct. The test that does this is in mesh-controller and runs against a catalogue checkout, so it
stays useful rather than being a one-off script.
ADR 0138, in the catalogue. 75 endpoints across 50 modules now have names, and 35 route contributions
name the endpoint they serve instead of repeating its port.
Named from what each one is for rather than by a rule:
- mail's seven protocol ports are `smtp`, `pop3`, `imap`, `smtps`, `submission`, `imaps`, `pop3s`,
beside its `web`, `web-tls` and `autoconfig`
- unifi's nine are `web`, `inform`, `stun`, `discovery`, `discovery-l2`, `portal`, `portal-tls`,
`speedtest` and `syslog`
- minio's two are `s3` and `console`; the resolver's two are `dns-udp` and `dns-tcp`; the proxy's are
`http` and `https`; the forge's are `web` and `ssh`
- plex's single one is `stream`, which is the endpoint clients dial directly
**Checked before writing any of it:** an unknown manifest key is refused, so a catalogue using `name`
against a control plane that does not know the word would stop resolving. The words shipped a release
ahead in mesh-controller #138 and #139, and the control plane running right now is built from that
merge commit — verified, not assumed.
**And checked after:** all 72 manifests parse through the control plane's own `ParseManifest`, 75 named
endpoints and 33 routed endpoints resolve by name, no route names a bare port, none names both, and the
one naming neither is gitea's path-level deny rule — a rule about a name rather than an endpoint, which
is correct. The test that does this is in mesh-controller and runs against a catalogue checkout, so it
stays useful rather than being a one-off script.
75 endpoints across 50 modules, named from what each one is for rather than by a
rule: mail's seven protocol ports are smtp, imaps, submission and the rest; unifi's
nine are inform, stun, discovery, the two portal ports and syslog; minio's two are
s3 and console; the resolver's two are dns-udp and dns-tcp.
And 35 route contributions name the endpoint they serve instead of repeating its
port. A route and a listen both carried a port and nothing said they were the same
thing; now one of them does. gitea's path-level deny rule names neither, because it
is a rule about a name rather than an endpoint.
novox/hq ADR 0138. The words shipped a release ahead in mesh-controller #138 and
#139, and the control plane running today is built from that merge — checked before
this was written, because an unknown manifest key is refused and a catalogue using
one against an older control plane would stop resolving.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
ADR 0138, in the catalogue. 75 endpoints across 50 modules now have names, and 35 route contributions
name the endpoint they serve instead of repeating its port.
Named from what each one is for rather than by a rule:
smtp,pop3,imap,smtps,submission,imaps,pop3s,beside its
web,web-tlsandautoconfigweb,inform,stun,discovery,discovery-l2,portal,portal-tls,speedtestandsyslogs3andconsole; the resolver's two aredns-udpanddns-tcp; the proxy's arehttpandhttps; the forge's arewebandsshstream, which is the endpoint clients dial directlyChecked before writing any of it: an unknown manifest key is refused, so a catalogue using
nameagainst a control plane that does not know the word would stop resolving. The words shipped a release
ahead in mesh-controller #138 and #139, and the control plane running right now is built from that
merge commit — verified, not assumed.
And checked after: all 72 manifests parse through the control plane's own
ParseManifest, 75 namedendpoints and 33 routed endpoints resolve by name, no route names a bare port, none names both, and the
one naming neither is gitea's path-level deny rule — a rule about a name rather than an endpoint, which
is correct. The test that does this is in mesh-controller and runs against a catalogue checkout, so it
stays useful rather than being a one-off script.