Aller au contenu
KAMOUniverse

Changelog

Ce qui est nouveau.

Chaque amélioration apportée à la plateforme, à mesure qu'elle est livrée.

  1. · kamo-internal

    Médias de configuration par marché MeridianLink

    Nouveau MeridianLinkConfigDialog, modélisé sur la plate-forme OAuth EditDialog, Lune avec une seule connexion du LeadMarket via losConnectionApi (phase 3 backend). Éditions plus un secret de client en écriture uniquement (le blanc conserve le chiffrement stocké), avec un Action de connexion d'essai et charge sur ouvert via losConnectionApi.get.

  2. · kamo-shared-library

    Dé découvreur de connexion MarketLosSyltré sur le marché à filtre actif

    Ajout, c'est-à-dire des consommateurs peut traiter une connexion LOS à dilatée molletée (isActive-faux) comme étant absente, en miroir du modèle de lecture filtrée actif de SocialConnectionController. Il n'existe pas de changement de schéma.

  3. · kamo-internal

    Carte client-id du fournisseur MeridianLink sur le registre de la plate-forme OAuth

    Ajout d'un fournisseur de services hypothécaires MeridianLink à la plateforme client OAuth2 Registre et vendeur client-id ("Vendor Client ID") - non-secret config.tokenUrl et Config.environnement. Pas de clientSecret au niveau de la plate-forme et par marché secret est la phase 3. Les cartes de fournisseur sont déclarées FE (réseau PROVIDERS), non dérivé de la liste GET du backend, de sorte que l'entrée est requise pour la carte à rendre même si... était déjà annexée côté serveur dans la phase 2.

  4. · kamo-internal

    Proxydation de la connexion LOS du marché et client

    Phase 3 (à la demande 3.2) moitié kamo-interne: le proxy Next.js et client dactylographié pour un La connexion MeridianLink du marché, soutenue par SecurityService MarketLosConnectionContrôleur. - ET ENSEMBLE/PUT/DELETE un mandataire à .../los-connection; un mandataire de POST au backend dédié .../los-connection/critère d'essai (action de connexion d'essai, pas de séparation Prochaine.js. itinéraire). Utilise forwardToApi, le passage de X-z-Token. - app/lib/los/types.ts: LosConnectionView (a réservé aux secrets, jamais le texte chiffré), LosConnectionUpsert (secret uniquement; blanc/outé keeps le stocké), LosConnectionTestResult, MlosIntegrationValue. - app/lib/los/connectionApi.ts: modélisé sur npx tsc --noEmit passe.

  5. · SecurityService

    Service de connexion LOS/contrôleur du marché

    Phase 3 (Tâches 3.1 à 32) de l'intégration de MeridianLink external-LOS : CRUD Connexion test pour la connexion MeridianLink du marché. - MarketLosConnectionService : MarketLosConnection, miroir de MortgageProviderConfig au repos convention (crypt-on-write via PlatformSecretCipher, blanc-en attente-existant secret, vue secrète, panier uniquement, éteinte, échoue CipherNotConfiguredException le chiffre n'a pas de clé). test Connexion aller-retour a MeridianLink auth ticket via l'adaptateur partage-lib (MarketLosConnectionResolver) MeridianLinkAuthService) et ne jette jamais. -Contrôleur de connexion de marché los-connection (GET/PUT/DELETE et POST /test), fermée sur MANAGE-CRM-SETTINGS - propriété du marché (via LeadMarketService, le même modèle que LeadMarketContoller). - SecurityServiceApplication: ajouté à «Atteindre les référentiels Jpa afin que MarketLosConnectionRepository injecte. Essais ciblés (tests unitaires hors ligne, pas d'appels SOAP/HTTP en direct) l'embarquement est toujours en attente): MarketLosConnectionServiceTest (10), (11).

  6. · kamo-shared-library

    Cartographe de champ LO-XML

    LoXmlFieldMapper traduit Lead/LeadClaimMortgage LO-XML ids (sLAmtCalc, sPurchPrice, sApprVal, sLPurposeT, aBFirstNm, aBLastNm) avec un tableau de traduction de LoanPurposeType--sLPurposeT (0-Augchase,1-Refi, 2-Refi-Cashout), plus un contenu stable sans ordre Indépendant SHA-256Hash sur le champ suivi fixé pour la suppression d'écho. LeadFieldPatch est le taux de nullité partiel mise à jour du plomb consommée par LeadService.applyLosPatch (Phase 6). Ids restants - sont garés en une seule étiquette Bloc FIELD-MAP en tant que dépendances explicites de la phase-0 (LOXmlFormatDefinition.xml).

  7. · kamo-shared-library

    MeridianLink-prêts modifiés et liens profonds

    Adds ListModifiedLoansByAppCode (parse ArrayOfString -, noms de prêt), et AppView.GetPmlLoanUrl (préfixer le partiel URL avec l'hôte d'origine dérivé de l'instance de connexion, par défaut à MeridianLinkSoapClient. Documenter le contrat de mise en file d'attente par code de drainage et de compensation dans la classe Javadoc (les prêts reconnus sont compensés; les prêts non reconnus sont laissés dans la file d'attente).

  8. · kamo-shared-library

    MeridianLink SOAP client création/sauvegarde/charge

    MeridianLinkSoapClient enveloppe le Loan.asmx ops sur un modèle de webService de Spring-WS (espace de nom et par-op SOAPAction): Loan.Create -- Nom de prêt; Prêt.Save écrit seulement les champs LO-XML modifiés (trié pour une charge utile déterministe) et jette sur un statut d'erreur; Loan.Load les éléments de parses sont retournés en "field id"... en arrière dans une carte (tolément d'un élément imbriqué) ou enchaîné LO-XML). sTicket est fourni par l'appelant. Tous les tests se moquent de la transport via MockWebServiceServer; rien ne peut être servi en direct jusqu'à la phase 0.

  9. · kamo-shared-library

    M. MeridianLink cache des billets

    MeridianLinkAuthService ment et cache le sTicket per (instanceBaseUrl sha256 (clientSecret)) avec une horloge du fournisseur-Instante injectée et une horloge configurable TTL est 20 min par défaut). mode oauth encadre le jeton échangé sous le titre "Bearer 'token'"; le mode d'héritage (meridianlink.auth.mode) retourne le billet GetPmlUserAuthTicket mot de mi-monnaie. L'échange de jetons est isolé derrière MeridianLinkTokenExchanger (par défaut, client OAuth-credents POST via Le contrat cache/TTL est testable avec un faux.

  10. · kamo-shared-library

    Résolveur de résolveurs MeridianLink

    Ajout de l'emballage de l'adaptateur SOAP de la phase 2 avec MeridianLinkCreds (secret-redacting) et MarketLosConnectionResolver, qui déchiffre le secret per-marché via PlatformSecretCipher et lit le client de la plate-forme client-id via PlatformOAuthClientResolver. Retire la phase 5 - constante (append-only id 8) puisque le résolveur en dépend. Ajout - test de printemps (essai) pour le transport SOAP utilisé par des tâches ultérieures de la phase 2.

  11. · kamo-shared-library

    Entité LeadLosLink et référentiel

    Suivre le lien d'une sonde dans un fichier de prêt LOS externe, une ligne par (chef, fournisseur). Porte la comptabilité de synchronisation (contentHash, lastPushedAt, lastPulledAt) cette phase 6 (poussée hors-auto) et la phase 8 (randonnée) utilise pour supprimer l'écho. Le plomb FK est épinglé à la colonneDéfinition. "INT8" (pas DEFAULT) pour la même raison unique de remblai de retour de randonnée que MarketLosConnection. Même substitution de harnais de base-tranches que (voir le Javadoc de cette classe) - kamo-shared-library n'a pas de harnais d'essai DB, donc Il s'agit plutôt d'un test de comptage/unité.

  12. · kamo-shared-library

    Entité MarketLosConnection et référentiel

    Comparaison des titres de certification/config par rapport au marché à un LOS externe (MeridianLink / KamoMLS / Encompass), une ligne par (marché, fournisseur). Le secret ne vit qu'en tant que AES-256-GCM colonne de texte chiffré (JsonIgnore); les colonnes de FK org/market sont épinglées à la colonne INT8/UUID clairesDéfinitions afin qu'ils n'héritent pas de la référence Le DEFAULT de PK - et le remblablement orphelin rangées sur un futur KamoInitializer. Il n'existe pas encore de harnais de gisement de stockage à base de DB en coq-singre (non encore DataJpaTest/H2/Testtainers, vérifiés par recherche), de sorte que les substituts de test compiler des assertions de niveau/unité (comportement de l'entité - annotations - dépôt les signatures de la demande dérivée par réflexion) pour le DB persistent - test de rebordage le plan précise.

  13. · kamo-shared-library

    LeadMarket.mlosAcolegration et aller-grip DTO

    Ajout de la colonne MLOS-INTÉGRATION (STRING-stored, defaults NO-MLOS, nulle-guardd getter) plus DTO/créate/update-demander de la plomberie. LeadMarketService s'effondre valeur à NO-MLOS chaque fois que le type de SaleType résolu n'est pas RESIDENTIEL-MORTGAGE, Seuls les marchés de services/résidentiels peuvent être porteurs d'une liaison LOS.

  14. · kamo-internal

    Préf. Préf de base de la console par membre dans DB; erreur de téléchargement plus claire

    - useBackgroundMode maintient désormais le choix du goulot d'admission dans le DB du membre; ui-préférences (suivi du membre à travers les dispositifs) au lieu de par dispositif LocalStorage. Remarquer la bascule "Ce dispositif" - "Console" et laisser tomber le "Ne suivez pas ... à d'autres dispositifs" légende. - Sur un rejet de téléchargement 4xx (le serveur ne pouvait pas traiter l'image, par exemple un format non pris en charge comme HEIC), montrer "Couldn't traiter cette image. Essayez un JPEG ou PNG." au lieu du générique "essayer à nouveau".

  15. · kamo-internal

    Mise en page à 4 cols (carte d'encart de chute sur l'onglet hypothèque); bac à sable à l'exclusion du bac à sable à l'exclusion du nom, chuter le code d'identification du lecteur redondant

  16. · kamo-internal

    Déplacer le calculateur d'accessibilité vers la colonne de sortie gauche en haut de la colonne de sortie gauche

  17. · kamo-internal

    What-If Studio en tant que sous-onglet de forme 3ème; bac à sable empilé pour s'adapter à la colonne de forme

  18. · kamo-internal

    Sortie panneau 2-col (éligibilité gauche, menus courts à droite); chuter les KPI/mètres maintenant en tête

  19. · kamo-internal

    IPC hypothécaire et LTV/DTI/Résumé complet de la page (tous les onglets, hypothèques résidentielles uniquement)

  20. · kamo-internal

    Les actions d'en-tête passent à la rangée des onglets; ajouter les fentes KPI et compteurs à la ligne principale

  21. · kamo-internal

    Détunérer les champs dans les détails de l'hypothèque / Sous-onglets d'adresse de la propriété; titre de la carte d'abandon

  22. · kamo-internal

    What-If passe outre-passe à côté du tableau de comparaison en direct; supprimer le scénario mort

  23. · kamo-internal

    aires de répartition des champs - disposition des sorties; bande de héros de gradient de retraite

  24. · kamo-internal

    Panneaux de sortie (colonne de sorties propres, pas de gradient)

  25. · kamo-internal

    Les champs apparaissent sous forme d'étiquettes en mode d'écoute, entrées en mode édition;

  26. · kamo-internal

    Détails d'un câblage de l'onglet et contact Info renommer; supprimer le bloc hypothécaire en ligne

  27. · kamo-internal

    Conteneur de taxis (cockpit vivant)

  28. · kamo-internal

    ScénarioGrid de la pertinence

  29. · kamo-internal

    MortgageHeroBand avec indicateurs de performance de comptage et de compteurs

  30. · kamo-internal

    WhatIfStudio (boîte à sable pleine largeur)

Votre univers vous attend.

Commencez gratuitement en quelques minutes. Ajoutez des produits quand vous êtes prêt. Pas de migration, pas de nouvelles connexions.

Gratuit pour toujours — aucune carte de crédit requise