Почистить комментарии от упоминаний процесса
Удалены <remarks>, <summary> сжаты до короткой фразы, вырезаны ссылки на Task/Ruling/этап/python/прототип; //-комментарии со ссылками на процесс удалены; то же в .proto. Правила обновлены в docs/spec/Код-стайл-Дейл.md. Строк комментариев 27210 -> ~19100.
This commit is contained in:
@@ -6,31 +6,22 @@ using Grpc.Net.Client;
|
||||
namespace Deal.Infrastructure.Integrations.Models;
|
||||
|
||||
/// <summary>
|
||||
/// Транспорт gRPC-клиента telegram-service: общий канал + обязательные metadata (Ruling 1, план Task 14).
|
||||
/// Транспорт gRPC-клиента telegram-service
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Singleton (канал живёт долго и переиспользуется всеми вызовами): endpoint из
|
||||
/// <see cref="TelegramServiceOptions"/>, service-token — из env <c>DEAL_SERVICE_TOKEN</c> (Ruling 13: секреты
|
||||
/// только в env). Dev-транспорт без TLS (Ruling 2); mTLS (Ruling 6, Task 13): при включённом флаге канал
|
||||
/// подписывает запрос клиентским сертификатом и проверяет CA сервера (сертификаты передаются
|
||||
/// <see cref="MtlsCertificates"/>). Пустой endpoint либо пустой токен при создании — ошибка конфигурации (fail-closed:
|
||||
/// без токена сервис отвергнет каждый вызов UNAUTHENTICATED, Ruling 1). Автоповторы Grpc.Net.Client отключены
|
||||
/// (MaxRetryAttempts=0): стратегию повторов реализует вызывающий (фоновые циклы Api пробуют в следующем тике).
|
||||
/// </remarks>
|
||||
public sealed class TelegramGrpcConnection : IDisposable
|
||||
{
|
||||
/// <summary>
|
||||
/// Env-ключ ожидаемого service-token (зеркало ServiceTokenInterceptor сервисов, Ruling 1).
|
||||
/// Env-ключ ожидаемого service-token.
|
||||
/// </summary>
|
||||
public const string ServiceTokenEnvKey = "DEAL_SERVICE_TOKEN";
|
||||
|
||||
/// <summary>
|
||||
/// Ключ gRPC-metadata с tenant-id (зеркало TelegramServiceImpl, Ruling 1).
|
||||
/// Ключ gRPC-metadata с tenant-id.
|
||||
/// </summary>
|
||||
public const string TenantIdMetadataKey = "tenant-id";
|
||||
|
||||
/// <summary>
|
||||
/// Ключ gRPC-metadata с service-token (зеркало TelegramServiceImpl, Ruling 1).
|
||||
/// Ключ gRPC-metadata с service-token.
|
||||
/// </summary>
|
||||
public const string ServiceTokenMetadataKey = "service-token";
|
||||
|
||||
@@ -38,10 +29,10 @@ public sealed class TelegramGrpcConnection : IDisposable
|
||||
private readonly string _serviceToken;
|
||||
|
||||
/// <summary>
|
||||
/// Создаёт транспорт telegram-service по конфигурации и env-токену (валидация fail-closed).
|
||||
/// Создаёт транспорт telegram-service по конфигурации и env-токену
|
||||
/// </summary>
|
||||
/// <param name="options">Конфигурация секции <c>Services:Telegram</c> (endpoint).</param>
|
||||
/// <param name="mtlsCertificates">Сертификаты mTLS (Ruling 6): null — plaintext-канал (dev, флаг выключен).</param>
|
||||
/// <param name="mtlsCertificates">Сертификаты mTLS: null — plaintext-канал (dev, флаг выключен).</param>
|
||||
/// <exception cref="InvalidOperationException">Пустой endpoint или пустой DEAL_SERVICE_TOKEN.</exception>
|
||||
public TelegramGrpcConnection(TelegramServiceOptions options, MtlsCertificates? mtlsCertificates = null)
|
||||
{
|
||||
@@ -69,13 +60,13 @@ public sealed class TelegramGrpcConnection : IDisposable
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Создаёт клиент RPC TelegramService поверх общего канала (клиент — лёгкий, на каждый вызов).
|
||||
/// Создаёт клиент RPC TelegramService поверх общего канала
|
||||
/// </summary>
|
||||
/// <returns>Клиент сервиса Telegram (команды ядра наружу).</returns>
|
||||
public TelegramService.TelegramServiceClient CreateClient() => new(_channel);
|
||||
|
||||
/// <summary>
|
||||
/// Собирает обязательные metadata вызова: tenant-id + service-token (Ruling 1).
|
||||
/// Собирает обязательные metadata вызова
|
||||
/// </summary>
|
||||
/// <param name="tenantId">Id тенанта (строка, формат N — как в сессиях telegram-service).</param>
|
||||
/// <returns>Metadata для CallOptions вызова.</returns>
|
||||
|
||||
Reference in New Issue
Block a user