namespace ScadaLink.Commons.Messages.Instance;

/// <summary>
/// Batch command to set multiple attribute values on an Instance Actor.
/// Used by Route.To().SetAttributes() in Inbound API.
/// </summary>
public record SetAttributesBatchCommand(
    string CorrelationId,
    string InstanceUniqueName,
    IReadOnlyDictionary<string, string> AttributeValues,
    DateTimeOffset Timestamp);

/// <summary>
/// Batch response confirming multiple attribute writes.
/// </summary>
public record SetAttributesBatchResponse(
    string CorrelationId,
    string InstanceUniqueName,
    bool Success,
    string? ErrorMessage,
    DateTimeOffset Timestamp);
