namespace AIStudio.Tools.Databases.IndexStore;
///
/// A sign-in the server refused. While the row exists, AI Studio does not try to sign in again.
///
///
/// The row has no foreign key on purpose. Rebuilding the index deletes the data source row and
/// everything which cascades from it, and a refused sign-in has to survive that: otherwise every
/// rebuild would try the refused password again, which is how a directory account gets locked.
///
internal sealed class MailboxAuthStateEntity
{
public string DataSourceId { get; set; } = string.Empty;
public DateTimeOffset FailedAtUtc { get; set; }
///
/// What the server answered, empty when it gave no reason.
///
public string FailureMessage { get; set; } = string.Empty;
}