Приховати картку ATF повністю, коли всі поля зафіксовані за допомогою прикладної моделі
Пробе майстер модель кінцевої точки і зафіксувати прикладниймодель org ID
- Замініть нанесеніModel.source-накладні ворота з прямим зондом /api/security/master-model на mount; r.ok=false (409) означає org регулюється галузевим типом — ...
Gate censorship tab options by applied model constraints
- Hide EDIT MASTER MODEL button when org is governed by a branch type (use appliedModel.source instead of unreliable org context branchTypeID) - Hide ATF fiel...
Mark-as-read and message fetch for shared/member mailboxes
Classic mode now loads shared mailbox messages via the correct /messages/{folder} endpoint (was calling the non-existent /conversations endpoint). Fetching a fu...
Mark-as-read for shared and member mailboxes
EmailController.setFlags now accepts an optional mailboxId query param and routes through resolveProviderWithMailbox so member-mailbox flags are set against the...
Use extensionId as external ID, not Relay node id
FreePBX returns the same Relay id (ZXh0ZW5zaW9uOg== = "extension:") for every extension because the id field is not populated. Using it caused all extensions to...
Handle IMAPInputStream в getMessage для запобігання ClassCastException
JavaMail може повернути IMAPInputStream замість декодованого String part.getContent() при вмісті повідомлення не було попередньо фіксовано. Про нас прямо (Strin...
Підвищіть ТЛ від 90-х до 300-х, щоб запобігти помилковим OFFLINE на таблиці
Перевірити всі GQL запитів / мутацій проти інтроспектування живої схеми
Перевірено будь-яке ім'я поля та тип проти фактичного FreePBX 17 schema. Повний набір корекцій: Запити: - fetchAllExtensions: видалити недосвідчений поле "voic...
Пройдіть вибранийФолдер для ThreadDetailView так електронної пошти: забір змінних вогнів з реальною папкою
розмова.папер завжди невизнаний, тому що Java ConversationEntity має папкуІд (текст[]) не поле для папки. Це викликане навантаженняThread to позначка викликуПер...
Коректне ім'я поля GraphQL до fetchAsteriskDetails
FreePBX API повертає "Дізнайомтесь з fetchAsteriskDetails?" — перейменуйте здоров’я перевірте запити та його доступ до даних відповідно.
Додавання головок XHR/Accept та підписки на String відповідь на клієнта GraphQL
Same візерунок як FreePBXTokenCache: додати X-Requested-With + Приймати: додаток/json щоб пригнічувати відповіді на переадресацію HTML FreePBX і переключити всі...
Виправлення поштових скриньок синхронізації на первинну поштову скриньку
Вимкніть за замовчуванням до першого пункту списку, оскільки вибрана поштова скринька ініціюється без поштових скриньокІд, що викликав поточний який не відповід...
Виміряти обмеження розміру файлу до 500MB
Spring Boot за замовчуванням ковпачок багатопартійні частини в 1MB, викликаючи фонове зображення не вдається 500 за запитом.getParts(). Матч служби безпеки існу...
Поверхня HTTP помилок, так що завантаження несправностей видно
Замінена безшумна консоля. Отже, користувач бачить реальну причину відмови (статус + відповідь) замість тихого приступу до оновлення підрахунку. Додано консолі....
Додати Accept +XHR головки і сиротка відповідь парі для токен кінцевої точки
FreePBX було відновлено текст/html, коли називається кластером DNS, оскільки Хостовий заголовок не збігався з налаштованим PBX HOSTNAME. Додати Прийняття: додат...
Привод мінімізований вхід з анімацією
Переключення animate={...} до animate={tabControls} зламав запис анімація: tabControls не має черги, тому кнопка залишається на початковій сторінці { y: 100 } Д...
Правильні OAuth2 рядки для FreePBX API
FreePBX є провідними ідентифікаторами: 'gql' (all GraphQL) і 'rest' (All REST). Формат 'gql:read' означає GQL для модуля Ім'я 'read', який не існує, викликаючи ...
Expose порт 8088 безпосередньо на службі кластерів
Сервіс тільки мав порт 80→8088 картографування. Внутрішні послуги з використанням ******************************************************************************...
Перевірити зворотний endingCount, знизити кількість клієнтів
Backend pendingCount тепер непрочитано (counts Support TICKET сеанси з повідомленнями, що за останній перегляд власника. Коли агент відкриває квиток, markAsRead...
Додати відсутній не2ban-config ConfigMap для k1m1
Посилання на розгортання не вдалося2ban-config ConfigMap (jail.local + asterisk-security.conf) але не існує, блокуючи под ГораВум. Налаштування та запобігання F...
MarkAsRead після того, як агент надішлемо таким чином
На підтримку квитків зберігаються як відвідувачі, так і агентські повідомлення так само системаМембер, тому непрочитаний запит є учасником-агностичним і повніст...
Підтримувані квитки, необхідні для членів-агностичних нечитальних підрахунків
Повідомлень відвідувачів про опорні квитки зберігаються в одній системі що агент автентифікує як, так і існуюча CHAT-сесія Запити — які виключити m.member.id = ...
Пропустіть папку для завантаження кнопки "Тирецька птиця"
loadThread takes (threadId, папка); кнопка повторення помилок тільки пропущена ниткаІд, поломка камо-інтернал. Зберіть виклик підпис.
Правильна JsonIdentity Інформація про нерухомість від 'uniqueId' to 'id'
Про це заявив @JsonIdentityInfo(property = "uniqueId") фактичне первинне поле ключа називається 'id'. Джексон мус "Неможливо знайти майно з назвою 'uniqueId'" п...
Видалити SSR-охоронець, що викликає невідповідність гідратації; краплі SockJS для рідних WebSocket
- Герой.tsx: видалення віконної перевірки навколо ParticleField — ParticleField вже має ssr:false так, що охоронець виготовив сервер/клієнт дерево mismatch (Rea...
Очистити непрочитані показники при відкритті розмови
ThreadDetailView тепер надсилає повідомлення електронної пошти:змінюється за допомогою плагіна після маркуванняConversationRead усувається так, що MailButton re...
Move CORS to Traefik via kamo-middlewares, remove in-app CorsFilter
The CorsFilter @Bean in the Spring app was silently not applying headers after WebConfig.java was removed. CORS is now handled entirely at the Traefik layer by ...
Use /public/{mainDomain}-{tld} path matching actual MinIO bucket layout
The getThemePath() was generating /domain/{tld}/{split}/kamosite paths that don't exist in MinIO — theme files live in the public bucket under kamocrm-com/, bad...
Break min-w-0 chain to contain email scroll in body column only
Add min-w-0 to outer container and main content flex div so flex children cannot expand to email min-content width, which was causing the page-wide horizontal s...
Хоіст-провайдери вище ToolProviders
Коренева причина як чатWebSocketProvider hoist: supportTicketWindow Контакти ******** і Чатбокс дзвінки useUnread().markAsRead(), але обидва вікна інструментів ...
Add removeHydrationWarning and Fix break placeholder зображень
removeHydrationWarning on <html> запобігає похибці React #418 викликаний браузером розширення (наприклад, переклад, темний режим) мутування атрибутів HTML між S...
Allow /domain / шлях префікс на тему IngressRoute для CORS
The Theme config at Theme.kamocrm.com/domain/... не був представлений існуючі правила маршруту (тільки/громадський/і/внутрішній/внутрішній/внутрішній/внутрішній...
Видалити дублікати CorsFilter і смуга upstream CORS заголовки в шлюзу
WebConfig.java визначила другий борт CorsFilter з CorsConfig. скачати боби, ризикує дублікати заголовка писати. Видаливши його так тільки один CorsFilter існує....
Видалити дублікати CorsFilter bean, викликаючи подвійний доступ-Control-Allow-Origin заголовок
Виявлений парі CorsFilter викликало другий фільтр CORS з пружиною підтримка безпеки (який використовує CorsConfigurationSource). Обидва фільтри вирішили шаблон ...
Видалити дебюг консолі.log заяви і додати відсутні маршрути
Видаліть всі тимчасові дебати, додані під час відстеження WebSocket з Чатбокс, Квиток, членItem, чатTool і useChatWebSocket; додати перенаправлення сторінок для...
Запобігти заголовку повідомлення від розширення стовпця на довгих адресах
У лівій гнучкій дитині головки не було хв-w-0, тому довгий нерозривний лист Адреси в З/Т/КЦ змусили його ширину, щоб виростити, перетягування заголовок (і макет...
Hoist ChatWebSocketProvider вище ІнструментПровідувач
ІнструментДок (і його вікна інструментів, такі як SupportTicketWindow → КвитокЧай) монтується всередині ToolProviders, який sits ABOVE PresenceWrapper в дереві ...
Краплі Shadow DOM в e-mail рендерера так переповнення-x-auto вогонь
Тіней ДОМ був першопричиною. Широкий вміст електронної пошти (фіксовані таблиці пропуску) всередині тіньового дерева, пофарбованого в минуле господаря, не докла...
Align ChatWebSocketContext Шлях імпорту для постачальника
КвитокКата та чатПовідомлення '@/app/contexts/...' alias при попередньому імпорті через відносну './contexts/...' шлях. Далі.js пучка лікує ці, як дві різні екз...
Примушені тіні хост містяться в лініях стилі + містять: макет
Клас на основі переливу кс-ауто на тіні не було надійного виграшу проти тіні ':host { всі: initial }' скидання, тому широкий email зміст (фіксовані таблиці проп...
Широкий вміст електронної пошти в тіні DOM, не зовні
Попередню спробу додавати перелив-кс-ауто до легких предків DOM не може зловити широкий вміст електронної пошти, тому що візуальний фарба переповнення не сприяє...
Використовуйте getHasAttachments() щоб відповідати типу обгортки Boolean
****** є Boolean (ваппер), так Ломбок генерує getHasAttachments() не єHasAttachments(). Останні тільки існує для примітивного булеана. Використовуйте Boolean.TR...
Розширити сканування репозиторій JPA, щоб включити торговий пакет
The новий kamo-shared-library приносить в *********** що вимагає ***********************************************************************************************...
Відновлення HashMap імпорт в чатWebSocketController
Попередній рефактор видалено HashMap імпорт, але ручка метод все ще побудує HashMap для завантаження облікового запису, викликаючи The Forgejo не може знайти си...
Додати min-w-0 до вмісту електронної пошти div, так що переповнення-x-auto вогонь
Без min-w-0, flex-col дитячий за замовчуванням min-width:auto вирішується min-content, даючи широкі таблиці електронної пошти, розширюйте стовпець ширина. Зовні...
Видалити дублікати підключенняStomp виклик в sendMessage
Коли перше повідомлення створює нову сеанс, наSessionCreated оновлення пропси які тригери використовуютьЕффект для підключення викликуStomp. Вхідний дзвінок був...
Проактивно створити споживача НАТС при створенні сеансу, щоб запобігти втраті повідомлень
Попередньо споживачі натискають на NATS JetStream лише тоді, коли клієнт STOMP відправлено /app/chat/subscribe. З DeliverPolicy. Нові, будь-які повідомлення опу...
Закрити розрив від'єднання, що викликає скидання повідомлень в режимі реального часу
Видаліть ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...
Користувач системи Allow для управління брендингом org і фіксації логотипу
- Додати обхід системи як перший охоронець в каналіОрганізаціяБрендинг так платформи системний користувач має повне управління брендингом над усіма непарентними...
Як ви бачите відправлення?
Кожен з цих оновлень землі в робочому просторі автоматично. Почати вільний час і дивитися його на тиждень після тижня.