namespace Deal.Infrastructure.Persistence.Entities;
///
/// Строка очереди входящих пайплайна
///
public sealed class QueueItemEntity
{
///
/// Короткий id строки очереди
///
public string Id { get; set; } = string.Empty;
///
/// Ключ дедупликации записи источника
///
public string SourceKey { get; set; } = string.Empty;
///
/// Ссылка на источник, сериализованная в JSON
///
public string SourceJson { get; set; } = string.Empty;
///
/// Содержимое источника, сериализованное в JSON
///
public string ContentJson { get; set; } = string.Empty;
///
/// Текст сообщения
///
public string Text { get; set; } = string.Empty;
///
/// Время получения исходного сообщения
///
public DateTimeOffset MsgAt { get; set; }
///
/// Статус строки: new — ждёт разбора воркером, filtered — прошла фильтры и ждёт ИИ/ML.
///
public string Status { get; set; } = "new";
///
/// Признак возврата из отсева
///
public bool Force { get; set; }
///
/// Время постановки в очередь.
///
public DateTimeOffset CreatedAt { get; set; }
///
/// Время последнего изменения строки.
///
public DateTimeOffset UpdatedAt { get; set; }
}