Files
Deal/src/telegram-service/Deal.Telegram/Telegram/DiscoveryReadResult.cs
T
Rustam Khalimov b053d58335 Почистить комментарии от упоминаний процесса
Удалены <remarks>, <summary> сжаты до короткой фразы, вырезаны
ссылки на Task/Ruling/этап/python/прототип; //-комментарии со ссылками
на процесс удалены; то же в .proto. Правила обновлены в
docs/spec/Код-стайл-Дейл.md. Строк комментариев 27210 -> ~19100.
2026-09-11 13:39:39 +03:00

55 lines
1.9 KiB
C#

namespace Deal.Telegram.Telegram;
/// <summary>
/// Результат чтения выборки источника для оценки кандидата.
/// </summary>
public sealed record DiscoveryReadResult
{
/// <summary>
/// Код причины ok=false
/// </summary>
public const string NoHistoryError = "no_history";
/// <summary>
/// Пустой успешный результат.
/// </summary>
public static DiscoveryReadResult Empty { get; } = new(true, null, []);
/// <summary>
/// Создаёт результат чтения выборки.
/// </summary>
/// <param name="ok">True — выборка получена; false — история недоступна.</param>
/// <param name="error">Код причины при ok=false ("no_history"); иначе null.</param>
/// <param name="messages">Сообщения выборки (форумы — по темам, topic_id/topic_title заполнены).</param>
public DiscoveryReadResult(
bool ok,
string? error,
IReadOnlyList<DiscoveryMessage> messages)
{
Ok = ok;
Error = error;
Messages = messages;
}
/// <summary>
/// Создаёт результат «история недоступна»
/// </summary>
public static DiscoveryReadResult NoHistory()
=> new(false, NoHistoryError, []);
/// <summary>
/// True — выборка получена; false — история недоступна без членства.
/// </summary>
public bool Ok { get; }
/// <summary>
/// Код причины при ok=false
/// </summary>
public string? Error { get; }
/// <summary>
/// Сообщения выборки
/// </summary>
public IReadOnlyList<DiscoveryMessage> Messages { get; }
}