feat(secrets): abstractions value types, enums, exceptions
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
namespace ZB.MOM.WW.Secrets.Abstractions;
|
||||
|
||||
/// <summary>
|
||||
/// A compact per-secret manifest row used for cluster anti-entropy: it carries just
|
||||
/// enough state (name, revision, tombstone flag, timestamp) for two nodes to compare
|
||||
/// inventories and reconcile which secrets are newer without exchanging ciphertext.
|
||||
/// </summary>
|
||||
public record SecretManifestEntry
|
||||
{
|
||||
/// <summary>The normalized secret name.</summary>
|
||||
public required SecretName Name { get; init; }
|
||||
|
||||
/// <summary>Monotonic revision number used to determine which side is newer.</summary>
|
||||
public required long Revision { get; init; }
|
||||
|
||||
/// <summary>When the secret was last updated (UTC).</summary>
|
||||
public required DateTimeOffset UpdatedUtc { get; init; }
|
||||
|
||||
/// <summary>Whether the secret is soft-deleted (tombstoned).</summary>
|
||||
public bool IsDeleted { get; init; }
|
||||
}
|
||||
Reference in New Issue
Block a user