Журнал изменений
Что нового.
Каждое усовершенствование платформы, как только она появится.
· kamolos
Стадия церемонии + реестр (8 заполнителей) + /путешествие / церемонии / [id] маршрут
· kamolos
Waypoint sheet primitive +/journey/waypoints/[id]
· kamolos
Мобильный гребень — 28% верхняя полоса сцены + видпорт на основе настольного компьютера / крест переключатель
· kamolos
Персонаж андеррайтера (placeholder owl SVG; настоящее искусство)
· kamolos
Типы сценариев для концепций заемщика (Persona, LoanProgramCode, ProgramScore, Connection, VerifiedFact, MicroActionKind, Ceremony) Ид
· kamolos
Добавить 9 адаптеров с заводами (id-verify, доход, активы, данные о собственности, ценообразование, aus, оценка, название, опасность)
· kamolos
Добавить заводы для кредита/подписи/адреса (по умолчанию к существующим заглушкам)
· kamo-shared-library
Добавить LoanFile
· kamo-shared-library
Добавить Имущественное предприятие
· kamo-shared-library
Добавить Заемщика
· kamo-shared-library
Добавить LoanApplication aggregate root
· kamo-shared-library
Добавьте типы LOS enum (статус, роль, персона, программа, модель кредитора)
· KlusterServices
Оригинальное название: Myloan Alias for KamoLOS
Добавляет «милоан» в список распознавания SUBDOMAINS и переписывает комментарий Чтобы сделать цель списка явной (это документальный фильм; динамический Traefik) Сканирование журналов - это то, что на самом деле дает сертификаты. KamoLOS публикует свой IngressRoute как HostRegexp ('^myloan[.].+$'), так что любой myloan.<org-domain> запрос, что хиты Traefik будут подхвачены extract domains() и per-FQDN ECDSA P-256 cert будут выдаваться через cert-manager + Давайте зашифровать таким же образом "внутренний.*", "login.*", и Другие псевдонимы поддоменов Камо работают сегодня. Никаких изменений в поведении — просто делает псевдоним видимым рядом с другими. и дает любому читающему сценарий однострочную карту префикса → сервис.
· kamolos
Проявления Dockerfile + k8s ****************************
· kamolos
Ошибки Wire api для отслеживания поглотителя
· kamolos
Слежение за тряпкой со сменной раковиной
· kamolos
Кредитный адаптер + тесты по всем трем заглушкам
· SecurityService
Метрика Экспозиция Прометея конечная точка
Добавляет микрометр-реестр-прометей и настраивает management.endpoints Обнаружение /actuator / Prometheus вместе со здоровьем / информацией. Требуется, чтобы Счетчики / таймер, добавленные в Shared-lib, подлежат утилизации.
· kamo-shared-library
Счетчики микрометров / таймер для переходов, условий, веб-хуков
LoanPipelineСлужба приращения los transitions total{from,to} Переход. LoanConditionService Повышенный кредит **************************** Очищенные/отсутствующие. WebhookDeliveryРаботник увеличивает webhook deliveries total {ok,status class} и записывает webhook delivery duration ms (Timer с p50/p90) /p99 %iles) за попытку доставки. MeterRegistry - это @Autowired (обязательно = ложный), поэтому услуги, которые не тянут Актуаторы (большинство не-LOS-сервисов в монорепо) продолжают работать — только те, которые не работают. с регистром на Classpath излучают метрики. Shared-lib pom получает микрометровое ядро для доступа к компиляции API; провод потребителей фактический реестр (Прометей, простой и т.д.) через собственный привод.
· kamo-internal
Предыдущая статьяMilestoneSha256 на конвейере
Ссылка хэш-цепи отображается как небольшой монопространный чип «prev <hash>». рядом с существующим хэш-снимком, с полным значением в названии подсказка. Никаких новых переводов — используется существующий макет.
· kamo-shared-library
Hash-chain LoanPipelineMilestone для обнаружения подделок
LoanPipelineMilestone получает Previous MILESTONE SHA256 При каждом переходе, LoanPipelineService вычисляет SHA-256 предыдущего этапа каноническая форма ********************** Хранит его в новом ряду. Мутация любого предыдущего ряда в DB меняет его Хэш ломает цепь с этой точки вперед. DTO выходит на поверхность нового поля, поэтому пользовательский интерфейс временной шкалы может показать ссылку.
· kamo-internal
Проблемы проверки Surface HMDA LAR в UI
HmdaLarRecordDTO теперь имеет массив проблем; HmdaLarClient отображает: - янтарное знамя над столом, суммирующее строки с выпусками (Ошибки/предупреждения), когда любая строка не валидируется, - ячейка на строку, которая открывает потоп, перечисляющий тяжесть каждой проблемы, поле и сообщение. API-клиент добавляет listHmdaLarIssues() против нового /hmda/lar/issues конечная точка для абонентов, которым просто нужен счет (используется баннером сегодня), Полезно для значков в другом месте позже.
· SecurityService
GET/mortgage-apps/hmda/lar/issues count summary
Собирает вопросы валидации по LAR за данный год и возвращается Ошибки, предупреждения, строкиWithIssues, чтобы UI мог отображать однострочный баннер Прежде чем оператор загрузит CSV.
· kamo-shared-library
HMDA LAR предэкспортная проверка
New HmdaLarValidationIssue DTO (ERROR/WARN severity, field name, message). HmdaLarService теперь аннотирует каждую строку в buildLar() со списком проблем Наиболее распространенные причины отказа от CFPB: - порождены/отрицаны (действие, принятое в {1,3}) требуют заявителя Этничность/раса/секс - любое действие требует ссуды Суммы и имущества Возраст, необходимый для действий, принятых в {1,3,4,5} Проблемы живут на HmdaLarRecordDTO, поэтому существующая конечная точка /hmda /lar Поверхности их в ряд; экспорт CSV по-прежнему испускает те же колонны. без изменений. Сгруппированный помощник по подсчету для новой конечной точки /hmda/lar/issues Об этом сообщает SecurityService.
· kamo-internal
Предупреждения Surface PreTransitionLint в TransitionDialog
Обе реализации TransitionDialog (детальный раздел Трубопровод + канбан) плата) теперь запускает конечную точку винта, когда пользователь выбирает целевой статус и сделать янтарный консультативный блок выше Подтвердить. Подтверждаю, что все еще включен - ЛО решает, продолжать ли. Строки в ипотеке Apps.pipeline.lint*.
· SecurityService
Экспозиция GET ****************************
Поверхности **************** в качестве консультанта перед полетом Проверяйте пожары в TransitionDialog, когда пользователь выбирает целевой статус.
· kamo-shared-library
PreTransitionLint Консультирование по применению TAKEN
Новый метод @Transactional (readOnly) в LoanPipelineService возвращает список Предупреждения для целей APPLICATION TAKEN: отсутствие SSN (последние 4), ДОБ, статус гражданства, текущий адрес, оккупация-первичная декларация по каждому основному заемщику; отсутствующий тип/цель/сумма кредита; Недостающий адрес объекта недвижимости. Другие целевые статусы возвращаются пустыми список. Консультативный, а не блокирующий — контроллеры всплывают на поверхность, чтобы LO могли решить.
· kamo-internal
Мировая очередь тостов с провайдером + UseToast hook
Новый ToastProvider на уровне макета отображает стек Framer Motion контекстно-управляемые тосты и выставляет типизированный тост () API (успеш/ошибка/информация/предупреждение). Трубопроводные переходы, состояние чистое/отсутствие, и тайная ротация webhook теперь зажигают тосты вместо встроенных баннеров; CONCURRENT MODIFICATION Восстановление от #1 поверхностей янтарного "освежающего" Тост за детали трубопроводной секции и канбан. Струны живут под тостами.pipeline.* и toasts.webhooks.* в en.json.
· kamo-shared-library
Потребитель Durable JetStream, изоляция исполнителя, метки времени
Три изменения в комплекте, потому что все они живут в WebhookDeliveryWorker. иметь смысл вместе: 1.Переключение с основного диспетчера NATS на надежного потребителя JetStream ("los-pipeline-webhook-worker", AckPolicy). Ясно. Восстановление воспроизведения безотказные события; подсчет попыток происходит от msg.metaData().deliveredCount() Таким образом, журнал аудита WebhookDelivery отражает перепродажу, а не В процессе. maxDeliver перезагрузка. 2. Отправляйте каждое сообщение в небольшую Службу Запланированных Исполнителей так медленно (10-тайм-аут) абонент не может создать резервную копию потока диспетчера NATS. 3. Подпишите 't.body' (стиль Стрип/GitHub) и излучайте заголовки X-Kamo-Timestamp + X-Kamo-Signature: t=<ts>,v1=<hex> Запрос не может быть воспроизведен бесконечно. DeliverForOrg больше не @Transactional: неудачная попытка HTTP-бросков Итак, JetStream перезагружает, и мы хотим, чтобы аудиторский ряд сохранился в своем собственном. Короткая транзакция, а не откат с внешней областью.
· kamo-internal
Восстановление изящно от CONCURRENT MODIFICATION на переходах
Способствует обработке ошибок API в классе MortgageApiError, который сохраняет код ошибки бэкэнда; обработчики переходов в PipelineSection и трубопроводе kanban обнаруживает CONCURRENT MODIFICATION, закрывает диалог, обновляет и поверхность янтарный перевод вместо необработанного 409.

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