# Обновление v5.1.x
# Инструкция

:::danger
ВАЖНО! Перед обновлением на v5.1.x необходимо иметь версию Swarmica не ниже [v5.0.x](https://support.swarmica.com/article/ru/867-obnovlenie-v50x.html "v5.0.x")
:::

### Подготовка

Для обновления проверьте, что в конфигурационном файле .env поставлена версия:

```bash
~# grep VERSION .env
SW_FRONTEND_VERSION=v5.1.3
SW_BACKEND_VERSION=v5.1.3
```

### Обновление

:::tip
Будет прерывание сервиса на несколько минут, рекомендуется выполнять обновление в часы, когда использование системы минимально
:::

Выполните обновление с перезагрузкой системы:

```bash
docker compose pull
docker compose up -d --remove-orphans
docker compose restart traefik
```

### После обновления

После того, как все контейнеры запустятся и сервис станет доступен через веб-интерфейс, выполните пост-апгрейдные шаги:

1\. Запустите команду пост-старт, чтобы обновить файлы статики, индексы поиска и выполнить другие необходимые процедуры:

```bash
docker exec --env-file .env -it swarmica-django-1 python manage.py post_start
```

Эта команда может занять долгое время, в зависимости от количества данных в системе.

2\. Запустите команду восстановления шаблонов уведомлений о транскрипте чата, об упоминании пользователя и группы - устранена проблема с отображением HTML шаблона при упоминаниях пользователя или группы:

```bash
docker exec --env-file .env -it swarmica-django-1 python manage.py restore_email_templates -k ticket_chatmessage_public_transcript,ticket_user_mention,ticket_group_mention

```

3\. Запустите команду, которая изменит условия проверки выполнения шага внедрения KCS в разделе KCS Dashboard:

```bash
docker exec --env-file .env -it swarmica-django-1 python manage.py restore_kcs_tree_nodes -u oc4pQPy4Dbq1Qnwm
```

4\. Запустите команду, которая исправит неверно сохраненные условия сортировки списков тикетов, которые могли появиться из-за проблемы, устраненной в 5.1.х:

```bash
docker exec --env-file .env -it swarmica-django-1 python manage.py fix_filter_ordering
```

5\. Запустите очистку неиспользуемых данных:

```bash
docker system prune -a
```

:::tip
ВАЖНО! Убедитесь, что все контейнеры успешно запустились, перед запуском этой команды
:::

## ✨ Основные улучшения

*   🩺 **Healthcheck для интеграций** — теперь есть глобальный API проверки состояния каналов (включая Billmanager и VK), который помогает вовремя выявлять неполадки.
*   📧 **Email и уведомления**
    *   Сохранение ID сообщений для корректных заголовков *In-Reply-To*.
    *   Логирование параметров запросов для прозрачности.
    *   Возможность безопасно отклонять письма с подозрительными заголовками.
*   🔍 **Поиск и фильтры**
    *   Поиск сотрудников по названию группы.
    *   Логирование запросов на списки тикетов и пользователей.
*   📝 **Документация и инструменты**
    *   Перевод API-документации на английский язык.
    *   Документация по событиям статей, тикетов и пользователей.
*   🖊 **Редактор и формы**
    *   Поддержка drag-and-drop любых файлов в редакторе статей.
    *   Возможность изменять размер изображений и управлять галереей с клавиатуры.
    *   Поддержка множественного выбора организаций, групп, лицензий и продуктов в фильтрах и правилах автоназначения.
    *   Клиент теперь может переводить тикет в статус *Solved* при отправке комментария.
*   🎨 **UI и UX**
    *   Автопрокрутка списков при подгрузке элементов навыков и пользователей.
    *   Возможность отключить дефолтную группу в настройках.
*   ⚡ **Производительность и рефакторинг**
    *   Обновлён MDXEditor, Node.js до v22.
    *   Масштабный рефакторинг API-запросов (тикеты, пользователи, каналы, QA, SLA, лицензии и др.).
    *   Удалены устаревшие модули.

***

## 🔧 Исправленные ошибки

*   🗄 **Тикеты и автоназначение**
    *   Создание правильных каналов тикетов при форке.
    *   Исправлена логика назначения дефолтных групп.
    *   Устранена возможность редактировать или объединять тикеты в статусах *Closed* и *Deleted*.
    *   Добавлена поддержка массового закрытия и удаления тикетов.
*   💬 **Чаты и уведомления**
    *   Исправлена отправка транскриптов только для тикетов с чатами.
    *   Установлен правильный режим парсинга (HTML) для сообщений в Telegram.
    *   Исправлена передача упоминаний пользователей/групп в чатах.
*   📧 И**нтеграции**
    *   Исправлены ошибки при синхронизации с GitLab и Billmanager.
    *   Корректная обработка вложений и внешних ID для статей, организаций и лицензий.
*   🎨 **Интерфейс**
    *   Исправлены отображения на больших экранах (страница KCS, заголовки списков, поля в таблицах).
    *   Устранено наложение контролов на картинки в галерее.
*   📝 **Редактор и фильтры**
    *   Исправлены ошибки переключения вкладок в редакторе статей.
    *   Исправлено обнуление состояния KCS-статей после обновления тикета.
    *   Исправлена работа dropdown в шаблонах Quill (автоскролл, обработка клавиш).
*   🔒 **Роли и права**
    *   Добавлено ограничение на редактирование/клонирование фильтров активов только для Support-ролей.
    *   Исправлена видимость элементов UI автоназначения для внутренних пользователей.