Changelog
Qué hay de nuevo.
Cada mejora de la plataforma, a medida que se envía.
· SecurityService
Revolvend de la bóveda de documento de miembro de P4 (docs reutilizables en todos los préstamos)
- MemberDocumentService: cargue un doc ONCE en AccountBorrowerParty scope . ImageService crea un Img en el .-creado imagen-member-bault bucket **************** hahes touted server-side) MemberDocumenta fila de catálogo; lista por partido/cuenta. Guardia de la parte partidista fallida (isMemberPartyToPartyAccount). - MemberDocumentController /api/security/member-documents (POST up up up up up uppart, GET list): los operadores gestionan cualquier bóveda del partido (LOS-VIEW-PIPELINE); un prestatario sólo los partidos de su propia cuenta. La bóveda Img es el ancla de reutilización RequirementSatisfier (imgId) puntos para satisfacer los requisitos por préstamo en todo muchos préstamos (satisfizo-wiring es la siguiente porción). Compiles limpios; sin cambio de esquema (entidades P1).
· kamo-internal
Gasoducto de transacción por transacción - lista por acuerdo, no por préstamo (propipropiado req)
ApplicationsPipelineConsole ahora enumera ONE row per LoanTransaction (su préstamo representativo cualquier préstamo heredado aún no agrupado), con una columna de 'Deal / Estado' sujetada que muestra la derivación chip de estatus grupal, un chip N-présta para acuerdos multipréstamo, y una bandera de excepción de denegación. Fetches ******************* (tipo TransactionResyDTO) y se une a las filas de préstamos. Cubos/filtros/viaje se basaron en las filas de transacciones-representantes.
· kamo-internal
KamoMLOS portal designación de productos predeterminados en proveedores-productos (11)
Un descarte de estrellas en cada producto designa el producto auto-asigna del portal KamoMLOS de la org (single-active). Bated via GET /lead-vendors/mlos-readiness: se muestra sólo cuando el mercado editado ES el mercado de plomo residencial-hipermo de la org Y POS, un mercado de comercio de MORTGAGE, está configurado. Refleja/edits el predeterminado en vivo a través de PUT .../products/-id-mlos-default. (i18n en el barrido P6.)
· SecurityService
Reinciación de la designación de producto por defecto P3 (single-active) - preparación del operador
- *******************ifica ONE LeadVendorProduct como el KamoMLOS de la org Portal de producto auto-assigna; monoactivo (demote cualquier otro, org-scoped, fail-closed) a través de JPQL Actualizaciones masivas. - LeadVendorController: PUT ************* y GET /mlos-readiness (qué producto es predeterminado - si POS - RESIDENTIAL-MORTGAGE-mercado de plomo El mercado de comercio de MORTGAGE está configurado) respalda la puerta de configuración y muestra el estado actual. Compiles limpios; sin esquema/cambio de lib compartido.
· SecurityService
P2c lidera el primer backend del portal
- MortgageVerticalResolver: resuelve el RESIDENTIAL-MORTGAGE LeadMarket de un org, MORTGAGE CommerceMarket, designado por defecto LeadVendorProduct, y EFFECTIVE POS-legid uno Preparación determinista leyó el respaldo tanto de la puerta de configuración (-11) como de la puerta del portal (12o de 12o. - PortalLeadService: leads-first . createOrGetAnonymousLead (enclavado en una cookie de cuentaGuid, auto-asignado el producto por defecto en el mercado hipotecario, cerrado en la preparación de la noscripción, NO AppHerma de ley, patchEstimada y la fusión de inicio de sesiónGuidIntoMember (a un ladrea GUID al La cuenta de miembro y vuelve a ver con las letras principales, reflejando la asignación deLeadAccount's history escribe). - PortalController ********** plomo POST/PATCH, fusion: anónimo (org-de-host, GUID de la cabecera BFF X-Kamo-Guid de confianza); la fusión está ligada a ***. Compiles limpios. Rutas anónimas pasan el permisoToda cadena de filtros (controladores auto-puerta).
· kamo-internal
Cérmene de cuenta UI (MERGE-ACCOUNTS)
AccountManager gana una acción de Cuentas de fusión (gated by **************** seleccionar exactamente dos cuentas de clientes, elegir al sobreviviente, mantener opcionalmente el duplicado Afiliación de rayas / miembro principal, luego fusionar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . soft-desactiva el duplicado. cuentasApi.mergeCustomer() . . . . . . . . . /account/customers/.uid-merge. (i18n llaves a agregar en el barrido P6.)
· SecurityService
Herramienta de médanza de la cuenta de P2a . . . . . . . . .
Merge de cuenta de administración (requisito de propietario A), cerrada por MERGE-ACCOUNTS: - AccountMergeService: reparents EVERY account-uid child via UPDATE nativa (bypasses JPA HuérfanoQuiertos para que las pistas/apps del perdedor sobrevivan), desactiva la cuenta globalmente únicas. Suscripciones (cuenta, mercado, objetivo), concilian stripteo.customer.id / primarioMiembro / puntero FKs (supervivientes-ganas y evitadas-de-perderes), desactiva el perdedor. Sólo Same-org. - AccountController POST *************d ramificado por MERGE.ACCOUNTS (o dios). Retrollado de agrupamiento de los tratados: - LoanTransactionService: asegura TransactionForApp (auto monoplaza en creación, idempotente), derivaStatus (enrollado de miembro LoanFileStatus vía LoanTransactionStatusver), ************* (TransactionRemmaryDTO), isMemberPartyToTransaction (D52 Generalizado al grupo), relleno. - MortgageAppController: crear () ahora autogrupos el préstamo; GET / Transacciones enumera por-transacción (operadores=orgo tubería, empréstitor=cuenta). - Regístrese mlos.transaction . mlos.docs repos en SeguridadServiceAplicación .EnablejeJpaRepositorios. Esquema ya creado por KI (P1). Compiles limpios contra la libi compartida instalada.
· kamo-shared-library
Fundamento de entidad P1 - plomo-first / cuenta-centric / refactor agrupado por transacciones
NUEVA entidades (aditivos; KI funciona DDL): - TransactionGroupStatus enum . LoanTransactionStatusDeriver: ciclo de vida del grupo derivado (Created"...Completado) enrollado de la miembro LoanFileStatus (nunca se almacenó de forma autorizada). - AccountGuid (cuentas): galletas de larga vida GUID-Account (nullable) para el flujo anónimo de plomo-primero. - AccountBorrowerParty (cuentas): identidad compartida de préstamo-presa (Opcional miembro opcional) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - MemberDocument (mlos.docs): bóveda de documento reutilizable a nivel de cuenta/miembro. - LoanTransactionTimeline (Event enum), SharedTransactionTask (Estatus/severity enums): feed gr group compartido . tasks. - repos para todo lo anterior. Enum se adjunta (i-estable / ordinal-safe): - LoanFileStatus.SOLD.BOARDED(9) Agregado en END (almacenamiento ORDINAL); .isTerminal; interruptores exhaustivos fijos. - **************** . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - **************** .Configuraciones generales (servicioType=null) para la herramienta de administración de cuenta-fusión. Columnas FK (nulable, columna de coordenadasEndefinición, sin defecto, únicas.rowid/gen-random-uuuid orfanera): - LoanFile.loan.transaction-id, ************* Lead.account.guid-id, CommerceMarket.lead,market.id, **************** ******************* Diseño: ************* No hay volaversión versión.
· SecurityService
Autorización de autoservicio de prestatarios (guardia de la parte independiente IDOR)
Un prestatario es un miembro de la organización sin derechos de operador; puede actuar en la ONE La aplicación son parte y sólo eso. Guardia de capas: puerta del operador primero, De lo contrario, un cheque de préstamo cerrado por fallos (isMemberPartyToApp). MortgageAppController: - ************* sobrecargas aplicadas para conseguir, todos 23 por aplicación escribe endpoints, y los 3 ayudantes de sección repetida. - lista: los operadores ver el oleoducto de org; un prestatario ve sólo aplicaciones de propiedad. - crear: operador toma aplicación (incl. from-lead); un prestatario auto-crea su propio (Estudiado con propiedad) - la menta de recompensa de KamoMLOS. - supresión: operador suspend-right O el prestatario titular; búsqueda: cualquier autenticado sesión (referencia enums las necesidades de admisión); el viaje se mantiene solo operador. MortgageProgramController: cerró un IDOR preexistente en setPersona/setSelectedProgram (cheque solo en la puerta) . ahora operador-LOS-role O préstamo-parte. Operadores sin cambios; los prestatarios-scoped; el subcampeón cruzado IDOR cerró (D52).
· kamo-shared-library
Borrower propiedad de la parte de préstamo en AppMortgageService
Añade la propiedad primitiva para el autoservicio de los prestatarios (un prestatario es un org simple Miembro sin operador LOS derechos): - crearBlankOwnedByMember(orgId, memberId): crearBlank y la propiedad de sellos mediante la fijación (o reutilizar) una Cuenta cuyo miembro principal es el prestatario. - esMemberPartyToApp(appUid, orgId, memberId): guardia de la parte de préstamo cerrada por el fracaso. Y llamante es principal miembro/cocinaMiembro de la Cuenta de la aplicación. - listOwnedByMember(orgId, memberId): las propias aplicaciones del prestatario. La propiedad es el enlace de diseño ordenado ****************; Account/ AccountMember ya existe, por lo que no hay esquema/KI. Sólo aditivo (D52).
· kamo-internal
Columna de viaje de prestatarios y filtro de admisión en el oleoducto de préstamo
La red de datos sub=pipelina (AplicacionesPipelineConsole) muestra ahora pre-aparato-tomado progreso de viaje de prestatario para que los empleados de org pueden revisar el estatus de una solicitud como la El prestatario completa su propio préstamo a través del portal KamoMLOS. - Columna de 'Borrower Journey': chip de estado (Acaba de empezar / Llenar en / Listo para enviar) determinar la barra de progreso de las secciones n/total, con una punta de herramienta de sección pendiente; "" para ya se han concedido préstamos. - Cubo de filtro 'Borrower Intake': préstamos con entrada de viaje en vivo de autoservido. - listaJourney() Cliente de API . BorrowerJourneyDTO tipo . . . . . . . . . . . . . . . . . . . Fuente de GET /mortgage-apps/journey (D51).
· SecurityService
Apuesta por la aplicación para el oleoducto del operador
Nueva GET **************** (LOS-VIEW-PIPELINE) devuelve por-DRAFT Préstamo-entrada progreso para que los administradores de tuberías puedan ver un préstamo tomar forma mientras el El prestatario sigue egoísta a través del portal KamoMLOS. BorrowerJourneyService recomienda la sección del asistente del portal lado de la integridad del servidor sobre el gráfico canónico de la aplicación de la letra herviria (controles de presencia tolerantes a los DTO canónicos y el cliente del portal DTOs tiene nombres de campo divergidos). Estado = STARTED / IN-PROGRESS / READY-TO-SUBMIT en 7 secciones de pre-presente; las hipotecas inversas se saltan las finanzas secciones, que coincidan con el portal. No persistió nada; se limitaba a 300 borradores/visión. BorrowerJourneyDTO es un disco de SecurityService-side así que donotificar permanece intacto. Parte de la reutilización de tuberías doc03 (D51).
· SecurityService
Los controladores de la LOS aceptan sesiones por prestatario *** (doc.03 0.1)
BaseLosControlor resuelve ahora la sesión de convocantes a través de CallerSessionResolver (Atributo validado por X-OTK PRIMERO operadores/BFF sin cambios - luego una primera parte *** galleta fallida) en lugar de sólo el atributo X-OTK. Esta es la piedra angular. que permite al portal de prestatarios KamoMLOS llegar /api/security/hipopart-apps/** con un sesión real por laga (un prestatario es un miembro de la org org a través de la norma login.OTK.validate-otk-*** flow) en lugar de una cuenta de servicio compartida. Atlándse- compatible; los 7 controladores LOS se benefician. Compiles limpios.
· SecurityService
El marcador del programa autoritativo de servidores LOE-Core. /programas/puntas (doc.03 9 Fase 2)
Ports el goleador cliente de KamoMLOS (lib/los/scoring.ts) en SecurityService LOE-Core: LoeCoreScorer anota el catálogo de programas eficaz de la org (base de fondo con org overlay) contra un prestatario AppSnapshot - idéntico LTV/DTI/occupupes/reservas/ Controles de derecho/edad inversa de VA . devolviendo ProgramScoreDTO en el cliente exacto shape ProgramScore. POST **************** Servidor-first: este envía antes de la eliminación del cliente-scorer de la Fase 9 de la Fase 3. 3 pruebas de verde.
· InitializerService
Semillas de los 17 programas reales (doc.03 9 Fase 1)
Migra los datos autorizados de ProgramRuleset de los clientes de KamoMLOS ruleset archivos en **************** (17 códigos, extraídos fielmente) y reemplaza el marcador de posición de ProgramSeederRunner con real reglas de código per-code cargadas de la clase. Idempotente: inserta programas faltas y actualiza los marcadores de posición existentes a datos reales, nunca operario de troncos ediciones. Aplicado en la siguiente carrera de KamoInitializer (corrido de usuarios). Prereq para la Fase 9 puntuador del servidor que borra el marcador del cliente.
· kamo-shared-library
Inmerge profundo para las anulacións de la regla del programa de org (doc.03 9 Fase 0)
Sustituye al marcador de posición de última vez M2 de última vez-gana de la casa de la capa (que en silencio desechado la línea de base autorizada en cualquier org anúfalo) con un fusión profunda de JSON retorcido: org anúnge la oferta sólo las llaves que cambian, los objetos anidados se repiten, los arrays sustituir al por mayor, y una anulación malformada falla a salvo en la línea de base. Celde el ProgramRuleset contrato antes del partitor autorizador del servidor (9 Fase 2) que borrará el marcador del cliente. Programa/ProgramaService javadoc repointed. 3 pruebas verdes.
· kamo-shared-library
MlosExtractedCandidate entidad de puesta en escena para el oleoducto de ingestión (D48)
La salida terminal por campo de MLOSIngestionService: un escenificado, revisable candidato de extracción (segmento/fuente FK, targetEntity, fieldPath, cellRef, en bruto/valor normalizado, DECIMAL(4,3) confianza, revisiónStatus). Candidatos NUNCA promueven en entidades de catálogo canónica excepto a través de MLOSCatalogService's RateSheetSanityGate - aprobación humana. Completa el sustrato de ingestión **************** ExtractionTemplate pre-existido). mlos.catalog ya en KI escaneo . mesa auto-creada en siguiente KI run; los servicios funcionan ddl-auto:none.
· kamo-shared-library
Aislada de la vuelta de perfil de mejor esfuerzo para caminos de paredes legales (D47)
fundgeFactsBestEffort ejecuta el enriquecimiento-back en su transacción OWN (REQUIRES-NEW) por lo que un fracaso nunca puede hacer retroceda la transacción del llamante. a salvo de devolución para una ruta de decisión de la relación legal (AUS/reglas internas) La decisión del registro debe persistir independientemente. Saltea en silencio cuando no existe ningún perfil. Prueba de lib compartida (sábarseta-cuando-austo/delegado-cuando-presente).
· kamo-internal
Sección de Licencias de Estado sobre miembro de mi perfil
Nueva secciónCard (NMLS ID - mesa con licencia por estado con activa- proporcionar casilla de verificación y fechas de renovación/expiración, renovación-=expiración validada). Cated por ************* Añade la siguiente ruta proxy, TS RoleRightType espejo, y diseño/plan docs.
· SecurityService
API de licencia del Estado miembro - Disponibilidad de plomo consciente de la licencia
Añadir MemberStateLicensingController (GET/PUT /api/security/members/-id-/ estado-licenciada) cerrada por los derechos de ESTADO-LICENSING* con el lado del servidor renovación. Habilitar mlos.legal repos de la JPA. Resumen popup y la red con plomos-disponible ahora respeta la elegibilidad para licencia del estado.
· kamo-shared-library
Licencias de miembros con sede en el Estado - puerta de la aceptación de plomo
Reutilizar mlos.legal StewardLicense como el NMLS único por miembro/per-estatal registro de registro (añadir activamenteProporporción deBusiness). Añadir miembro de nivel miembro.nmlsId. Añadir los derechos generales de los permisos ************* CreditLeadAssignmentService ahora se salta candidatos a líderes hipotecarios quiénes Estado de propiedad explícito en el que el miembro no tiene licencia activa.
· kamo-internal
Añadir Fuente a los campos de plomo mapeables
La "fu fuente" principal se muestra en la página de detalles del plomo, pero faltaba en la lista de campos de importación; Añádalo (camanza 'fu fuente') ahora que el importador de backend . CreateLeadRequest lo soporta.
· SecurityService
Mapear una columna importada en el campo de plomo de la fuente.
Añadir "fu fuente" de la causa para establecerDirectFieldOnCreateSolicitar para que se honre el camino de mapeo 'fu fuente'.
· kamo-shared-library
Añadir el campo importable de la fuente a CreateLeadSolicación. Pertinúar en crearLead
El Líd de la Líd de la Lídeo tiene un texto libre de la fuente (mostrado/ediado en la página de detalles del plomo) pero fue así no importable - CreateLeadRequest no tenía campo de origen, así que crearLead nunca lo configura. Añádalo para que las importaciones manuales puedan mapear una columna de archivo a la fuente del plomo.
· kamo-shared-library
Añadir ScenarioProfileSource.PRICING para el escritor de escenarios FICO/ratio write-back (D45)
· kamo-shared-library
Espina de hecho de escenario canónico - derivador de génesis - hechosPoblar de la escritura - juego de superposición de escrituras (D45)
D1/D45 amplía el BorrowerScenarioConsumo de Perfile. Populate la dormitorio hechoJson y lo convierte en la fuente compartida de la verdad para los hechos prestatarios/ploan: - EscenarioFactKeys: único vocabulario canónico de clave clave . enriquecimiento) - normalizar (); la lista blanca D21/derivar/consumidores se refiere a estos. - ScenarioFactDeriver: promueve la derivación categórica D18 LTV/CLTV/HCLTV fuera de MLOSPricingService en shared-lib (un hogar para hechos derivados de la entidad). - BorrowerScenarioProfileService: produceDeromUrla ahora pobosa hechos estructurales (preservar el enriquecimiento); resolverFacts () para asesoramiento de archivo de brechas; mergeFacts (preservación) La devolución que se filtra al nivel de enriquecimiento (genesis es propia estructural, D45.3). - ScenarioFacts.fillGapsDesde lo siguiente): fusión de asesoramiento (solicidad gana, perfil llena vacíos). - InvestorOverlayMatcher: limpio de partido seguro de fallos (sólo presente y violador). Sin cambios de esquema/KI (hechosJson columna pre-exists). 27 pruebas dirigidas de verde.
· kamo-internal
La pestaña Reglas de Canal completa la superficie de configuración de 3,2
· SecurityService
Colección de reglas de aplicabilidad del canal CRUD - completa config
createChannelRule/update/delete en la columna plana D31 (nivel de perfil, org fallar, WORM change-log); controller /nel-rules GET/POST/PUT (borrar a través de activo:falso). Alcance/canal/salida requerido; ************* autoridad/financiación opcional. Ventana efectiva opcional. La última entidad de config.
· kamo-internal
Pestaña Habilitar producto (por programa, versionado)
· SecurityService
Discunción de producto config - por programa de un solo programa, desactivado eficaz
**************** (program-scoped demote-ento-insert) Lee; controlador / habilitadores de productos GET (activo por programa) / PUT (publicado). Cuerpo lleva programaId, enabled, lifecycleVariant, canalRestriction, effectiveDe.

Tu universo está esperando.
Comience gratis en minutos y agregue productos cuando esté listo, sin migración ni nuevos inicios de sesión.
Gratis para siempre: no se requiere tarjeta de crédito