fix(host): dev site seed no longer targets the metrics port; validator rejects seed-vs-MetricsPort

This commit is contained in:
Joseph Doherty
2026-07-08 16:37:43 -04:00
parent d962c77bb7
commit 0e3c1df1a7
3 changed files with 40 additions and 1 deletions
@@ -124,6 +124,14 @@ public static class StartupValidator
_ => SeedNodePort(seed) != grpcPort,
$"entry '{seed}' must not target the gRPC port " +
$"({grpcPort}); seed nodes must reference Akka remoting ports");
// Same failure mode as the gRPC guard: the Kestrel HTTP/1.1
// metrics listener is not an Akka.Remote endpoint, so a seed on
// it dials a doomed association forever.
p.Require("ScadaBridge:Cluster:SeedNodes",
_ => SeedNodePort(seed) != metricsPort,
$"entry '{seed}' must not target the metrics port " +
$"({metricsPort}); seed nodes must reference Akka remoting ports");
}
})
.ThrowIfInvalid();
@@ -11,9 +11,10 @@
"NodeName": "node-a"
},
"Cluster": {
"_seedNodes": "Host-0xx: second entry is the FUTURE node-b remoting port (8085) for a two-node localhost site. It must be an Akka remoting endpoint — never this node's GrpcPort (8083) or MetricsPort (8084); StartupValidator rejects both.",
"SeedNodes": [
"akka.tcp://scadabridge@localhost:8082",
"akka.tcp://scadabridge@localhost:8084"
"akka.tcp://scadabridge@localhost:8085"
],
"SplitBrainResolverStrategy": "keep-oldest",
"StableAfter": "00:00:15",