Версия 79, октябрь 2025

Наименование инстансов

Чтобы длинные наименования инстансов отображались полностью, мы увеличили область отображения названия инстанса:

  • На странице авторизации — наименование инстанса теперь полностью отображается:
    • В левом верхнем углу
    • Над полями для ввода логина и пароля
  • На странице с ошибкой о неудачной попытке входа.
  • В основном разделе и разделе Администрирование:
    • Если наименование инстанса не помещается в доступную для отображения область, автоматически будет уменьшен размер шрифта до 14px
    • Для коротких наименований используется стандартный размер шрифта
  • Наименование будет обрезано троеточием, если:
    • После уменьшения шрифта название не помещается в доступную область
    • Оно выходит за пределы области отображения 

Отчеты

  • Мы продолжили расширять возможности визуализации в отчетах — теперь вы можете выбрать еще два типа диаграмм: Линейчатая диаграмма и Линейчатая диаграмма с накоплением:
    • В линейчатых диаграммах значения представлены горизонтальными полосами, длина которых пропорциональна величине отображаемых значений
    • Параметры двух новых диаграмм аналогичны настройкам столбчатых диаграмм, но названия столбцов формируются из значений поля, указанного в параметре Ось Y, а значения — по параметру Ряд
    • При изменении типа диаграммы параметры будут перенесены, за исключением перехода с Линейчатой диаграммы или Линейчатой диаграммы с накоплением на диаграммы Показатель
    • При просмотре линейчатых диаграмм в отчете:
      • Названия столбцов отображаются горизонтально слева от Оси Y (максимальная ширина области названия — 200px)
      • Значения параметра Ряд группируются по значению из поля Ось Y с учетом выбранного формата
      • Для линейчатых диаграмм с накоплением значения параметров Ряд отображаются в одном столбце (как для столбчатых диаграмм с накоплением)

  • Изменили логику скачивания системных отчетов без предпросмотра — стало доступно скачивать системные отчеты в формате *.csv:
    • В настройках системного отчета без предпросмотра добавили параметр, который позволяет указать доступный формат отчета для скачивания — *.xlsx или *.csv:
      • Если значение не указано, отчет будет доступен для скачивания только в формате *.xlsx
      • При скачивании отчета в формате *.csv будет загружен архив: <Название отчета>.zip
      • Вне зависимости от формата, отчет будет скачиваться с учетом функции кэширования, которая позволяет скачивать отчеты даже при превышении таймаута запроса
    • Для системных отчетов без предпросмотра изменили текст подсказки: Данный отчет сгенерирован автоматически и может быть только загружен как файл


Участники

Стало возможно автоматически заполнить сведения в карточке организации не только по ИНН, но и по ОГРН (если подключена интеграция с Casebook):

  • При заполнении ОГРН выполняются проверки формата значения (только число) и количества символов (13 или 15 символов).
  • Если проверки пройдены, а компания найдена в Casebook, откроется окно для выбора автоматического заполнения.
  • Если по указанному ОГРН найдено несколько организаций, в Case.one будут загружены:
    • Сведения организации, деятельность которой не прекращена, если найдена действующая организация
    • Сведения первой найденной организации, если действующих организаций не найдено


События и задачи

Теперь вы можете более гибко настраивать напоминания о событиях и задачах, чтобы точно не пропустить нужные сроки и эффективнее управлять своим рабочим временем:

  • На формах создания/изменения событий и задач вынесли поле Напоминание в отдельный блок:
    • По умолчанию напоминания не настроены
    • Справа от названия блока отображается кнопка Добавить
    • При добавлении напоминания будут указаны значения по умолчанию:
      • Для событий, которые длятся весь день — В 14:00 (UTC+X) за 1 день (Х — часовой пояс аккаунта)
      • Для задач и событий, у которых не установлен флаг Весь день — За 5 минут 
    • Можно добавить несколько напоминаний (ограничений не предусмотрено)
    • Если добавлено несколько напоминаний, при повторном открытии формы задачи/события они будут отображаться в хронологическом порядке (от наиболее отдаленного к сроку выполнения задачи/начала события к наиболее близкому)
    • Доступно удалить любое напоминание с помощью кнопки  и подтверждения удаления
  • Для событий вы можете настроить напоминания со следующими условиями:
    • Для событий, которые длятся весь день:
      • В HH:MM (UTC+X) — можно выбрать время из списка с интервалом в 30 минут в часовом поясе аккаунта и дополнительно указать другие параметры напоминания:
        • В день события — если выбрано значение, дополнительные поля не отображаются, но напоминание будет отображаться для всех участников события
        • За — можно настроить интервал и период напоминания до начала события:
          • Интервал — доступно указать вручную двузначное число или выбрать значение из списка:
            • 1 день
            • 2 дня
            • 4 дня
            • 1 неделю
            • 2 недели
          • Период — можно выбрать 1 значение из списка:
            • День
            • Неделя 
    • Для событий, у которых не установлен флаг Весь день:
      • Во время начала события — если выбрано значение, дополнительные поля не отображаются
      • За — можно настроить интервал и период напоминания до начала события:
        • Интервал — доступно указать вручную двузначное число или выбрать значение из списка:
          • 5 минут
          • 15 минут
          • 30 минут
          • 1 час
          • 2 часа
          • 1 день
          • 2 дня
          • 1 неделю
          • 2 недели
        • Период — можно выбрать 1 значение из списка:
          • Минута
          • Час
          • День
          • Неделя 

При установке или снятии флага Весь день все добавленные ранее напоминания будут автоматически удалены (даже если они были сохранены).


  • Для задач и подзадач вы можете настроить напоминания со следующими условиями:
    • В срок выполнения задачи — если выбрано значение, дополнительные поля не отображаются
    • За — можно настроить интервал и период напоминания до срока выполнения задачи:
      • Интервал — доступно указать вручную двузначное число или выбрать значение из списка:
        • 5 минут
        • 15 минут
        • 30 минут
        • 1 час
        • 2 часа
        • 1 день
        • 2 дня
        • 1 неделю
        • 2 недели
      • Период — можно выбрать 1 значение из списка:
        • Минута
        • Час
        • День
        • Неделя 
    • Через — можно настроить интервал и период напоминания после наступления срока выполнения задачи (значения полей интервала и периода аналогичны настройкам полей при выборе значения За)

Личный кабинет

Доработали email-уведомления по задачам, которые доступно настроить в личном кабинете на вкладке Уведомления:

  • Для уведомления об истечении срока выполнения задачи:
    • Доработали логику отправки уведомлений — email-уведомления будут приходить:
      • В момент наступления срока выполнения задачи
      • После истечения срока выполнения задачи, если по ней были добавлены напоминания с условием Через (см. выше)
    • В текст письма добавили дату и время выполнения задачи:
      • Дата и время отображаются в формате, который выбран в настройках аккаунта
      • Время указывается в часовом поясе пользователя, которому отправлено уведомление
  • Добавили отдельное email-уведомление при изменении статуса задачи:
    • Уведомление будет отправляться при изменении всех статусов задачи, за исключением закрытия задачи
    • Если флаг Об изменении параметров задачи установлен, уведомление о смене статуса задачи будет отправлено:
      • Пользователям, подписанным на дело
      • Автору задачи
      • Ответственному
    • В уведомлении отображаются новый и прежний статусы задачи, доступен переход на форму задачи

Таблицы

Чтобы не отвлекаться на поиск нужной информации, теперь при работе с таблицами вы можете сразу посмотреть или изменить сведения об объекте на отдельной форме, не открывая карточку, и создавать новые карточки объектов:

  • Предпросмотр объектов и создание новых карточек доступно:
    • В карточке объекта и секциях с типом Таблица.
    • Если в параметрах таблицы администратор указал соответствующие настройки:
      • Установил возможность предпросмотра объектов
      • Разрешил создавать новые карточки объектов

  • На форме предпросмотра объекта (будет открыта при нажатии на название объекта в таблице):
    • Отображаются следующие сведения:
      • Все сведения из вкладок Основное и дополнительно созданных вкладок, кроме стадий объекта
      • Информация из вкладки События (если вкладка настроена для отображения), за исключением:
        • Панели фильтрации
        • Кнопки добавления события или письма
    • Справа от наименования вкладок объекта:
      • Доступно меню-троеточие для действий с карточкой объекта (аналогично меню-троеточию в карточке объекта)
      • Возможен переход в карточку объекта по ссылке
    • Доступно редактирование полей созданных вкладок и вкладки Основное:
      • Кнопка Сохранить отображается на всех вкладках формы предпросмотра, но неактивна до внесения изменений
      • При внесении изменений без сохранения и перехода на другую вкладку отображается уведомление о необходимости сохранения
      • При нажатии кнопки Сохранить выполняется проверка заполнения полей:
        • Если все поля заполнены корректно, изменения будут сохранены, форма предпросмотра останется открытой
        • Если есть незаполненные обязательные поля, они будут подсвечены, изменения не будут сохранены
    • Если права на вкладки карточки объекта отсутствуют, при попытке открыть форму предпросмотра отображается ошибка о недостаточном уровне прав
    • При прекращении доступа ко всем вкладкам в результате каких-либо действий:
      • Форма предпросмотра будет закрыта 
      • Отобразится ошибка о недостаточном уровне прав
      • Внесенные несохраненные изменения (при их наличии) не будут применены

  • С помощью кнопки Создать можно добавить новую карточку объекта:
    • На форме добавления нового объекта из таблиц:
      • Поле Тип дела:
        • Будет заполнено автоматически значением по умолчанию, если в настройках таблицы был выбран тип объекта для создания
        • Не будет заполнено значением по умолчанию, если в настройках таблицы не выбран тип объекта или отсутствуют права на этот тип объекта
      • Доступно выбрать другой тип объекта

  • Из таблиц карточек объектов можно создать как новую карточку объекта, так и связанную с текущей карточку объекта:
    • Создать связанную карточку объекта доступно, если в настройках таблицы:
      • В качестве значения исходного класса объекта указан класс, которому принадлежит выбранный на форме тип объекта
      • Значение в поле Создаваемый тип объекта совпадает с выбранным на форме добавления объекта типом объекта
      • В настройке Связывающее поле указано поле с форматом Объект-Объект, которое настроено для выбранного типа объекта
    • При создании связанной карточки объекта в ней будет автоматически добавлена ссылка на карточку объекта, из которой было создано связанное дело

  • В секциях с типом Таблица доступно создание нового дела, без установки связи между карточками объектов.

Использование поля с типом "Гиперссылка"

Чтобы вам не приходилось открывать карточку объекта для перехода по ссылкам, мы добавили возможность открывать ссылки прямо при просмотре сведений из карточек объектов:

  • В колонках в общем списке объектов как в стандартном режиме, так и в режиме с разбивкой по стадиям.
  • В таблицах карточек объектов и при просмотре секции с типом Таблица.
  • В пользовательских отчетах, если в качестве колонки отчета выбрано поле с типом Гиперссылка из объектов, клиентских запросов или доп. атрибутов.


Загрузка файлов

Добавили ограничения на размер выгружаемых файлов в форматах *.csv и *.xlsx и детальное описание ошибок при формировании файлов:

  • Ограничения добавлены для:
    • Отчетов любых типов
    • Списка действий в системе
    • Списка пользователей
  • При формировании файлов в формате *.xlsx и системного отчета без предпросмотра в формате *.csv применяются следующие ограничения, срабатывающие по логическому И:
    • Максимальный итоговый объем — 500 Мб
    • Максимальный объем не сжатых данных в отчете — 2 Гб
    • Максимальное количество ячеек в отчете — 40 млн. 
  • При формировании иных файлов в формате *.csv применяются следующие ограничения, срабатывающие по логическому И:
    • Максимальный объем не сжатых данных в отчете — 2 Гб
    • Максимальное количество ячеек в отчете — 40 млн. 
  • Если достигнуто одно или несколько ограничений:
    • Файл не будет сформирован
    • Отображается ошибка формирования файла с детальным описанием выявленного ограничения
    • Для каждого выявленного ограничения отображается отдельная ошибка 

Фильтрация

  • Дополнительными фильтрами Еще фильтры и системным фильтром Тип дела/Тип объекта стало еще удобнее пользоваться:
    • Теперь под наименованием каждого поля в фильтре Еще фильтры отображается название блока, что позволяет точно выбрать нужное поле для фильтрации:
      • Наименования полей отображаются вместе с названиями блоков, в которых они использованы, в следующих разделах:
        • Список объектов
        • Календарь и вкладка Календарь в карточках объектов
        • При настройке колонок в секциях Таблица и блоках с типом Таблица
      • В списке Еще фильтры поле отображается в виде отдельного значения для каждого уникального блока, где оно используется:
        • При переиспользовании блока с полем, поле отображается один раз с названием этого блока
        • При копировании блока с полем, поле отображается отдельно для блока и его копий
        • При переиспользовании поля:
          • В других блоках, поле отображается отдельно для каждого уникального блока
          • В одном блоке, значение в саджесте для поля отображается отдельно для каждого поля, используемого в блоке.
        • Список полей отсортирован:
          • По возрастанию (0-9, А-Я, A-Z)
          • По наименованию блока по возрастанию при наличии полей с одинаковым названием
      • При выборе значений фильтрация будет выполнена:
        • По тем объектам, в которых содержится поле с соответствующим блоком
        • По всем объектам, содержащим переиспользованный блок с полем
      • Поиск значений в фильтре выполняется по названию фильтра (поля) и названию блока
      • В списке объектов в окне настроек колонок и при настройке колонок в секциях Таблица и блоках с типом Таблица:
        • Для кастомных полей, доступных для добавления в колонку, отображаются названия блоков
        • Для системных полей объектов название блока не отображается
    • При наведении курсора на фильтры Еще фильтры и Тип объекта отображается всплывающая подсказка с названием фильтра, наименованиями поля/типа объекта и счетчик значений (если выбрано несколько вариантов)
    • Для приведения системных фильтров к единообразию:
      • Переименовали название фильтра Тип дела в Тип объекта в разделах с объектами
      • В фильтре Тип объекта в календарях теперь отображается название класса объекта для каждого доступного в списке типа объекта

  • Исправили отображение фильтров на панели фильтрации во всех разделах Case.one:
    • После выбора значения для фильтра на панели фильтрации отображаются:
      • Название фильтра (поля)
      • Выбранное значение
      • Счетчик выбранных значений
    • При наведении курсора мыши на фильтр на панели фильтрации отображается всплывающая подсказка с информацией:
      • Полное название первого выбранного значения и счетчик выбранных значений (если фильтр настроен)
      • Полное название фильтра (поля)

Улучшения и исправления

  • Изменили логику закрытия меню и окон, вызываемых из меню-троеточия:
    • Если открыто родительское окно из контекстного меню, при нажатии курсором мыши на свободную область, оно будет закрыто
    • Если открыто вложенное окно, при нажатии курсором мыши на свободную область, вложенное окно будет закрыто, отобразится родительское окно/меню
    • При открытии другого окна из контекстного меню, ранее открытое окно будет закрыто (вне зависимости от того, является ли оно вложенным или родительским)
  • Исправили ошибку проверки участника по ИНН, если был введен некорректный ИНН — теперь при исправлении ИНН участника, запросы на получение данных из Casebook отправляются корректно.
  • Исправили ошибку с кодом 500, которая возникала в сценариях по расписанию при попытке сохранить условия и правила запуска на вкладке Настройки, если в качестве условий были выбраны названия карточек объектов.
  • Устранили ошибку для конфигурации с использованием СУБД Postgres, которая возникала при добавлении содержимого файлов в полнотекстовый поиск (при индексации) — теперь полнотекстовый поиск по документу учитывает только 1 Мб текстовых данных в документе от его начала (если размер текста в документе 1 Мб или меньше, документ будет индексирован полностью).
  • Исправили отображение уведомления об ограничении на количество блоков и строк при открытии вкладки с количеством блоков/строк, превышающим установленное ограничение.
  • Исправили возможность открытия события по ссылке при отсутствии прав на раздел События — теперь при отсутствии прав событие не будет открыто, выполнится переход на первый доступный раздел.
  • Исправили ошибку редактирования карточки объекта, возникающую из-за появления дубликатов простых блоков.
  • Поправили ошибку отображения календаря в режиме на день в клиентском портале, которая возникала при включении системного календаря Объекты.

Сценарии автоматизации

  • Добавили возможность использовать Node.js в качестве интерпретатора скриптов: 
    • В файл настройки конфигурации внесли специальную настройку, которая определяет доступность выбора интерпретатора на инстансе:
      • Если настройка включена, доступно отдельно выбрать использование интерпретатора Node.js 
      • Если настройка выключена (значение по умолчанию):
        • Скрипты и сценарии будут выполнены с использованием того интерпретатора, который настроен для инстанса (ClearScript или NiL.JS)
        • Вручную выбрать использование Node.js на инстансе недоступно
      • Настройка недоступна для SaaS-инстансов в целях безопасности
      • Для SaaS-инстансов возможно доставить Node.js скрипты в составе подписанных модулей, за разработку которых отвечают доверенные разработчики модулей
    • При включенной настройке в Case.one доступно управление флагом Использовать Node.js:
      • Флаг Использовать Node.js отображается:
        • На форме создания скрипта
        • В новом блоке Скрипты на вкладке Настройки скриптов и любых типов сценариев автоматизации 
      • По умолчанию флаг снят
      • При установке флага скрипт/сценарий будет выполнен с использованием Node.js 
      • При создании:
        • Скрипта — флаг можно установить на форме создания
        • Сценариев — флаг не отображается (использование Node.js будет отключено по умолчанию)
      • Установить или снять флаг Использовать Node.js для скриптов и сценариев можно в любой момент на вкладке Настройки при наличии прав
    • При выключенной настройке в Case.one недоступно (отобразится ошибка: Произошла ошибка. Создание и редактирование NodeJS скриптов недоступно на инстансе):
      • Установить или снять флаг Использовать Node.js на форме создания скрипта и в настройках сценариев и скриптов
      • Изменить скрипт, если в нем установлен флаг Использовать Node.js
      • Добавить или изменить оператор Запустить скрипт в сценариях, где установлен флаг Использовать Node.js

  • Добавили возможность локальной отладки скриптов — теперь доступно выгрузить файлы с путями и ключами доступа к конкретному инстансу и сразу в процессе написания скрипта проверить его работоспособность, чтобы учесть все нюансы и сразу обнаружить неточности:
    • В качестве ключа доступа используется токен, который служит для bearer-аутентификации в API
    • В редакторе скрипта из меню-троеточия теперь доступно:
      • Скачать контекст для отладки — скачивание json-файла с переменными контекста исполнения скрипта
      • Скачать скрипты для отладки — скачивание архива в формате *.zip с файлами
    • Структура и содержимое файла и архива генерируются автоматически при скачивании

  • Поскольку мы изменили логику добавления напоминаний в событиях и задачах, теперь в операторе Создать → Событие/Задача напоминания доступно добавить на отдельной форме с помощью кнопки :
    • На форме по умолчанию отображается строка Добавить напоминание
    • Для задач можно настроить напоминания с условиями В срок выполнения задачи, За и Через
    • Для событий можно настроить напоминания с условиями Во время начала события и За
    • Настройка условий, интервалов и периодов аналогичны настройкам на форме задач и событий
    • После добавления все напоминания отображаются в поле через запятую в формате (если все напоминания не поместились в поле, они отображаются всплывающей подсказкой при наведении курсора мыши):
      • Для событий с условием За и задач с условиями За и Через<За/Через><интервал><период>
      • Если выбрано напоминание в момент выполнения задачи: В срок выполнения задачи
      • Если выбрано напоминание при начале события: Во время начала события

  • Для операторов Ожидать и Если изменили логику работы условий Текст содержит и Текст не содержит:
    • Изменили наименования условий на Равно и Не равно
    • При добавлении условия по полю Равно (Текст содержит) или Не равно (Текст не содержит) проверка значения выполняется без учета регистра

Настройка таблиц

Чтобы сделать работу с таблицами еще удобнее, добавили дополнительные настройки таблиц в конструкторе объектов и секций:

  • Предпросмотр объектов — вы можете настроить, как будет открываться объект при нажатии на его наименование в таблице:
    • Если флаг снят (значение по умолчанию), будет открыта карточка объекта в новой вкладке (как и прежде)
    • Если флаг установлен, будет открыта форма предпросмотра объекта с информацией из вкладок ОсновноеСобытия и созданных вкладок
  • Разрешить создавать объекты — при установке флага (по умолчанию снят) пользователю будет доступно создавать новые карточки объектов при просмотре таблицы.
  • Создаваемый тип объекта — позволяет указать тип объекта, который будет выбран при создании карточки по умолчанию:
    • Поле отображается, если установлен флаг Разрешить создавать объекты
    • Доступен выбор одного значения из типов объектов класса объекта, который выбран в таблице в качестве исходного объекта
    • По умолчанию значение не выбрано
  • Связывающее поле — позволяет установить связь между карточкой объекта, в который добавлена таблица, и создаваемой карточкой объекта:
    • Поле недоступно при настройке секции с типом Таблица
    • Поле отображается, если выбрано значение в поле Создаваемый тип объекта
    • Доступен выбор значений из полей с типом Объект-Объект, которые сохранены в создаваемом типе объекта
    • Для отображения в таблице карточки объекта только связанных объектов:
      • В настройках таблицы необходимо добавить фильтрацию по следующим параметрам:
        • Поле — поле с форматом Объект-Объект, которое выбрано в качестве связывающего поля
        • Фильтровать по — Выбранные значения
        • Значение — Текущий объект
      • В карточках объектов с типом, который указан в качестве создаваемого по умолчанию, в выбранном поле с типом Объект-Объект должен быть указан объект, в типе которого настроена таблица
    • При удалении поля, указанного в качестве связующего:
      • Отобразится уведомление с перечнем мест использования поля
      • Значение в поле Связывающее поле будет сброшено

При настройке таблиц рекомендуем указывать высоту блока таблицы вручную, чтобы на форме предпросмотра объектов, при наличии в них таблиц, список объектов не был слишком длинным.



Улучшения и исправления

  • Поправили некорректное отображение настроек инстанса при формировании шаблона импорта контактов — теперь в шаблоне импорта контактов корректно учитываются языковые настройки инстанса.
  • Теперь при копировании блоков, где есть поля зависимыми полями из справочника, уровни справочника копируются корректно.
  • Поправили работу меню в разделе Администрирование — Роли при включенной интеграции с SSO Keycloak — теперь после выбора в меню раздела Роли меню автоматически будет скрыто (как и при переходе в другие полностраничные разделы: ГруппыОбъектыСправочники).
  • Исправили ошибку, которая возникала при попытке скачать шаблон импорта объектов.
  • Теперь используется единая страница с описанием ошибок при наличии внешних интеграций для авторизации (например, Active Directory и OpenId).

Технические изменения

  • В файл настройки конфигурации в секцию Custom добавили параметр AllowEditNodeJsScripts, который определяет возможность редактирования Node.js скриптов:
    • Если установлено значение true, на инстансе можно отдельно выбрать использование интерпретатора Node.js
    • Если установлено значение false (по умолчанию):
      • Скрипты и сценарии будут выполнены с использованием того интерпретатора, который настроен для инстанса (ClearScript или NiL.JS)
      • Вручную выбрать использование Node.js на инстансе недоступно
  • Чтобы обеспечить защиту от несанкционированного изменения инстансов с помощью модулей, и в целях контроля изменений модулей только доверенными разработчиками, мы добавили возможность подписи модулей.
  • В рамках проведения рефакторинга тяжелых запросов (RequestLoggingMiddleware) добавили параметры логирования в секции Custom и RequestLogging.
  • Перешли на RabbitMQ версии 4.0:
    • Обновление на версию 4.0 возможно только с версии 3.13.
    • Если текущая версия RabbitMQ ниже 3.13, необходимо выполнить последовательное обновление версий (например: 3.10 → 3.11 → 3.12 → 3.13 → 4.0):
  • Теперь возможно отключить проверку SSL-сертификатов для fetch-запросов в рамках сценариев (например, для получения данных с проверенных сайтов с невалидными сертификатами) — не рекомендуем использовать данную функциональность без крайней необходимости.
  • Добавили новую очередь emails для обработки событий отправки различных email-уведомлений:
    • Для настройки очереди доступны следующие параметры (значения по умолчанию):
      • Количество обработчиков очереди — рассчитывается относительно количества ядер CPU на сервере приложений с множителем 0.5
      • Таймаут обработки сообщения — 30 сек
    • Очередь добавлена через код, поэтому добавление очереди в секцию OldRabbitMQ:Queues файла appsettings.json не обязательно
    • При наличии большого потока сообщений (например, при массовой операции, результатом которой происходит рассылка email-уведомлений), в результате которого накопилась очередь, рекомендуется рассмотреть возможность изменения настроек по умолчанию, как увеличение количества консьюмеров

Улучшения и исправления

  • Из очереди default RabbitMQ вынесли в отдельные очереди:
    • Отправку email-сообщений, чтобы не возникало задержек в работе Case.one из-за недоступности или медленной работы SMTP-сервера
    • Обработку сообщений типа SerializedBlocksUpdatedHandler, чтобы разгрузить очередь default
  • Изменили логику AsyncRequestService при отмене запроса, что приводило к падениям при обработке сообщений из RabbitMQ, если они поступали с задержкой — теперь вместо физического удаления выполняется установка финальных статусов (CompletedFailedCanceled) и отложенная очистка через фоновую задачу.
  • Заменили DI-контейнеры Autofac и MS DI на ServiceCollection, чтобы снизить потребление ресурсов CPU и RAM и повысить производительность.
  • Выполнили рефакторинг механизмов аутентификации и авторизации.
  • Добавили кэширование в фильтр авторизации (HttpAuthorizeFilter) для минимизации запросов к БД.
  • Обновили Swagger UI для повышения скорости скорость загрузки версий API и Swashbuckle.AspNetCore до версии 8.1.4 для корректного формирования выгрузки документации.
  • Исключили возможность выполнения XSS-атаки при вызове скрипта, содержащего уведомление, через API.
  • В настройке NewReportRequestEmails файла конфигурации изменили email, на который будут отправляться запросы системного отчета,  на support_caseone@pravo.tech.