Показать действия Canva только тогда, когда Canva можно использовать
Страница, ранее предложенная Create/Import/Generate-in-Canva рядом с "Canva" «Не настроено» уведомление — непоследовательно. Теперь панель инструментов постепен...
Эскизно-плановые материалы в процессе
Безголовая зачистка не может управлять миниатюрным конвейером ConversionService OTK, поэтому сгенерировать миниатюру Page-0 PNG через ImageIO сразу после хранен...
Постоянное сравнение секретов внутренней ауты (оракул времени)
Заменить String.equal на MessageDigest.isEqual, чтобы задержка ответа не могла X-Internal-Auth делится секретным байт за байтом. Широкий охват флота копировальн...
Постоянное сравнение секретов внутренней ауты (оракул времени)
Заменить String.equal на MessageDigest.isEqual, чтобы задержка ответа не могла X-Internal-Auth делится секретным байт за байтом. Широкий охват флота копировальн...
Постоянное сравнение секретов внутренней ауты (оракул времени)
Заменить String.equal на MessageDigest.isEqual, чтобы задержка ответа не могла X-Internal-Auth делится секретным байт за байтом. Широкий охват флота копировальн...
Постоянное сравнение секретов внутренней ауты (оракул времени)
Заменить String.equal на MessageDigest.isEqual, чтобы задержка ответа не могла X-Internal-Auth делится секретным байт за байтом. Широкий охват флота копировальн...
Регулярные графики генерации UI
Менеджер расписаний: создавать/список/удалять расписания (рецепт + ежедневно/еженедельно/ежемесячно +) час/день + необязательные цели автопоста + подпись; запущ...
Запланированное поколение — зачистка запускает рецепты по каденции
- CanvaScheduleController: CRUD для расписаний организаций (рецепт + каденция + час / день +) факультативные социальные цели, вычисления NextRunAt CanvaGenerati...
CanvaSchedule entity + repo (повторяющаяся генерация)
Регулярный график (рецепт + каденция + факультативные социальные цели) Атомный запрос, поэтому развертка MediaService выполняет каждый график один раз.
Расширяемая расшифровка Whisper на софтфонной голосовой почте + строки истории звонков
Каждая записанная строка (голосовая почта и история звонков) получает переключатель «Transcript», который Вычитает запись Whisper транскрипт по требованию и пок...
Сохранить + повторно использовать рецепты автозаполнения
TemplateAutofill: чипы «Спасенные рецепты» загружают шаблон + предварительно заполненное отображение; «Сохранить как рецепт» сохраняется текущий шаблон + значен...
Сохраненные рецепты автозаполнения CRUD (org-scoped)
CanvaRecipeController: GET/POST/api/media/canva/recipes + DELETE/{id} — сохранение/список/мягкое удаление названного шаблона бренда + отображение поля, приложен...
CanvaAutofillRecipe entity + repo (сохраненные рецепты автозаполнения)
Org-shared — связывание шаблона бренда Canva с значениями поля (буквально) текст или изображение Материала, поэтому стюарды могут повторно запустить стандартное...
/dev/shm 2Gi (безголовый Chrome должен >=2 ГБ) + ограничение 6Gi mem
10-конфигурный init от Jibri прерывается с «/dev/shm должен быть не менее 2 ГБ», когда shm 512Ми, сбив рекордер. Переключите tmpfs на 2Gi и ограничьте память 6G...
Добавить поле Material ID для создания формы, страницы деталей и импорта
Пропускает нулевой материал Id (макс 40) через тип Lead, leadsApi (создавать + обновлять запросы проводов) и совместно используемое системное поле leadFields Сп...
Знакомство с секретами **************** для записи глотка
Позволяет jibri finalize.sh аутентифицировать загрузку записи в MediaService; матчи Кластерное значение *** MediaService подтверждает.
Предоставление MediaService internal.auth.secret (mlos-internal-auth) для кратких писем
MediaService -> Потребности в электронной почте /api/email/templates/send INTERNAL AUTH SECRET соответствует внутреннему секрету EmailService.
Enterprise Autofill UI — шаблоны брендов для слияния данных
TemplateAutofill: выберите шаблон бренда Canva, заполните каждое поле буквальным текст, токен соответствия/орга (NMLS #, Раскрытие информации о равном жилье, им...
Автозаполнение предприятия — шаблоны бренда Data-merge
- CanvaApiClient: список шаблонов бренда (dataset=non empty), получить набор данных, Загрузка активов, создание / получение рабочих мест автозаполнения - CanvaC...
Persist Mapped Material ID на ручном импорте + прием API
Оба переключателя setDirectFieldOnCreateRequest не имеют чехла по умолчанию, поэтому Безымянная системаFieldPath тихо падает. Добавить материал Id case в ручной...
Добавить Material ID поле end-to-end в shared-lib
Добавляет обнуляемый материал с максимальным значением 40 шаров в Ведущую сущность (MATERIAL ID) VARCHAR(40)), регистрирует его в LeadHistoryFieldRegistry (кате...
Социальный атташе + электронная почта-материал + публичные ссылки
Распространение маркетинговых материалов, построенных по новому подписанному публично-URL шву. - МатериалыApi.publicLink(imgId) + /api/materials/link proxy - М...
Краткосрочные подписанные публичные URL-адреса для маркетинговых активов
Позволяет социальным провайдерам (Meta) и электронной почте получать определенный материал для ограниченного доступа. Окно, не обнажая приватное ведро для обраб...
Включите оба рабочих стола в каждый токен SSO, глубокую ссылку на выбранный
Каждый токен имеет только свое собственное соединение, поэтому повторно используемая сессия json браузера Не хватало другого -> открытие Windows после того, как...
Маршрут заемщика сдают по трубопроводу, чтобы он загорелся **************** (аудитория #3)
заемщик patchLoanFile подает заявку (DRAFT->APPLICATION TAKEN) **************************** Вместо необработанного обновления Статус файла установлен, поэтому П...
Первоклассный заемщик самостоятельно подает переход *******************
ДРАФТ → ПРИМЕЧАНИЕ ТАКЕН для заемщика (кредитная сторона, а не оператор, поэтому нет) LOS TAKE APPLICATION. Маршруты через переход () с ограниченным предикатом,...
Удалить + предварительный просмотр + импорт-файл-в-Canva
- удалить материал (с указанием MANAGE MATERIALS) с подтверждением - щелкните миниатюру, чтобы просмотреть ее в лайтбоксе «Импортировать файл» превращает PDF/PP...
Импорт файла в Canva как редактируемый дизайн
********************** (импорт бинарного дизайна) - CanvaController POST /imports (многочастный) → создание + оплата импортной работы → редактор Глубокая связь ...
Shared TranscriptionService + общая конечная точка; транскрибирование записей VOIP
- Извлеките многоразовую службу транскрипции (ffmpeg normalize -> whisper-asr) и универсальная конечная точка POST/api/conversion/transcribe, заменяющая специфи...
Обсуждение Recording + RecordingMetadata
Добавляет столбец TRANSCRIPT TEXT к записывающей сущности и выводит транскрипт **************************** (с обратной совместимостью) Таким образом, существую...
Загрузка Wrap-записи, чтобы MediaService компилировал
MinIOStorageService.upload бросает проверенное Исключение, которое не глотает () Пойманный и не объявленный — постройте перерыв поверх исправления. Оберните и В...
Проверить подпись Return-nav JWT; аккуратное обновление токена
CanvaJwtVerifier: проверьте сигнатуру Ed25519 в корреляции jwt Canva's JWKS (/connect/keys), плюс aud/exp/type; ключи, кэшированные ребенком. Return-nav теперь ...
MeetingParticipant.isGuest() (был getGuest, не будет компилироваться); переопределить транскрибировать в общую конечную точку
Участник встречи разоблачает Гость() (примитивный булевый геттер), а не Гость(). Также укажите суммарный транскрибируемый вызов на совместно используемом /api/c...
Сделайте шепот-аср независимо масштабируемым (HPA, многоузловый)
Удалите одноузловый штифт и переключитесь на кэш-память для каждой модели, чтобы стручки могли Расписание на любом узле и добавление HPA (мин 1/макс 4, CPU 75%,...
Переименовать статус клиента Guacamole в KamoDesktop
Отменять ******************************* «Подключение к Guacamole...» экран (и связанный с ним статус) читает KamoDesktop.
Правильный бренд Guacamole манифест версии поля
В Manifest используется guacManifestVersion:1.0; в пакетных расширениях используется guacamoleVersion. Неправильное поле заставило Гуакамоле отказаться от расши...
Запись проглатывания, удержания / квоты, использование хранилища, сводный конвейер
- MeetRecordingController: внутренний (X-Internal-Auth) глотающий конечную точку jibri Окончательная доработка.sh постов законченных записей. - MeetRecordingSer...
Образцы стендов для предварительного просмотра шаблона резюме
Добавляет образец Вариабельности для нового шаблона собрания-резюме, чтобы управляющий Предварительный просмотр UI отображает реалистичный контент.
Собрание-резюме канонический шаблон
Добавляет транзакционный шаблон «совещание-резюме» (субъект + фирменный HTML с {{roomName}} и сырой {{summaryHtml}} и регистрирует его в CANONICAL KEYS Семена н...
Прекратить двойное приложение ?target в маршруте SSO proxy
forwardToApi уже пересылает входящую строку запроса, поэтому пройдя путь с помощью ?target=produced **************** -> target='linux?target=linux -> 400 "Неизв...
Модуль модератора Prosody, шепот-аср, загрузка записи джибри
- Meet-prosody: версия-контроль пользовательских плагинов ConfigMap (захватывает Существующий token verification no-op override, который был создан вне диапазон...
Запись конечной точки транскрипции для резюме после встречи
POST/api/conversion/meet/transcribe (X-Internal-Auth): нормализует загруженный запись на 16 кГц моно WAV через новый помощник FfmpegService; Отправляет его в са...
Интеграция календаря для запланированных встреч + реальный счетчик записи
- календарь Интеграция: когда включено, запланированное собрание клуба также добавлен к календарю создателя (через существующую календарную систему) Аутентифици...
MeetingRecording entity + репозиторий для захваченных записей
Новая таблица MEETING RECORDINGS (org, meeting ref, room, MinIO bucket/object key, размер, продолжительность, временные метки, суммарный статус) — родительская ...
Alias ALL - ВСЕ турбопакеты, не только призма
Предыдущее исправление называется @prisma/client-<hash>; сборка также экстернализуется. pg-<hash> (node-postgres, via @prisma/adapter-pg) под одним и тем же кон...
Разрешить сеанс из заголовка X-***-Token в CallerSessionResolver
Камо-внутренний -> APIService BFF Path переносит сессию в X-***-Token заголовок, но решатель читает только атрибут X-OTK или *** cookie - так что Конечные точки...
Как вы видите судоходство?
Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.