namespace ScadaLink.Commons.Interfaces.Services; /// /// Surfaces the local node's semantic role-within-cluster name so downstream /// audit writers can stamp it on the SourceNode column. /// /// /// Conventional values follow the pattern node-a/node-b on site /// nodes and central-a/central-b on central nodes. The value is /// a free-form operator-supplied label — there is no enforced format. When the /// configuration value is missing, empty, or whitespace, implementations /// return null so audit writers can persist NULL rather than an empty /// string. /// public interface INodeIdentityProvider { /// /// The configured semantic node name, trimmed of surrounding whitespace. /// null when unconfigured. /// string? NodeName { get; } }