Перейти к содержимому
KAMOUniverse

Журнал изменений

Что нового.

Каждое усовершенствование платформы, как только она появится.

  1. · kamo-internal

    Gate My-Profile backgrounds by the new rights + member/org slideshow

    Войдите в раздел «Background & Theme» моего профиля от MANAGE OWN BACKGROUND IMAGES **************************** (другие); пусть фоновый админ Откройте профиль другого участника. Сохраняйте выбор org-vs-own через флаг InSlideshow каждого фона (org => no active, own => all active) — никаких изменений схемы; эвристика Теперь происходит переключение из активных изображений, чтобы соответствовать тому, что служит слайд-шоу. OrgSlideshowLayer предпочитает собственные активные фоны участника (GET **************** fail-soft) и возвращается к Орг фоны. Новый тонкий / активный прокси-маршрут.

  2. · kamo-shared-library

    Добавить права на управление собственными / другими фоновыми изображениями (Общая группа)

    Добавлены MANAGE OWN BACKGROUND IMAGES (165) и **************** (166) RoleRightType, serviceType null, чтобы они приземлялись в общих настройках Группа (отражает прецедент STATE LICENSING * OWN/ALL). Ворота для каждого члена Функция фоновых изображений в моем профиле. Приложение: версия без изменений.

  3. · SecurityService

    Уведомить назначенного сотрудника по кредиту, когда все документы заемщика кредита получены

    Увольняет LOAN DOCS READY LO в точках удовлетворения вместе с заемщиком DOC COMPLETE. Решает LO с помощью кредитного файла -> **************************** -> член; Самоохраняемый кредит полностью собран, назначенный LO и разрешимое электронное письмо.

  4. · kamo-shared-library

    LOAN DOCS READY LO канонический шаблон - уведомить назначенный LO, когда документы кредита все в

  5. · kamo-internal

    Назначить сотрудника по кредиту на сделку из раздела отправителя

    В разделе «Источник кредита» теперь есть выборщик кредитного агента (или члены организации) через /members/names) + Assign, позвонив в PUT **************** уровень сделок (наследуется всеми детскими кредитами). По назначению он повторно фиксирует приложение так Проекция в прямом эфире сразу же отражает название LO / NMLS / государственная лицензия. Спрятанный однажды Замороженный (по происхождению). Это делает работоспособным весь системно-управляемый составитель — прежде чем При этом не было возможности установить назначение, поэтому поля LO всегда проектировались пустыми. (Новые строки пользовательского интерфейса в ожидании пропуска i18n, соответствующего существующему уведомлению раздела.) Проверено: tsc — не очищается.

  6. · kamo-internal

    Поля конфигурации провайдера для доступа к облачной почте

    Добавьте входы конфигурации, которые EmailService считывает для аутентификации облака почтовые ящики: Google Workspace: ключ служебной учетной записи (JSON) для IMAP-делегации по всему домену. IceWarp: почтовый хост, пароль почтового ящика службы, транспортная безопасность. - Обмен (on-prem BASIC/NTLM): почтовый хост, пароль почтового ящика службы, транспорт Безопасность.

  7. · EmailService

    Маршрутизация почты всех облачных провайдеров через IMAP/SMTP с помощью OAuth2 (XOAUTH2)

    Облачные провайдеры (Microsoft 365, Exchange Online, Google Workspace, Zoho, IceWarp) Унаследованное чтение / отправка от ****************, но разрешающий никогда Населенные учетные данные IMAP / SMTP для них, поэтому каждая папка / сообщение, прочитанное MailboxNotConfiguredException -> экран "email not configured" (например, org) Вариант на M365. KamoMail работал только потому, что только он получил верительные грамоты. (внутренний Dovecot). Теперь все провайдеры проходят через один путь IMAP/SMTP. KamoMail остается без изменений. - MailCredentials: полная спецификация подключения **************** - ImapStoreFactory + EmailSmtpService: SASL XOAUTH2 (родной com.sun.mail) auth per spec; STARTTLS требуются (незакрытые), поэтому токены никогда не проходят четкий текст. - MailProviderResolver: учетные данные каждого поставщика + почтовый ящик по умолчанию + Освежите токен OAuth. M365/Exchange-Online использует только клиентские учетные данные (outlook.office365.com) **************************** Арендатор, полученный от домен почтового ящика; Google использует делегирование доменов по всей учетной записи службы; Zoho использует сохраненный токен OAuth; IceWarp/on-prem Exchange использует базовый токен от конфигуратора провайдера. - EmailImapService: разрешает отправку / передачу через RFC 6154 SPECIAL-USE, таким образом отправляя копии земли в нативной папке поставщика (Gmail [Gmail]/Sent Mail, Exchange Sent Items). ProviderController: сохраняйте поля конфигурационной формы в зашифрованном конфигураторе (ранее упавший); список возможностей без чеканки токена. - Удалены заглушки RealtimeNotifier от облачных провайдеров (оболочки) В режиме реального времени, без push-webhook. M365/Exchange-Online требует приложения IMAP.AccessAsApp + SMTP. SendAsApp с администратором Согласие и New-ServicePrincipal в Exchange Online (соответствует почтовому ящику).

  8. · kamo-internal

    Deal-scope - загрузка хранилища со вкладки документов учетной записи

    Диалог загрузки теперь предлагает дополнительный селектор «Сделка» (учетная запись) Транзакции; выбирая один штемпель кредитаТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакцияТранзакция отчетность, банковские выписки) связана с этой сделкой и удовлетворяет только свои кредиты, в то время как «Account-wide» сохраняет вечное повторное использование для документов, удостоверяющих личность. Завершает Транзакционная модель документа сквозная. Проверено: tsc — не очищается.

  9. · SecurityService

    Загрузка хранилища может обрабатывать документ (сделка по кредиту) Ид

    Загрузка хранилища теперь принимает дополнительную кредитную операцию Id, проштампованный на MemberDocument, чтобы чувствительный ко времени документ (кредитный отчет / банковская выписка) мог быть связан к конкретной сделке — защита удовлетворенности затем применяет ее только к этой сделке. займы. Omitted = безотчетное повторное использование (без изменений). Появляется на MemberDocumentDTO. Проверено: mvn компилируется в чистом виде.

  10. · kamo-internal

    Резервный переключатель для каждого устройства — обычный градиент или фото слайд-шоу

    Добавляет двухконтурный переключатель в правом верхнем углу (под пробную таблетку; он поднимается в таблетку). место после окончания испытания) для выбора фона консоли: — Равный градиент (по умолчанию, лучшая производительность) — существующий oklab-blob фон. - Org photo slideshow - повторно использует те же тематические активы, что и сайты регистрации использовать: <themePath>/json/config.json's backgroundImageCount → <themePath>/img/bg/{n}.webp, предварительно загруженные 404-ми сброшенными и перекрёстными (уважение предпочитает-сокращенное движение); падает обратно в поле, если изображения не разрешаются. Выбор сохранен PER DEVICE в LocalStorage (useBackgroundMode), а не На стороне сервера, потому что это вариант рендеринга / перф, который должен оставаться локальным. The Backdrop чтит его (дом + настройки); переключатель живет дома. Каждый У иконы есть инструмент. Новый home.background.* строки отправлены в словарь.

  11. · SecurityService

    Заморозить снимок инициатора при первоначальной оценке кредита (Reg Z / TRID)

    Завершает жизненный цикл создателя: совместное решениеProjection() теперь кормит обоих Живая проекция и замораживание (без дрейфа). Раскрытие информации INITIAL LE Набор, MortgageDisclosureController замораживает исходный LoanOriginator — захваты прогнозируемая LO + org + государственная лицензия на ряд WORM и марки замороженные Замороженное государство (идемпотент; охрана @PreUpdate блокирует любые последующие изменения). После этого Переименование org/LO никогда не меняет того, с кем возник заемщик. Проверено: mvn компилируется в чистом виде.

  12. · kamo-internal

    Транзакционный трубопровод — расширяемые строки PrimeReact

    Заменяет плоскую кредитную сетку PrimeReact DataTable of TRANSACTIONS, который запускается Обвалился и расширился в месте на их член займы (без двух щелчков мыши), так что Стюард открывает конкретный кредит напрямую. Родительские колонки: Транзакция #, Статус сделки, Заемщик (заемщики), Займы, Целевые закрытия; детские ряды: Заемщик, Собственность, Сумма, Статус открыт. Сиротские кредиты предоставляются в виде однокредитных рядов. Поддерживает поиск, фильтр состояния, CSV Export, New, and the Board/HMDA entry points. PrimeReact 10 (MIT) также совершает Рефакторный дизайн спецификации. Проверено: tsc -noEmit + следующая сборка обе чистые.

  13. · kamo-internal

    Повторно добавьте пробную таблетку вправо (цветная таблетка NavPri)

    Сохраняет пробную линию в полосе статуса туловища и повторно добавляет выдающуюся таблетку в правом верхнем углу, так что пробный режим организации остается очевидным. Расширенный NavPri пробная таблетка с заменой цветов заполнения / текста (основной фон, белый) текст/иконка) с использованием одной и той же этикетки ****************; только для сотрудников (TEAM MEMBER) по предварительному соглашению.

  14. · kamo-internal

    Живой «вставить между» во время перетаскивания, а не просто перетаскивать

    Раньше порядок менялся только при падении, поэтому он читался как замена в слот. Теперь список перетекает в прямом эфире, как вы перетаскиваете: dnd-kit onDragOver перемещает перетаскивающийся опция слота наведенного опциона (arrayMove), поэтому член видит точно где он будет находиться между остальными. UseHomeLayout.move продвигает свой заказ синхронно, поэтому последовательные события перетаскивания складываются правильно и принимают Сохранить флаг так, чтобы в прямом эфире предварительный просмотр не писал; окончательный порядок сохраняется один раз на Упасть через новое обязательство().

  15. · kamo-internal

    Переключатель Sibling-loan на вид приложения

    Транзакция может группировать несколько кредитов; заголовок приложения теперь показывает переключатель для перехода между сиблинговыми кредитами (скрытыми для сделок с одним кредитом) вместо того, чтобы быть только Добраться можно по трубопроводу. Проверено: tsc — не очищается.

  16. · kamo-shared-library

    LoanFileDTO.loanTransactionId (вид приложения знает свою сделку)

    Покрывает транзакцию по кредиту, чтобы вид /приложений мог показать / переключить брата или сестру займы. Проверено: mvn установить чисто.

  17. · kamo-internal

    **************************** (тип FE)

    Зеркало бэкэнд поля для трубопровода Транзакция # столбец. Проверено: tsc - не чистить.

  18. · SecurityService

    Поверхностная сделка Номер на TransactionSummaryDTO (Трубопроводная транзакция #)

    В строке трубопровода для каждой транзакции теперь указан номер транзакции человека. Проверено: mvn компилировать чисто.

  19. · SecurityService

    Проекция Originator разрешает государственную лицензию

    Завершает проектирование живого создателя: назначенная лицензия Стюарда LO (NMLS MLO) для состояния SUBJECT PROPERTY (от property.address.subdivision, Нормализованный до ISO-3166-2, действующий в настоящее время, заполняет составитель StateLicenseId. Проверено: mvn компилируется в чистом виде.

  20. · kamo-internal

    Drag-and-drop для перегруппировки параметров стартовой площадки, сохраненных на одного участника

    Члены теперь могут переупорядочивать свои домашние варианты, перетаскивая, и соглашение Сохраняющаяся сторона сервера на одного участника (выживает перезагрузку и следует за ними поперек) устройства) с помощью тех же общих ui-предпочтений сохраняют навигационную компоновку — новый Ключ «homeLayout», содержащий заказанные идентификаторы опции. - useHomeLayout(availableIds) загружает сохраненный заказ, объединяет его с опционы (новые опционы добавляются, удаленные падают) и сохраняются переупорядочения с оптимистичным, опрокинутым PUT на **************************** - dnd-kit DndContext over the masonry: MouseSensor (5px) + TouchSensor (250ms) Таким образом, быстрый щелчок по-прежнему открывает карту / ее подпункт в то время как пресс-драг Перегруппировка (только указатель, как живые навигаторы). Переупорядочение совершается при падении Кольца-мишени. FeatureCard становится перетаскивающим ={false} так родная ссылка-drag Не борется с dnd-kit.

  21. · kamo-internal

    Сделайте Материалы первой вкладкой + по умолчанию; удалите Обзор

    Обзорная вкладка удалена; Материалы теперь на первом месте. Маркетинговый индекс перенаправляется на первый Доступная вкладка (Материалы по умолчанию), поэтому любой, кто открывает Маркетинг, попадает на Материалы.

  22. · SecurityService

    Live originator projection — org + assigned LO, on read

    GET /mortgage-apps /{uid} теперь накладывает проекцию инициатора LIVE, управляемую системой (вычисляется на чтение, никогда не хранится), если строка не заморожена: имя организации / NMLS / адрес от Организация и имя кредитного агента / NMLS / TeamMemberId от члена ASSIGNED до транзакция по кредиту (юридическое имя через User.EmbNameFull.formatFull(), NMLS через Member.nmlsId. Несвоевременная вводимая вручную идентификация очищается - раздел отражает только Источник истины. Замороженный ряд (первоначальный LE-выпуск) - это снимок WORM, оставленный нетронутым. Оставаясь для полной проекции: в каждом штате Стюард Лицензия (нуждается в предмете) состояние на графике приложения) и триггер замораживания при первоначальной выдаче LE.

  23. · kamo-internal

    Раздел «Происхождение кредита» предназначен только для чтения / управляется системой

    Карта Заемщика больше не отредактирует данные URLA § 9 (дублирование) **************** — это был повторный захват. Он выдает только для чтения: Проекция LIVE назначенного сотрудника по кредиту + орг до первоначального займа Оценка, затем после застывшего первоначального снимка (frozenAt/frozenState/source) Теперь о кредитной организации. Удалите редактируемые входные данные + дебюнсированный patchOriginator Автосохранение. Бэкенд проекция/заморозка проводки приземляется следующим (SecurityService).

  24. · SecurityService

    Задание кредитного агента на уровне сделки + номер сделки

    убедитесь, что TransactionForApp теперь печатает уникальную транзакцию Number (TXN-<uid>). *************************** + PUT /ипотечные приложения / транзакции / {uid}/должностное лицо по кредиту устанавливает назначенного сотрудника по кредиту сделки (член.id, унаследованный от все детские кредиты) — единственный источник, который будет управлять системой LoanOriginator projection/snapshot (оригинатор никогда не вводится вручную). Оператор. Закрытый, орг-скопированный.

  25. · InitializerService

    Первоисточник/первые колонки транзакций (@Order 90)

    Добавочные нулевые столбцы + уникальный индекс транзакций для MLOS Производитель/рефактор транзакции: mlos loan transaction (номер транзакции +) присваивается lo *), loan originators (frozen at/frozen state WORM markers), mlos member document (loan transaction id deal-binding). Импотент.

  26. · kamo-shared-library

    Схема Originator/transaction-first — назначение LO, замораживание WORM, документы, связанные с сделками

    Основа для системно-управляемого-оригинатора + рефактор транзакций (специализация) 2026-07-08: - LoanTransaction: transactionNumber (org-unique) + assignedLoanOfficerMemberId (+ аудит) — назначение LO на уровне транзакции, которое приводит в движение составителя Проекция, унаследованная всеми детскими кредитами. - LoanOriginator: frozenAt/frozenState + @PreUpdate WORM guard - инициатор a ЖИВую проекцию назначенного члена/орга до первоначальной оценки кредита Вопросы (Reg Z/TRID), затем неизменяемый пошаговый снимок. КредитостроительDTO Разоблачает замороженное/замороженное государство/источник (LIVE | SNAPSHOT). - MemberDocument: loanTransactionId deal-binding — чувствительный ко времени сводный документ (кредитный отчет, банковская выписка) - это транзакция; NULL = безвременный счет. Срок действия регулируется существующей политикой свежести (не дублируется). Логика проекции/замораживания/назначения живет в Службе безопасности (которая зависит от того и другого). Donotmodify и mlos, не здесь — заблокированное ядро остается разъединенным с mlos.

  27. · kamo-internal

    Добавить фильтр продукта, зависящий от поставщика

    Добавляет фильтр продукта в панель фильтра /leads, сразу справа от Фильтр продавца. Он ведет себя как пара Статус/SubStatus: отключенный до тех пор, пока не выбран поставщик, его опционами являются продукты, принадлежащие выбранному Продавец, и это проясняется, когда продавец меняется. Фильтр на стороне клиента Состояние предиката и фильтра уже существовало; это приводит к выпадению.

  28. · kamo-shared-library

    Общий AusEngineClassifier — один из источников правды для картирования агентства § 8.2

    Программа → движок, запуск → движок и принятие решения → отображения врат были локальными для **************************** Рынок капитала AUS Hard-Stop требуется идентичная классификация, и справедливые ворота не должны иметь двух копии, которые могут дрейфовать. Извлеките три чистых отображения в **************************** (статические, исчерпывающие переключатели = Компилируемая полнота / §8.2 Дрифтерная охрана. Решитель цен теперь делегаты LockStageAusGate для рынков капитала использует то же самое. Аддитивный, без схемы.

  29. · kamo-internal

    AI autotag + caption UI; настройки уровня стоимости / видения поставщика (P3)

    Настройки → AI → Провайдеры: каждый провайдер получает уровень затрат (легкий / средний / тяжелый) Поддерживает переключатель зрения (+ чипы списка). Выдвижной ящик: «Самые важные теги с ИИ» (принять чипы) для применения) и «Создать описание с помощью ИИ» — оба звонят собственным настроенным поставщикам организации через MediaService→AIService; закрытый по умолчанию с четким сообщением, когда не настроен поставщик видения.

  30. · AIService

    Пропуск уровня затрат/видения провайдера + внутренняя конечная точка однофокусного видения

    AiProviderController читает / перекликается с costTier + поддерживаетVision. Провайдер маршрутизация Сервисный выигрыш ВыберитеVisionProvider (orgId, tier). **************************** Бежит один выстрел Завершение видения с повторным использованием провайдера/адаптера организации (без сеанса/RAG/инструментов). Новый AiInternalConroller POST /api/ai/internal/vision (X-Internal-Auth, OTK-exempt) для абонентов услуг.

Ваша вселенная ждет.

Начните бесплатно через несколько минут. Добавляйте продукты, когда будете готовы — без миграции, без новых логинов.

Бесплатно навсегда — не требуется кредитная карта