namespace Campaign_Tracker.Server.ExtensionData; /// /// Contract that every extension record type must satisfy to participate in /// legacy-identifier linking (AC #1) and nightly integrity checks (AC #4). /// public interface ILegacyLinkedRecord { /// Domain type name used in integrity reports (e.g. "MunicipalityProfile"). string RecordType { get; } /// Stable identifier for this specific record instance (e.g. its primary key). string RecordId { get; } /// The required legacy foreign reference stored on this record. LegacyLinkReference LegacyLink { get; } }