Прекратите дублировать всплывающие окна чата для одного и того же разговора
Инструмент-окно dedup только точно сопоставляется один пользовательский ключ против Асинхронизированные окнаRef, поэтому один и тот же чат 1:1 открывался дважды...
Восстановление против kamo-shared-library rights-waterfall fix (5f20d29)
CI клонирует и строит библиотеку из источника, так что это пустое обязательство Перезапускает сборку, чтобы получить многоуровневое разрешение прав. На сапогах ...
Показать все группы разрешений включенных приложений в названии должности и редакторах отделов
JobTitleManager и DepartmentManager предоставили только две группы разрешений. Общие и CRM — так что ******************* права невидимы и Неотредактируемый там,...
Решите права членов как истинный водопад вместо NUKE-всегда-победителей
Эффективные права вычислялись путем складывания каждого источника (роли, отдел, работа). Заголовок, участник) в одну карту, где всегда побеждала NUKE. Это означ...
Вернуть безопасность Поставщик для самоуказания; член самовосстановления применяет права
Изменились две основные проблемы, связанные с изменением зеркала поставщика безопасности: 1. Вступление в качестве члена-системы потерпело неудачу в связи с "о...
Обновить статус провайдера, когда всплывающее окно OAuth закрывается
Провайдер теперь перенаправляет на обратный вызов api-gateway (другого происхождения). Поэтому его сообщение может не пройти проверку происхождения открывателя....
Публичный пропуск по электронной почте OAuth provider callback
Вперед, вперед ******************* В адрес электронной почты (ползает по ауту, не перенаправляет после), отражая обратный вызов RingCentral OAuth. Это фиксирова...
Fixed public redirect + gateway-forwarded callback (недоступная ссылка)
Платформа электронной почты OAuth (Microsoft 365 / Google / Zoho) не имела действительной общедоступности перенаправление URI: перенаправление было получено из ...
Обслуживать редактор электронной подписи PDF для любого преобразованного дока, в том числе нативных PDF-файлов
Редактор электронной подписи (DocumentEditor → PdfCanvas / PageThumbnailSidebar) конвертированный документ, а не только файлы, загруженные через поток sig-templ...
My Docs использует MY DOCS ordinal (3), а не enum id (4)
Бэкэнд разрешает ImageAssocType через «значения () [assocType]» (обычный индекс) и продолжает его @Enumerated (ORDINAL). Каждая поверхность изображения проходит...
Преобразовать дублированные документы, чтобы можно было редактировать электронную подпись
Когда загруженные байты файла соответствуют существующему ImgDat, путь dedup (существующий регистр) повторно использовал этот пункт дословно и никогда не запуск...
Вернуться 200 Ложь для неконфигурированных возможностей
GET/api/voip/capabilities бросила ProviderNotConfiguredException (422) Org не имела провайдера телефонов, регистрируя ошибку красной консоли на каждой загрузке ...
Остановить ошибки 404/422 консоли для ненастроенных навигационных и телефонных сетей
Прочитайте конечную точку сбора ui-предпочтений (всегда 200) для начальной точки. Нагрузка navLayout вместо одноключевого GET, который 404s имеет Никогда не нас...
Упреждающее предоставление псевдонимов только для браузера (media.*)
Механизм обнаружения лог-сканирования никогда не сможет загрузить псевдоним «медиа»: он С браузером связываются только через подресурс WebSocket/XHR. (SockJS/ws...
Gate ведет контактную информацию по заданию + новые права на конфиденциальность
Зеркало трех новых прав CRM. На главной странице детали, маска / блокировка Основные поля контактов, почтовый адрес и адрес собственности для потенциальных клие...
Обеспечение соблюдения прав на конфиденциальность контактной информации
getAllLeads теперь возвращает LeadListDTO и скрывает неназначенные лиды от участников без VIEW UNASSIGNED LEADS. getLeadById маски контактные Информация (сохран...
Ведущие права на конфиденциальность контактной информации + бережливый список DTO
Добавить три права CRM (161-163): "Назначенные другим: Просмотр/Редактирование свинца Контактная информация" и "Посмотреть неназначенные лидеры. Добавить LeadLi...
Интерпретировать блокировку LAST EDIT AT как UTC для истечения срока действия era-millis
dbNow() теперь возвращает настенные часы DB-UTC (теперь()::timestamp), поэтому восстановите абсолютный мгновенно с ToInstant (UTC) вместо зоны по умолчанию JVM ...
DbNow() cast now()->::timestamp (TIMESTAMPTZ->Instant break LocalDateTime)
SELECT now() возвращает TIMESTAMPTZ, который Hibernate материализует как java.time. мгновенный и не может отлить в заявленный тип возврата LocalDateTime — бросо...
Отправка типа членства из /member и /team Paths
/регистрация команды создает TEAM MEMBER (созданный PROSPECT, ожидающий активации администратора); /member Записи создают участника. RegisterFlow принимает рекв...
/team create a Team MEMBER (PROSPECT), /member create a MEMBER
Публичная регистрация теперь чтит участника Тип сайта реестра отправляет (от / участника) vs /team path: /team создает TEAM MEMBER — как PROSPECT, поэтому админ...
Фильтр агента показывает имя пользователя + расширение телефона, а не электронную почту
Выпадающий агент пометил каждого товарища по команде своей электронной почтой, потому что загрузчик Прочитать имя / Last Ключи имен, которые бэкэнд никогда не о...
Расширение рабочего телефона членов команды в подрядчиках
Фильтр /leads Agent нуждается в расширении рабочего телефона для маркировки параметров Имя (8080). Расширение уже существует в TeamMember. (getPhoneWorkExtensio...
Всплывающие окна с поддержкой запросов показывают общие темы родитель-org
Укажите тему создания билета в новом разделе /api/support/topics/available endpoint (own-org + родительские темы) чтобы пользователи Child-org могли связаться с...
Surface parent-org поделился темами во всплывающем файле поддержки запросов
Пользователи Child-org не могут видеть общие темы поддержки своих родителей (asignToOwnOrg=false) при запросе поддержки, потому что всплывающее окно Появились с...
Правильный инвертированный вопрос родительской темы
Тематический запрос child-org, отфильтрованный на assignToOwnOrg=TRUE когда он должен возвращать темы, разделённые с детскими организациями (назначение ToOwnOrg...
Новые детские организации наследуют поставщика безопасности своих родителей
При создании детской организации из камо-внутренней, установите новый поставщик безопасности организации на Поставщик безопасности родительской организации (орг...
Показать уведомление, связанное с учетной записью на ?linked=1
Когда регистрация связывает существующую учетную запись с новой организацией, она перенаправляется сюда с ?linked=1. Show "У вас уже есть учетная запись Kamo - ...
Обработка ответов, связанных с учетной записью, для существующих пользователей
Когда введенное электронное письмо уже принадлежит учетной записи ACTIVE, бэкэнд связывает это Присоединяйтесь и возвращайте ACCOUNT LINKED. Маршрут этих пользо...
Wire up Member/team-member create + Prospect-gate
- Добавить недостающие прокси-маршруты POST/api/security/members/create и «Создай-команда-член» (эти 405-е раньше, так что творение никогда не доходило до бэкэн...
Повторное использование существующих пользователей, зеркало для SecurityProvider, вход участника команды Gate
Повторное использование (нет дублирующих учетных записей для одного и того же лица): MemberCreateController повторно использует существующего пользователя по эл...
Security Provider Membership Зеркало + повторное использование / закладка
**************** Пользователь: зеркало пользователя в Org's securityProvider org как базовый член (отредактированный; no-op, когда организация Защищает себя или...
Отправьте имя хозяина регистранта в тело, чтобы счет попал под правильную организацию
Разрешенная организация была доступна на клиенте, но никогда не отправлялась на бэкэнд. Орг был передан только неявно через X-Forwarded-Host, который входил в н...
Файл новых учетных записей под управлением домена, а не kamocrm
/регистр связывает орг нового члена с хостом запроса, но сигнал орга Никогда не переживал хоп: kamo-регистрируйте прокси-серверы при каждой регистрации в общем ...
Resolve org-by-domain с самым глубоким псевдонимом
Добавить ******************* точный домен сопоставить, затем отбросить самую глубокую этикетку один раз (register.optionone.com -> optionone.com) Таким образом,...
Прекратите трясти порт просмотра в браузерах с классическими полосами прокрутки
На машинах, чей Chrome использует макетные (не накладные) полосы прокрутки, Страницы входа/восстановления, мелькающие на обеих полосах прокрутки. корень причина...
Вкладка Wire Tasks для реального бэкэнда + удалите действие + живой счет
Добавляет следующие прокси-маршруты для /leads/{id}/tasks[/{taskId}] addTask/updateTask/completeTask calls были 404ing, действие удаленияTask в поле «Запрос» Се...
REST API + TASK CHANGED в режиме реального времени
Внедряет бэкэнд /leads/view Tasks tab, который уже звонил, но никогда не существовало: GET/POST/PUT/DELETE **************************** (LeadTaskController + Le...
Предприятие LeadTask для выполнения последующих задач
Backs the /leads/view Tasks tab (ранее это была только фронтенд-заглушка без каких-либо заданий). настойчивость. LeadTask (стол LEAD TASK) отражает форму интерф...
Сетка данных в реальном времени + вид в реальном времени с замками редактирования на экране
/leads grid теперь полностью работает через websocket (NATS→STOMP): строки Добавить/удалить/обновить против активного фильтра автоматически и измененные ячейки ...
Org-guard - подписка в режиме реального времени /topic/leads/rt/{orgId}
Cross-tenant SUBSCRIBE Guard для новой ведущей темы в реальном времени, отражающей существующий/топический/социальный/кормовой охранник: член может подписаться ...
Per-pane edit-lock REST API + автоматический уборщик
Добавление /api/security/leads/{id}/locks ******************************* LeadLockService: эксклюзивное бронирование на одну полосу, буферное сердцебиение, кото...
Публикация NATS в режиме реального времени + единица редактирования на каждую полосу
Опубликовать орг-сопровождаемые события на security.leads.rt.{orgId} (создан/обновлен/ удалены ключами с измененным полем, добавлена история) так что сетка /lea...
Удалить раздел «Недоступно для вас»
Прекратите всплывающие навигационные функции, к которым член не имеет доступа. Навигация Страница макета перечислила каждую скрытую опцию nav как заблокированны...
Общие конечные точки байта отказываются от MLOS для сторонних документов (vault/loan)
Общие конечные точки байта изображения (скачать / поток / объемно-скачать /) миниатюра) и агрегация связующего, разрешенная только на орг + числовой потолок заз...
Интегрируйте основные вкладки в заголовок на оставшихся страницах Style A
Последующие действия в стиле A→B, охватывающие страницы, которые не проходят через SettingsView: KbNavBar становится градиентным заголовком героя со статьями /...
Center the vendors-products status snackbar наверху
Таблетка состояния сохранения / обновления использовала якорь по умолчанию MUI (внизу слева, нет) Якорный набор) так что он выводится из центра. Поставьте якорь...
CreatePair является идемпотентом для основной пары (останавливает дублирование BorrowerPairs)
единственным абонентом CreatePair является волшебник, который «обеспечивает первичного заемщика». безоговорочно вставляется новая пара при каждом звонке, поэтом...
Переместить нижние строки в заголовк через социальные, импортные вкладки
Применяет обработку вендоров-таб к настройкам CRM братьев и сестер, чтобы Автономная строка «x • y» внизу больше не ест страницу недвижимости: - Социальные свя...
Как вы видите судоходство?
Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.