namespace ZB.MOM.WW.OtOpcUa.Core.Abstractions;
///
/// Opts a tag-definition record into auto-retry on failures.
/// Absence of this attribute means writes are not retried — a timed-out write may have
/// already succeeded at the device, and replaying pulses, alarm acks, counter increments, or
/// recipe-step advances can duplicate irreversible field actions.
///
///
/// Per docs/v2/plan.md decisions #44, #45, and #143. Applied to tag-definition POCOs
/// (e.g. ModbusTagDefinition, S7TagDefinition, OPC UA client tag rows) at the
/// property or record level. The CapabilityInvoker in ZB.MOM.WW.OtOpcUa.Core.Resilience
/// reads this attribute via reflection once at driver-init time and caches the result; no
/// per-write reflection cost.
///
[AttributeUsage(AttributeTargets.Property | AttributeTargets.Class | AttributeTargets.Struct, AllowMultiple = false, Inherited = true)]
public sealed class WriteIdempotentAttribute : Attribute
{
}