Первый коммит: модульный монолит ядра (.NET 10) и gRPC-сервисы ai/ml/telegram, фронтенд Vue 3/Vite/Tailwind, документация (ТЗ, инструкция пользователя, техдокументация, код-стайл), бэклог, скрипты развёртывания и архив прототипа LeadRadar.
28 lines
1.4 KiB
C#
28 lines
1.4 KiB
C#
namespace Deal.Modules.Kanban.Application.Models;
|
|
|
|
/// <summary>
|
|
/// Политика контейнера: правила жизненного цикла зоны (этап 9, T4).
|
|
/// </summary>
|
|
/// <remarks>
|
|
/// Роль контейнера (не enum): можно ли вернуть карточку на доску пространства, терминальна ли зона,
|
|
/// задана ли автоочистка. Хранится JSON-объектом в Containers.PolicyJson (camelCase); значения по
|
|
/// умолчанию — «обычная колонка» (возврат разрешён, не терминальна, без автоочистки).
|
|
/// </remarks>
|
|
public sealed record ContainerPolicyDto
|
|
{
|
|
/// <summary>
|
|
/// Можно ли вернуть карточку из контейнера на доску пространства (архив/корзина — да).
|
|
/// </summary>
|
|
public bool CanRestore { get; init; } = true;
|
|
|
|
/// <summary>
|
|
/// Терминальная зона: завершение жизненного пути, только ручная очистка без возврата.
|
|
/// </summary>
|
|
public bool IsTerminal { get; init; }
|
|
|
|
/// <summary>
|
|
/// Срок автоочистки карточек контейнера в днях; null — автоочистки нет.
|
|
/// </summary>
|
|
public int? RetentionDays { get; init; }
|
|
}
|