Rebuild against kamo-shared-library
Pick up LeadListDTO mortgage figures (loan amount/purpose + LTV/DTI inputs) so the /leads grid's Residential-Mortgage columns are served. No code change; CI bui...
Carry mortgage figures in LeadListDTO for the /leads grid
The /leads Residential-Mortgage columns (Loan Amount, Loan Purpose) and the client-side LTV/DTI need mortgage data the lean list projection didn't ship. Widen L...
Sync renovationCost + currentLoanType through MeridianLink mapper (ids TODO-flagged)
Extends the isVeteran LO-XML wiring (1f583db) to the two new renovation/ streamline-refi fields added in 4A (5132026). - LoXmlFieldMapper: FIELD_RENOVATION_COS...
Renovation family (203k/HomeStyle) + streamline refis (FHA Streamline/VA IRRRL)
Adds two new stated-lead inputs (renovationCost, currentLoanType) and five eligibility rows gated on real borrower signal, matching the existing show-only-when-...
Projected Close section — surfaces the §5 close-date forecast
Capital & Risk console now fetches /closing-forecast and shows each active loan's projected close date (stage-based business-day horizon), soonest-first. Best-e...
Add renovationCost + currentLoanType mortgage fields
Mirrors the isVeteran field (3f0cea1): entity column, 3 DTOs **************** MortgageFieldsDTO + LeadDTO builder), LeadService create/update passthrough, and L...
Rebuild against shared-lib isVeteran (LeadClaimMortgage col + LeadFieldPatch + mapper)
Rebuild against shared-lib isVeteran (LeadClaimMortgage col + LeadFieldPatch + mapper)
Backward-compatible 6-arg LeadFieldPatch constructor (isVeteran defaults null)
Keeps existing 6-arg consumers (e.g. SecurityService LOS-apply tests) compiling on the shared-lib bump without a lockstep change.
Sync isVeteran through MeridianLink LoXmlFieldMapper (id TODO-flagged)
Wires LeadClaimMortgage.isVeteran into the LO-XML round trip using the convention field id aBIsVeteran (matches the aB... borrower-attribute prefix of aBFirstNm...
Veteran-status field + map subject state/zip; enable VA eligibility; dedupe insights/completeness
Phase 2 review polish — drop dead prop, dedupe LTV/equity warn, guard 0-value mismatch checks
Split form into Loan / Borrower / Subject Property tabs
Splits the mortgage sub-form's mega-grid into four sub-tabs (Loan, Borrower, Subject Property, What-If Studio) and renames "Property Address" to "Subject Proper...
Org-scope inbound LOS loan lookup + after-commit outbound push + inbound history audit
Honest DTI/payment labels for missing inputs (partial PITI, no-debts back-end, conventional-PMI MI)
Use dictionary t() keys for MLOS integration UI strings
Replaces the `// i18n: dictionary key TODO` placeholder literals in LeadMarketManager (MLOS Integration select), MeridianLinkConfigDialog (field labels, Test Co...
Purpose-gate Eligibility Snapshot; hide unevaluable programs; merge HomeReady/Home Possible; sort UNKNOWN last
Drop poller link write so server-owned contentHash isn't clobbered; collision-safe poll-unit key
ApplyLosPatch owns lastPulledAt (stamp on no-op too); single link writer
Internal LOS apply endpoint for inbound sync
POST **************** {leadUid, provider, loXmlFields} — server-to-server (no session/rights). Constant-time X-Internal-Auth check against the cluster internal-...
MeridianLink 60s inbound poll job
Drain the per-appCode modified-loans queue (collapsed to distinct (instanceBaseUrl, appCode) poll-units) and forward recognized field changes to SecurityService...
Lead Create/Open Application button + LOS proxy routes + leadsApi
Phase 7 of the MeridianLink external-LOS integration: adds the header button that creates or opens a lead's linked MeridianLink loan file, the Next.js proxy rou...
Lead create/open LOS application endpoints + market-config MLOS fields
Checkbox selection no longer reloads the grid
Selecting a row checkbox called setSelectedIds(new Set(...)), which was listed in loadLeads' useCallback deps. That gave loadLeads a new identity on every click...
Use the full logo in the masthead (top-left)
Was the icon logo (64x64 square). Switch to variant="logoFull" (logo-full), sized 56px tall with auto width (capped 320px) so the wordmark isn't squished.
MLOS integration dropdown on market modal
Add a MLOS Integration dropdown **************** to the market Add/Edit modal, shown only for Service > Residential Mortgage markets, plus a Configure button be...
MeridianLink per-market Configure dialog
New MeridianLinkConfigDialog, modeled on the platform OAuth EditDialog, scoped to a single LeadMarket's connection via losConnectionApi (Phase 3 backend). Edits...
Center the watermark logo in the page area
Was pinned bottom-right (backgroundPosition "right -4% bottom -8%"). Center it in the content region — inset past the nav rail + top bar via --nav-pri-width / -...
Align losConnectionApi.remove return type
The DELETE endpoint returns {deleted:true, marketId}, not just {deleted:boolean} — align the client type to match the backend shape.
Real soft-delete + reactivate-on-upsert for LOS connection; safe test-connection message
I1: view()/testConnection() now read via the shared-lib's active-filtered finder so a soft-deleted (market,provider) connection reads as "not configured" instea...
Active-filtered MarketLosConnection finder
Adds **************** so consumers can treat a soft-deleted (isActive=false) LOS connection as absent, mirroring SocialConnectionController's active-filtered re...
Drop the collapsible box around upload + gallery
The "Your wallpapers" section was a collapsible SectionHeader + Collapse — no reason to hide the upload and gallery behind an expand toggle. Replace with a stat...
MeridianLink vendor client-id card on platform OAuth registry
Adds a MeridianLink Mortgage ProviderDef to the platform OAuth2 client registry **************** vendor client_id ("Vendor Client ID") + non-secret config.token...
PlatformOAuthProviderType append-order guard
Regression-locks the Phase 5 pull-forward: MERIDIANLINK(8,"meridianlink", "MeridianLink Mortgage") must stay the LAST constant so no existing provider's persist...
Market LOS connection proxy + client
Phase 3 (Task 3.2) kamo-internal half: the Next.js proxy + typed client for a market's MeridianLink connection, backed by SecurityService's MarketLosConnectionC...
Market LOS connection service/controller
Phase 3 (Tasks 3.1-3.2) of the MeridianLink external-LOS integration: CRUD + Test-Connection for a market's MeridianLink connection. - MarketLosConnectionServi...
Fail closed on blank MeridianLink Save status + OKWithWarning test
LO-XML field mapper
LoXmlFieldMapper translates Lead/LeadClaimMortgage <-> confirmed MeridianLink LO-XML ids (sLAmtCalc, sPurchPrice, sApprVal, sLPurposeT, aBFirstNm, aBLastNm) wit...
MeridianLink modified-loans + deep-link
Adds ListModifiedLoansByAppCode (parse ArrayOfString -> loan names), **************** and AppView.GetPmlLoanUrl (prefix the partial URL with the origination hos...
MeridianLink SOAP client create/save/load
MeridianLinkSoapClient wraps the Loan.asmx ops over a Spring-WS WebServiceTemplate (namespace **************** per-op SOAPAction): Loan.Create -> loan name; Loa...
MeridianLink auth ticket cache
MeridianLinkAuthService mints and caches the sTicket per (instanceBaseUrl + sha256(clientSecret)) with an injected Supplier<Instant> clock and a configurable TT...
MeridianLink creds resolver
Adds the Phase 2 SOAP-adapter package **************** with MeridianLinkCreds (secret-redacting record) + MarketLosConnectionResolver, which decrypts the per-ma...
Like what you see shipping?
Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.