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; }