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

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

Что нового.

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

  1. · kamo-shared-library

    Добавить 7 прав доступа к модулю (ID 112-118)

    ACCESS COMMERCE, VIEW CALENDAR, ACCESS CHAT, ACCESS MAIL ACCESS VOIP, VIEW SUPPORT, VIEW ANALYTICS

  2. · SecurityService

    Pass human-readable expiry time to email verification template

    Add humanizeMinutes() helper that formats minutes as days/hours/minutes (e.g. "1 day" for 1440 min). Pass as {{expiryText}} to match updated canonical template variable.

  3. · kamo-shared-library

    Улучшить шаблон проверки электронной почты — обратный URL, текст истечения срока действия, тема

    Добавить ссылку проверки простого текста ниже кнопки в качестве резервного копирования - Переключить переменную истечения срока действия с {{expiryMinutes}} на {{expiryText}} для считываемый человеком формат (например, "1 день" вместо "1440 минут") Обновление с темой «Проверить электронную почту, связанную с вашей учетной записью {{orgName}}»

  4. · kamo-internal

    Сериализация полного HTML электронной почты с внешним фреймом на сохранение шаблона

    - serializeFullEmailHtml заворачивает внутренние блоки в фирменный внешний кадр (Логотип заголовка, название/подзаголовок, область контента, логотип футера + название организации) Использование абсолютных URL-адресов, чтобы клиенты электронной почты могли получать изображения - Настройки внешнего кадра (варианты логотипа, заголовок, подзаголовок) сохраняются bodyBlocks.outerFrame и восстановленные в шаблоне нагрузки - handleSave теперь использует сериализованныйFullEmailHtml, поэтому отправленные электронные письма соответствуют Разработчик Preview

  5. · SecurityService

    Add code-based email verification path to /verify-email endpoint

    The endpoint now handles both token (link click) and userId+code (manual 6-digit entry). Token path unchanged; code path hashes the supplied code and matches against the active token for that userId.

  6. · KlusterServices

    Add weekly image prune and journal vacuum CronJob for k1m1

    CronJob runs every Sunday 3am, privileged, pinned to k1m1. - crictl rmi --prune removes unused container images - nsenter journal vacuum enforces 500MB cap - CI/CD step added to deploy-services workflow

  7. · KlusterServices

    Add Docs deploy step to workflow

  8. · kamo-register

    Требовать *** на странице проверки перед каждой попыткой проверки / отправки

    *** перезагружается после каждого действия (успеха или неудачи) таким образом, решение требуется для каждой последующей попытки.

  9. · kamo-register

    Переименовать /отправить страницу проверки в /верификация

  10. · kamo-register

    Добавить /resend-верификация страницы для переадресации входа

    Создает автономный маршрут проверки /resend, который принимает электронную почту и ?userId запрос парам, повторное использование PostCompletionScreen для последовательного Проверка электронной почты UX. делает RegisterResponse.alias необязательным Страница работает без регистрационного псевдонима.

  11. · kamo-register

    Redesign email verification screen + fix resend email bug

    PostCompletionScreen: полностраничный макет с анимированным фоном, карта стекломорфизма, логотип, визуальные 6-значные кодовые коробки, успех / проверенные состояния - resendVerification: передайте электронное письмо в орган запроса (backend требует этого)

  12. · kamo-register

    Сопоставление камо-внутреннего хранилища аватаров — 3 размера, MinIO, отдельный шаг загрузки

    Диалог на полях теперь производит три капли PNG (50/150/350px) через холст, идентичный Аватар Менеджер Камо-интернала. После регистрации возвращает userId, blobs ****************************************** (новая неаутентифицированная конечная точка) Охраняется по электронной почте Verified=false. AvatarUrl больше не отправляется на регистрацию Тело Джона. Сбой загрузки Avatar не является фатальным, поэтому регистрация все еще завершается.

  13. · SecurityService

    Add register-photo endpoint for unauthenticated post-registration avatar upload

    POST **************** accepts userId + file/fileSm/fileMd/fileLg without a session. Guards: user must be unverified and have no avatar yet, preventing abuse against existing accounts. Stores files to MinIO with the same path structure and sized variants as the authenticated /avatars/photo endpoint.

  14. · kamo-login

    Заменить ошибку EMAIL NOT VERIFIED на карту проверки

    Когда логин выходит из строя с EMAIL NOT VERIFIED, карта входа заменяется на Полированный экран «Проверь свой почтовый ящик»: анимированный конверт SVG с открывающимся лоскутом и Плавающие искры, маскированный дисплей электронной почты, кнопка пересылки электронной почты с 30-секундной кнопкой Кольцо обратного отсчета SVG, оповещения об успехах/ошибках/ограничениях скорости и "Назад к Введите ссылку. Все переходы используют AnimatePresence с масштабированием+fade. - app/api/login/route.ts: передайте все поля ошибок бэкэнда (а не только сообщения) Пользователь достигает клиента ************* Новый прокси-сервер **************************** - app/page.tsx: EmailVerify Компонент карты, emailVerifyState / resendLoading / resendCooldown / resendStatus state, resendVerification callback, 30-секундный Охлаждение с помощьюEffect, EMAIL NOT VERIFIED обнаружения в исполненииLogin

  15. · kamo-register

    Расширение загрузки фотографий для поддержки форматов AVIF и SVG

    Добавляет изображение/avif и изображение/svg+xml в список приемлемых файлов и Валидационный регекс. Обновляет метку подсказки, чтобы перечислить все шесть форматов. Камо-внутренний уже принимает изображение, поэтому никаких изменений там не требуется.

  16. · kamo-register

    Добавить редактор фотографий с легкой реакцией на загрузку регистрации

    Зеркала PhotoCropDialog от AvatarManager: Диалог культур открывается сразу после выбора файла - сковорода путем перетаскивания, масштабирования с помощью прокрутки или слайдера (1-5×) - пунктирный круговой накладной гид показывает обрезанную область - холст производит 400×400 PNG, хранящийся в виде base64 avatarUrl - кнопка повторного сканирования в предварительном просмотре позволяет пользователю настраиваться после сохранения

  17. · kamo-register

    Добавить /api/geoip маршрут и провод страны авто-обнаружение

    Прокси-клиент IP для поиска SecurityService GeoLite2 затем устанавливает Страна, обнаруженная в FormMyCountry, автоматически загружается на страницу.

  18. · SecurityService

    Add GET /api/security/geoip/me for client IP country lookup

    Reads real client IP from X-Forwarded-For / X-Real-IP headers, does a GeoLite2 lookup, and returns { country_code, country_name }. Used by kamo-register's country auto-detection step.

  19. · kamo-register

    Заменить h*** строкой камо-капча-виджета в конце шага

  20. · kamo-register

    Добавить /api/capcha/challenge

  21. · kamo-register

    Добавить поставщика камо-капча-виджета, удалить h*** пакеты

  22. · kamo-register

    Рефактор регистра SP6 — разделите PersonalInfo, добавьте реальный API регистрации

    - Заменить FormPersonalInfo на FormName (именные поля) и FormAvatar (генератор Avatar Creator с режимами генерации/загрузки/пропуска для 13+) Удалить FormRecoveryEnforcement (поля восстановления удалены из потока) - Refactor FormPassportID для макета с двумя полями: псевдоним всегда отображается, электронная почта только для 13+; обратные вызовы заменяют глобальное окно - Добавить registerApi.ts с типом **************** Добавить PostCompletionScreen для ввода кода проверки электронной почты и перенаправления SIGNED IN - Refactor RegisterFlow: динамический список шагов на основе shouldIncludeAgeCheck и isUser13Plus, замена ручки***Submit stub реальным вызовом API, рендер PostCompletionScreen на успех

  23. · InitializerService

    SP5 migrate KamoCRM agereq to ALL_WORK_ELIGIBLE

    Add KamoCRMAgeReqUpdateRunner (order 10) — conditional idempotent UPDATE on startup; WHERE clause checks old value so re-runs are no-ops. Errors are swallowed so startup is not blocked. Update DataLoader to seed ALL_WORK_ELIGIBLE on fresh installs.

  24. · SecurityService

    Implement SP4 email verification and registration wiring

    - Delete legacy email/VerificationEmail.java (hardcoded SMTP stub) - Add **************** (mirrors recovery package pattern) - Add **************** — token generation/SHA-256 hashing, send/verify/resend flows backed by **************** - Add **************** — alias+email uniqueness checks, User creation, triggers verification email on register - SecurityController: wire RegistrationService into /register endpoint, add EMAIL_NOT_VERIFIED (403) gate on login, add POST /verify-email and POST /register/resend-verification endpoints - Bump kamo-shared-library to 1.4.0

  25. · kamo-shared-library

    Добавить EmailVerification Субъект токенов + repo + User.alias/emailVerified + запросы UserRepo; бамп 1.4.0 (SP4)

  26. · InitializerService

    Add SP4 email_verification_tokens DDL + User alias/email_verified columns

  27. · kamo-marketing

    Добавить отказ от товарного знака в нижний юридический текст

  28. · kamo-internal

    Добавить страницы настроек учетной записи для телефона + вопросы безопасности (SP3)

    Добавляет **************** с API-проводкой Служба безопасности /api/account/*. Синхронизация nav во всех 3 местах.

  29. · kamo-login

    Проводите реальные вызовы API на страницу восстановления (SP3)

    Заменяет все поддельные заглушки с помощью вызовов RecoveryApi. Добавить SMS OTP проверка фазы, ввод семенной электронной почты, шаг нового пароля и посадка токена ?token = URL param.

  30. · kamo-login

    Добавить /api / восстановить прокси + RecoveryApi клиент (SP3)

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

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

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