Resolve all 46 low-severity architecture review findings
This commit is contained in:
@@ -29,12 +29,13 @@ namespace ZB.MOM.WW.ScadaBridge.Host.Health;
|
||||
/// whole check stays cheap and readiness polling stays fast.
|
||||
/// </para>
|
||||
/// <para>
|
||||
/// <b>Required-always vs if-applicable.</b> All five central singleton proxies are
|
||||
/// created unconditionally on a central node (there is no feature/config gate around
|
||||
/// any of them), so all five are treated as required-always here. If a future
|
||||
/// singleton is created behind a feature flag, it should NOT be added to
|
||||
/// <see cref="RequiredSingletonProxyNames"/> — "if applicable" means skip when its
|
||||
/// feature is off.
|
||||
/// <b>Required versus best-effort.</b> Seven central singleton proxies are created
|
||||
/// unconditionally. The five listed in <see cref="RequiredSingletonProxyNames"/>
|
||||
/// are required for readiness. The KPI-history recorder and pending-deployment purge
|
||||
/// are deliberately excluded: they provide best-effort observability and hygiene,
|
||||
/// respectively, and their availability is not a correctness prerequisite. Future
|
||||
/// additions must be classified by readiness impact, not just unconditional creation;
|
||||
/// a feature-gated singleton must also be skipped when its feature is disabled.
|
||||
/// </para>
|
||||
/// <para>
|
||||
/// <b>Failover flakiness.</b> During a brief singleton handover the singleton may be
|
||||
@@ -60,7 +61,7 @@ public sealed class RequiredSingletonsHealthCheck : IHealthCheck
|
||||
/// <summary>
|
||||
/// Local actor names (under <c>/user</c>) of the <c>ClusterSingletonProxy</c>
|
||||
/// actors for the singletons that must always be running on a central node.
|
||||
/// Matches the unconditional proxy registrations in
|
||||
/// Selects the five required services from the seven unconditional registrations in
|
||||
/// <c>AkkaHostedService.RegisterCentralActors</c>.
|
||||
/// </summary>
|
||||
public static readonly IReadOnlyList<string> RequiredSingletonProxyNames = new[]
|
||||
|
||||
Reference in New Issue
Block a user