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; }
}