Split findChatSessionsForMemberPaged into First/After to fix empty Chats tab
HAVING CAST(null AS TIMESTAMP) IS NULL did not evaluate as expected in CockroachDB,
Откажитесь от избыточных кнопок заголовка чата; интегрируйте вкладки Members/Chats с дизайном панели
У ChatHeader были свои собственные кнопки IconButtons, но окно инструмента чата. Хром уже предоставляет эти средства - они были дублированы, когда встроенный. C...
Переключение MediaObjTransit на @MapsId производный шаблон идентификации
@IdClass в сочетании с @Id @OneToOne не поддерживается в Hibernate 6. JpaRepository<MediaObjTransit, UUID> инициализации не удается с "не определяет IdClass даж...
Бросьте неиспользуемый @ts-expect-error на стриминговое тело
Отливка «как RequestInit» уже заглушает ошибку типа; директива Излишний в строгом режиме ТС и ломает производственную сборку.
Добавьте @IdClass для MediaObjTransit, чтобы Spring Data JPA могла раскрыть свой идентификатор
Метамодель Spring Data требует @IdClass для объектов, основным ключом которых является @Id @OneToOne производный идентификатор. Без него JpaRepository<MediaObjT...
Add @PrePersist to MediaObjImgDownload.dateCreated to satisfy NOT NULL on insert
Skip creator in findOrCreateExactChatSession member loop (createChatSession already adds them)
Probe timeout 10s and 2 gunicorn workers
LibreTranslate's /languages probe blocks on the gunicorn worker event loop. With a single worker translating a long chat message, the probe times out at the def...
Raise client read timeout to 120s for long messages
LibreTranslate runs CPU-only argos models — a paragraph-length chat message takes 20-30s to translate, and longer ones can push past 60s. The 8-second read time...
Persist language change and show current language in tooltip
The members endpoint accepts PUT not PATCH, so the language picker's PATCH was silently ignored — Member.language never actually updated, which is why refreshin...
Строка запросов ****************
Прокси Next.js отбрасывал строку запроса при пересылке на MediaService, что означало историю чата ?lang=<locale> парам Безмолвно заблудился. Без этого парама бэ...
Владелец монетного двора OTK с предоставлением всех прав без DB round-trip
После ************* назначает Администратора Роль и пишет Member rights applied, блок OTK-minting был Перечитать эти строки через **************** Внутри того ж...
Show Plans & Billing tab regardless of root-org status
The !isRootOrg gate hid the tab on root orgs and blocked org owners and self-viewers from reaching their billing page from "My Account". The PlansBillingTab its...
Drop in place — jump every member, no softPush on release
The drift on release was softPushCluster firing on the user-drop path. A mega-cluster's bounds extend in all directions from the anchor, so the PADDING-margin /...
Drop firmly in place — tail-only throw + jump() to clear velocity
The previous fix still let heads drift on release because: 1. Throw detection averaged velocity across the full 110ms window. A user who flicked then decele...
Drop in place after a paused drag instead of drifting
Two cooperating bugs caused dropped heads (single or post-gather) to fly off to seemingly random positions when the user dragged fast, slowed to a stop, then re...
Отмена унаследованной скорости сопротивления при освобождении
Обработчик сопротивления обновляет значение движения головы с помощью быстрого mx.set(nx) Звонки, которые фреймер-движение использует для вычисления скорости. К...
Crispen hexagon outline at all sizes/states
Four sources of softness eliminated: - **************** on the SVG - **************** on the visible outline so the stroke width does not stretch (and blur) u...
Откажитесь, если сеанс orgID не соответствует хост-оргу
автологин принял любой *** и отчеканил OTK, указав на него, Независимо от того, к какой организации относится внутренний хост.* Несвежий или кросс-орг *** печен...
Расстояние между кластерами + правила группировки одинакового размера
Кластерные ячейки и гекс-соседство теперь получены из крупнейшего кластера. член вместо глобального масштаба, а последующие MV включают в себя центр-выравнивани...
Скрыть попувер при приглашении на встречу открывает диалог
Потоп оставался открытым под диалогом встречи, потому что Диалог был условно рендеринг внутри целевых ворот. Захватите приглашенного в момент щелчка, отклоните ...
Robust English fallback for missing and empty locale translations
- mergeWithFallback now treats empty-string locale values as untranslated, falling back to the English value instead of rendering nothing - Replace bare NextI...
Update orders page account uid type from number to string
AccountSummary.uid is now a string (Long precision fix). Also remove parseInt comparison and type="number" from the manual account ID field.
Используйте CommerceMarket.getId() вместо getUid() в положении
CommerceMarket использует идентификатор @Id UUID (не uid), поэтому Lombok генерирует getId ().
CustomerMemberId - это строка идентификатора участника, разрешающая учетные записи в PrimaryMemberId
- posApi: AccountSummary uid string, add primaryMemberId; **************** Ссылка на сайт: ******************* клиентская строка - SubscriptionOrderWizard Отпра...
Сериализация CustomerMemberId как струна для сохранения Длинной точности
- AccountSummaryDTO: аннотируйте uid с ******************* и добавьте поле струн PrimaryMemberId, заполненное из Primary member id - CreateSubscriptionOrderRequ...
Complete next-intl for System Diagnostics
Wire remaining MySQL, Redis, statistics, request, and accordion UI copy to components.settings.diagnostics keys; use locale-aware time and translated heap badge...
Наследие GetCurrentSubscription stub must throw, not return null
Возвращаясь к нулю, FeaturesManager рассматривает каждую организацию как не имеющую подписки. (billingLoaded=true, hasSubscription=false), блокировка всех перек...
Модули Ambient json для гитигнорированных сообщений /*.json импорт
tsc и IDE разрешают сообщения JSON после слияния без необходимости Файлы под сообщениями /. Расширение для типов/**/*.d.ts.
Переместите настройки учетной записи, помогите панелям отправлять ключи
Замените все закодированные справки на странице учетной записи организации Использование ключей перевода. Расширить i18n-аудит, чтобы сообщить об отсутствии фай...
Wire organization account hero and tabs to i18n keys
Use **************** strings for SettingsView title, subtitle, and tab labels so the UI shows translated copy instead of raw placeholders left in dictionary ove...
Добавьте ярлыки доступности навигатора и строки голосовой почты софтфона
Добавьте клавиши components.navtop status* в разных местах, чтобы в раскрывающемся заголовке отображались переведенные метки. Добавить **************** на англи...
Resolve STATUS_CONFIG scope errors on POS detail pages
Validate agreement status against STATUS_TRANSITIONS and derive commitment status keys from STATUS_TRANSITIONS so module-level helpers do not reference STATUS_C...
Load org logos from MinIO theme public path like dashboard
Use getThemePublicBaseForDomain so logo URLs match getThemePath()/img/logo.svg instead of legacy /domain/.../kamosite paths that 404 and fell back to initials.
Add missing nav-top strings and scope translations
English messages listed components.navtop.* keys for Mail/Docs/Voip buttons but never defined hi/welcome, branches, account, credits, calendar, chat, etc., so n...
Resolve nav-pri labels showing raw i18n keys
Use namespaced next-intl translators for nav and components.nav.navPri so lookups resolve against the merged message trees; add panel aria strings under navPri;...
Add MessageBrowser i18n strings and restore load error copy
next-intl threw MISSING_MESSAGE for components.messages.browser.* keys missing from en.json, breaking /messages render. Add English strings, use loadMessagesFai...
Создание записи ключа объекта MinIO, такого как поток изображений
Опустить расширение, когда FILE EXT является нулевым / пустым, чтобы имя объекта совпадало RecordingImagingService и ImagingController. Строка Java Concat с нул...
Отмените циферблат, если похмелье вызвано до разрешения sdk.invite
Условие гонки: похмелье () во время соединения не было сессии, чтобы закончить еще (sdk.invite ожидается перед wireSession), поэтому звонок все равно подключен....
Автовход в новую организацию после создания, таким образом, страна-член имеет свою собственную роль и права
После создания организации сессия оставалась в родительском контексте (без прав администратора). Оставляя нового владельца организации неспособным видеть настро...
Разрешить конечный вызов во время подключения, отключить помощника AI, удалить вкладку очереди
Кнопка окончания вызова теперь активна и красна во время состояния соединения, поэтому звонки могут быть отменены до их подключения. - Отключил кнопку AI Assist...
Разрешить расширение истории вызовов с помощью Member voip config, а не phone extension
************************************************************************************* Member voip config корректно отображает расширение. использовать Member vo...
Full touch support for softphone popup on tablets
- Add touch-action: manipulation + WebkitTapHighlightColor to iconBtnStyle so window control buttons (minimize/maximize/close) respond instantly on touch - Ad...
Add go-sql-driver/mysql v1.7.1 checksum to go.sum
go mod tidy without source files is a no-op, so the mysql checksum was never added. Generated the correct h1 hashes via a throwaway golang:1.22-alpine container...
Как вы видите судоходство?
Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.