Files
KArtSell.Aegis/docs/Design/kbx-foundation-v60-status-canonical-contract-hardening/backend/Shared/Operations/ReconcilePolicy.cs
T
kjh2064 3f293d8aa8
deploy / deploy (push) Successful in 1m52s
deploy / notify (push) Successful in 1s
V13-FE-006: consolidate approved UI and contract hardening
2026-08-13 02:41:00 +09:00

16 lines
480 B
C#

namespace Shared.Operations;
public static class ReconcilePolicy
{
public static string DecideStatus(
bool valuesMatch,
DateTimeOffset sourceChangedAt,
DateTimeOffset observedAt,
TimeSpan gracePeriod)
{
if (valuesMatch) return "matched";
if (observedAt < sourceChangedAt) throw new ArgumentOutOfRangeException(nameof(observedAt));
return observedAt - sourceChangedAt < gracePeriod ? "pending" : "mismatch";
}
}