Changelog
Cosa c'è di nuovo.
Ogni miglioramento alla piattaforma, come si spedisce.
· kamo-shared-library
Aggiungi venditoreCredits campo + @JsonIgnoreProperties tolleranza su richiesta di piombo DTO
Specchi restauroCosto: colonna entità, 3 DTO (CreateLeadRequest/ UpdateLeadRequest/LeadDTO MortgageFieldsDTO + LeadDTO builder), LeadService crea/aggiornamento passante, e un LeadHistoryFieldRegistry descrittore (mortgage.sellerCredits). Niente, niente di predefinito. Sincronizzazione di LOS differito in attesa di conferma campo-id. Aggiungono anche... E' il momento giusto. (outer + nido MortgageFieldsDTO) così la risposta-shape campi la richiesta DTO non portare (ad esempio il prestitoPurpose stringa enum mirror) non più 400 il mutuo salvare con E' il momento giusto
· kamo-internal
Rimuovere la carta Cash-to-Close; spostare i campi dell'acquirente-agente alla scheda Proprietà Oggetto
· kamo-internal
Avvertire la navigazione via / le schede di commutazione con le modifiche non salvate
· kamo-internal
Rimuovere le note a piè di stima/disclaimer dalle schede di scenario
Gettare il componente EstimatedNote e il suo idraulico, e l'AI-narrative verifica-prima disclaimer, per richiesta del proprietario di smettere di mostrare stime / note disclaimer sulle carte di scenario ipotecario.
· kamo-internal
Reorder outputs E' il momento giusto. + spostare salvare errore brindisi in basso
· kamo-internal
Inlineare i marcatori del campo di render dopo l'etichetta, non di estrema destra
· kamo-shared-library
ClosingHorizon — condiviso §5 close-date euristico (stadio → giorni lavorativi)
Una fonte per l'orizzonte di chiusura in modo da prevedere i mercati dei capitali e il progetto di spazzamento doc-freshness la data di chiusura SAME. Un CDF calibrato sostituisce il tavolo più tardi.
· kamo-internal
Inline marcatori di campo rosso/giallo + rollup scheda; drop Profilo
· kamo-internal
Colonne residenziali-mortgage (Purpose/Loan Amount/LTV/DTI) + Filtro Finale
Su /leads, quando il mercato selezionato è un mercato Residential Mortgage, mostrare quattro colonne a destra di Stato: - Scopo — mutuoFields.loanPurpose, intitolato ************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************** - Importo del prestito — compatto "574k" tramite nuovo fmtK() - LTV / DTI — calcolato dal motore ipotecario (ltv()/dti().backEnd), un decimale Tutti rendono un em-dash quando il loro campo / ingressi sono impostati. Loan Scopo ottiene anche un filtro della barra degli strumenti (mirrors il modello productFilterValue: stato + Seleziona + filtro in entrambi i rami filtratiRowData + reset + browser-stato persistere), mostrato e applicato solo nella vista Residential-Mortgage in modo che non possa svuotare silenziosamente una griglia non-mortgage. Gate: preservare market.salesSubType (già nell'API, precedentemente caduto) e deriva èResidentialMortgageView = attualeMarket.salesSubType == RESIDENTIAL MORTGAGE. I dati provengono dall'ampliamento LeadListDTO; nessun leadApi cambio (mapLeadResponse spread). Nuovi aiutanti puri fmtK + prestitoPurposeLabel sono testati in unità ************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************
· kamo-shared-library
Carry figure ipoteche in LeadListDTO per la griglia /leads
Le colonne /leads Residential-Mortgage (Loan Amount, Loan Scopo) e client-side LTV / DTI bisogno di dati ipotecario la proiezione elenco magra non ha spedito. Widen ListMortgageFields + daLead con prestito Importo, prestitoPurpose(+id), proprietàValore, acquistoPrezzo, downPayment, correnteBalance, cashOutAmount, stimato stimato Reddito, mensileDebts, AnnualPropertyTaxes, assicurazione annuale, mensileHoa — a specchio LeadDTO.MortgageFieldsDTO e il suo prestitoPurpose.name() codifica. Ancora non ha contatti PII (nessuna strada/città/zip, e-mail, o telefono).
· kamo-shared-library
Ristrutturazione SyncCost + correnteLoanType attraverso Mapper MeridianLink (ids TODO-flagged)
Estende il cablaggio isVeteran LO-XML (1f583db) alle due nuove ristrutturazioni/ campi razionali aggiunti in 4A (5132026). - LoXmlFieldMapper: FIELD RENOVATION COST (sRehabTotalCost) + FIELD CURRENT LOAN TYPE (sProdCurrentLoanT) costanti, sia TODO-flagged come ipotesi di convenzione non confermate, aggiunto a TRACKED FIELD IDS. leadToLoXml emette ristrutturazioneCost tramite denaro() e correnteLoanType via putIfPresent(); loXmlToLead li parses via parseMoney()/trimToNull() come i nuovi componenti di patch trailing. - LeadFieldPatch: record canonico cresce a 9 componenti (...isVeteran, ristrutturazionCost, correnteLoanType); il costruttore aux aux a 6-arg ha ora predefinito tutti e tre componenti trailing a null così SecurityService 6-arg LOS-apply test continua a compilare. - LeadService.applyLosPatch: due null-guarded write-backs registrazione ipoteca.renovationCost / ipoteca.currentLoanType chiavi di storia, specchio èVeteran. - LoXmlFieldMapperTest: emit/parse/absent copertura per entrambi i campi + aggiornato tracciatoFieldIdsAreTheSyncedSet asserzione. - LeadServiceLosTest: aggiornato 4 siti di chiamata preesistente 7-arg LeadFieldPatch(...) a 9-arg (regolazione di compilazione collettiva, nessun cambiamento di comportamento).
· kamo-internal
Ristrutturazione famiglia (203k/HomeStyle) + razionalizzazione (FHA Streamline/VA IRRRL)
Aggiunge due nuovi ingressi (renovationCost, currentLoanType) e cinque righe di eleggibilità gated sul segnale reale del mutuatario, corrispondente all'esistente show-only-When-signaled disciplina: - FHA 203K LIMITED / FHA 203K STANDARD: avanti + solo primario, diviso sulla $75k rehab-cost boundary - HOMESTYLE CHOICE: analogico di ristrutturazione convenzionale, qualsiasi occupazione (merge HomeStyle + CHOICERistrutturazione in una riga) - FHA STREAMLINE / VA IRRRL: refi-only, gated sul tipo di prestito esistente
· kamo-internal
Proiettato Chiudi sezione — superfici il §5 previsioni ravvicinate
Capital & Risk console ora fetches /closing-forecast e mostra ogni prestito attivo progetto di data vicina (stage-based business-day orizzonte), presto-primo. Best-effort (mai manca la console). Fa il motore di ultima generazione utilizzabile.
· kamo-shared-library
Aggiungi ristrutturazioneCost + correnteLoanType campi ipotecari
Specchi il campo èVeteran (3f0cea1): colonna entità, 3 DTO Non e' vero. MortgageFieldsDTO + LeadDTO builder), LeadService creare / aggiornare passante, e LeadHistoryFieldRegistry descriptors (mortgage.renovationCost, ipoteca.currentLoanType). Niente di niente, niente di predefinito. Sblocca i lavori di ristrutturazione-famiglia e razionalizzazione del programma (Task 4B/4C).
· kamo-internal
Mettere Loan Scopo prima sulla scheda Loan (porta rilevanza campo)
· kamo-shared-library
Sync èVeteran attraverso MeridianLink LoXmlFieldMapper (id TODO-flagged)
Fili LeadClaimMortgage.isVeteran nel giro di LO-XML utilizzando il convenzione campo id aBIsVeteran (taglie l'aB... mutuatario-attributo prefisso di aBFirstNm/aBLastNm) con un TODO per confermare l'id e 1/0 codifica contro l'inquilino LOXmlFormatDefinition.xml. - LoXmlFieldMapper: FIELD BORROWER IS VETERAN costante + TRACKED FIELD IDS ingresso, leadToLoXml emette "1"/"0", loXmlToLead parses via nuova parseBool helper (1/true/y/yes -> TRUE, 0/false/n/no -> FALSE, altrimenti null). - LeadFieldPatch: nuovo trailing è componente recordVeteran. - LeadService.applyLosPatch: si applica in entrata èVeteran, record ipoteca.isVeteran storica chiave (matches LeadHistoryFieldRegistry da il commit 3A). - LeadServiceLosTest: aggiornato 4 preesistente LeadFieldPatch(...) chiamata siti per il nuovo componente record (collateral compila fix, no cambiamento di comportamento). - LoXmlFieldMapperTest: nuova copertura per vera/falsa/null andata e ritorno entrambe le direzioni.
· kamo-internal
Campo Veteran-status + mappa soggetto stato/zip; abilitare l'ammissibilità VA; dedupe insights/completezza
· kamo-shared-library
Add isVeteran campo ipotecario (entity, DTO, servizio, storia)
· kamo-internal
Controlli di consistenza cross-field (Data Checks card)
· kamo-internal
Completamento del profilo dello scopo + misuratore di intestazione ponderato
· DaemonService
Riconoscimento del prestito in entrata in Org-scoped nel poller MeridianLink
· kamo-shared-library
Org-scope inbound LOS prestito di ricerca + post-commissione spinta in uscita + controllo della storia in entrata
· kamo-internal
Etichette di pagamento per ingressi mancanti (PITI parziale, no-debt back-end, convenzionale-PMI MI)
· kamo-internal
Scopo-gate Eligibility Snapshot; nascondere i programmi non valutabili; fondere HomeReady/Home Possibile; ordinare UNKNOWN ultimo
· SecurityService
LOS interno applica il punto finale per la sincronizzazione in entrata
# POST # {leadUid, provider, loXmlFields} — server-to-server (nessuna sessione/destra). Controllo costante X-Internal-Auth contro il segreto del cluster-auth; intestazione mancante/rong -> 403 prima di qualsiasi ricerca o mutazione. Mappe LO-XML via LoXmlFieldMapper.loXmlToLead e applica MeridianLink-wins tramite LeadService.applyLosPatch (che emette il LEAD UPDATED in tempo reale). Chiamato da DaemonService.
· DaemonService
MeridianLink 60s inbound poll job
Scolare la coda per-appCode modificata (collegata a distinte (instanceBaseUrl, appCode) poll-units) e campo riconosciuto in avanti Le modifiche al LOS interno di SecurityService applicano il punto finale tramite RestTemplate + X-Internal-Auth. I prestiti riconosciuti (un LeadLosLink esiste) sono applicati poi sgomberato + ultimoPulledAt timbrato (orologio iniettato); prestiti non riconosciuti e il mancato pagamento viene lasciato in coda. Fallimento tollerante, non protetto, Innesco 60 quarzo; PLATFORM ENC KEY montato per il risolutore creds.
· kamo-internal
Lead Crea/Apri il pulsante Applicazione + LOS proxy percorsi + leadApi
Fase 7 dell'integrazione MeridianLink esterno-LOS: aggiunge l'intestazione pulsante che crea o apre il file di prestito MeridianLink collegato al piombo, il Prossimo.js proxy percorsi chiama, e il conduceApi / superficie di tipo che porta losProvider/losLinkStatus da market-config.
· SecurityService
Lead create/open LOS application endpoints + market-config campi MLOS
· kamo-shared-library
Lead↔LOS push/patch + gancio di sincronizzazione in uscita
· kamo-internal
Riduzione dell'integrazione MLOS sul mercato modal
Aggiungi un dropdown di integrazione MLOS E' il momento giusto. al mercato Add/Edit modal, indicato solo per Servizio > Mortgage Residenziale mercati, più un pulsante Configura accanto a esso. La configurazione è disabilitata fino al mercato viene salvato; per MERIDIAN LINK si apre il nuovo per-market Configure finestra di dialogo, per KAMO MLS deep-links alla console interna MLOS esistente (il singolo POS commerceTipo: la scheda Integrazioni del mercato di MORTGAGE), e ENCOMPASS ICE rimane disabilitato con un tooltip "prossimo".

Il tuo universo ti sta aspettando.
Aggiungi i prodotti quando sei pronto: nessuna migrazione, nessun nuovo login, nessuna richiesta di pagamento.
Gratis per sempre — nessuna carta di credito richiesta