namespace ZB.MOM.WW.ScadaBridge.Commons.Types.Enums;

/// <summary>
/// Top-level Audit Log channel — the trust boundary the audited action crosses.
/// One of: outbound API call, outbound DB write, notification send/deliver, inbound API request,
/// a two-person ("secured") write through its submit/approve/reject/execute lifecycle, or an
/// operator-initiated cluster topology action.
/// </summary>
public enum AuditChannel
{
    ApiOutbound,
    DbOutbound,
    Notification,
    ApiInbound,
    SecuredWrite,

    /// <summary>
    /// An operator-initiated change to cluster topology — currently only the admin-triggered
    /// manual failover of the central pair. Distinct from the script trust boundary the other
    /// channels describe: nothing here crosses into user script, but a human deliberately
    /// restarted the active node, which is exactly the kind of act an audit log exists to
    /// attribute. (decision 2026-07-22)
    /// </summary>
    Cluster
}
