Рецепты

Безопасные диагностические данные

Явно раскрывайте только безопасные поля State и Command.

v0.1.0-dev.3Средний уровеньusecase_forge_devtools

Безопасные диагностические данные

Технические метаданные жизненного цикла доступны автоматически. Прикладные значения остаются скрытыми, пока UseCase явно не сформирует безопасное JSON-представление.

dart
final class CartUseCase extends UseCase<CartState>
    with UseCaseDiagnosticsDataProvider {
  @override
  Object? encodeUseCaseDiagnosticValue(
    UseCaseDiagnosticValueKind kind,
    Object? value,
  ) {
    if (kind == UseCaseDiagnosticValueKind.state && value is CartState) {
      return {'itemCount': value.itemCount};
    }
    return null;
  }
}

Импортируйте package:usecase_forge/diagnostics.dart. Возвращайте null для секретов, токенов, персональных данных, больших объектов и ненужных типов. Ошибка преобразования диагностического значения изолирована от выполнения Command.

ARKTELOS

Инженерные системы для программного обеспечения, которое обязано выдерживать нагрузку.