Создано: 18 марта 2026 г.

Полные транскрипции встреч, быстрая авторизация и чистая аналитика

Этот релиз устраняет три источника потери данных: бот больше не обрезает конец встреч, ворклоги не дублируются при реорганизации борд проектов в Jira, а авторизация не перегружает базу данных лишними запросами. Интерфейс стал отзывчивее, а отчеты точнее.

Даты релизов: 17.03.2026

Улучшения Conference Bot

Бот теперь ждет реального завершения обсуждения вместо выхода по плановому времени. Изменена логика выхода Conference Bot из встреч – вместо выхода строго по плановому окончанию митинга бот остается в звонке минимум на 25% дольше запланированной длительности и проверяет активность транскрипции. Выход происходит только при отсутствии новых транскрипций в течение 5 минут после планового окончания, что подтверждает реальное завершение обсуждения. 

КАК ВЛИЯЕТ: команды, использующие Conference Bot, теперь получают полные транскрипции затянувшихся встреч без потери критичного контента. Устранена проблема обрезания последних 10-20 минут обсуждения, когда важнейшие выводы, решения и поручения озвучивались в конце встречи после планового времени окончания, но бот не фиксировал их, так как покидал звонок по таймеру. Теперь овертаймы и продленные митинги записываются целиком, ИИ-саммари содержат полный контекст принятых решений и обязательств команды. Это критично для последующего анализа через ПМ агента, особенно для стратегических созвонов с клиентами или планингов, где обсуждение регулярно выходит за рамки отведенного времени.

Технические улучшения

Реализован stateless JWT-based механизм авторизации с полной иерархией ролей и разрешений пользователя. Архитектура авторизации переработана: сервер больше не хранит состояние сессий между запросами. JWT-токены теперь содержат полную иерархию ролей и разрешений пользователя, включая унаследованные права. Все это вычисляется рекурсивно на бэкенде в момент выпуска токена и включается в его полезную нагрузку (payload). Все микросервисы обновлены: проверка прав доступа выполняется исключительно на основе JWT-claims, без обращения к базе данных при каждом запросе. Помимо этого, обновлена и задокументирована структура полезной нагрузки, добавлена поддержка токенов обновления (refresh tokens) и принудительного завершения сессии при изменении ролей или разрешений пользователя.

КАК ВЛИЯЕТ: Система получила кратное улучшение производительности и масштабируемости. Устранена критическая проблема избыточной нагрузки: ранее каждый запрос требовал множества обращений к сервисам для получения токенов, ролей, разрешений и данных пользователя. Теперь авторизация выполняется мгновенно – исключительно через проверку JWT-claims, без запросов к базе данных. Кодовая база микросервисов существенно упрощена благодаря единому механизму авторизации. На стороне фронтенда исчезла необходимость во множественных API-запросах для проверки прав доступа – интерфейс стал заметно отзывчивее.

Обеспечена поддержка единого конфига NATS_HOSTS на всех серверах для отказоустойчивого подключения к кластеру. Подход к настройке NATS-подключения унифицирован: вместо разрозненных вариантов – NATS_URL, NATS_HOSTS в виде строки и других – введен единый параметр NATS_HOSTS как массив строк (список хостов). Все существующие сервисы обновлены под новый формат, обратная совместимость обеспечена автоматическим преобразованием строки с разделителями-запятыми в список. Шаблон fastapi_template обновлен – новые сервисы будут автоматически следовать этому стандарту.

Прочие улучшения

Устранено создание дубликатов ворклогов и артефактов при перемещении задач между проектами или бордами Jira. Исправлена  проблема дублирования данных при переносе задач между рабочими пространствами в Jira. Теперь при перемещении задачи из одной борды в другую (например, DS-*** → KIG-***) система обновляет ключ задачи и переносит все связанные ворклоги и артефакты в новую борду вместо создания дубликатов.

КАК ВЛИЯЕТ: Пользователи избавились от искажения отчетности при реорганизации проектов. Устранена проблема, когда все ворклоги, которые были зарегистрированы ДО переноса, превращались в дубликаты, привязанные одновременно к старой и новой задаче. Это приводило к завышению часов сотрудников в отчетах, некорректным расчетам Labor Cost и Margin, путанице HR при начислении зарплат и искажению исторических данных при просмотре прошлогодних отчетов. Теперь все ворклоги корректно переносятся в новый проект вместе с задачей, обеспечивая точность аналитики при любых изменениях структуры бордов в Jira. Это критично для enterprise-клиентов с динамичной реорганизацией команд и проектов.

На странице Colleagues колонка "Projects" и фильтр теперь показывают все фактические проекты из SoW, независимо от прав доступа пользователя. Исправлена логика отображения проектов на странице Colleagues – колонка "Projects" теперь показывает все фактические проекты сотрудника из текущего SOW, независимо от того, имеет ли пользователь доступ к этим проектам. Фильтр Project теперь содержит полный список фактических проектов всех сотрудников для возможности поиска коллег по любому проекту – ограничение доступа применяется только при попытке перехода в проект через клик. Также обеспечена корректная видимость данных для разных ролей.

На странице Colleagues добавлен динамический счетчик сотрудников, синхронизированный с составом отображаемой таблицы. Реализован динамический счетчик сотрудников – по умолчанию он показывает количество активных сотрудников, занятых в данный момент, но при ввключении переключателя "Show inactive" значение обновляется и отражает общее число сотрудников – как активных, так и уволенных.

Исправлены критические ошибки в dag_read_calendar_and_meetings парсинга календарей и встреч. Восстановлена работа DAG dag_read_calendar_and_meetings – исправлены ошибки парсинга данных Google Calendar, обеспечена корректная обработка событий и сохранение встреч в базу данных. Теперь DAG успешно отрабатывает и передает данные в систему для отображения в интерфейсе Meetings.