A gift saves as a true PATCH, the lender words its own text consent, and a borrower's full consent wording is kept
- AppMortgageService.patchGift merges the request over the stored gift, so saving one field no longer clears the amount, donor and recipient. - LenderProfile....
Saving the property's address keeps its purchase price, and saving a loan amount keeps the loan's purpose
**************** merge the request over the stored loan and property before the whole-record update.
Editing one field of a job, account, debt, other income or expense keeps the rest of the row
Those updates replaced every column, and EMPLOYMENT_TYPE_ID is NOT NULL, so the portal's one-field edits either failed or blanked the rest. **************** mer...
A micro action remembers the last document a phone capture uploaded
DDL (last_document_id UUID) applied by hand as the owner role before this push.
Borrower PATCH keeps what a screen did not send, declarations read and save under their URLA names, and single-use co-borrower requests
- BorrowerPatchMerge + **************** the request is laid over the stored borrower, so saving Your Info no longer wipes citizenship, dependents, housing or ...
Void records who, an order's invoices on an index, and the invoice receipt template
**************** (VOIDED_BY_MEMBER_ID) so a voided invoice shows who voided it; IX_INVOICE_ORDER and **************** for a retail order's Invoice tab; ********...
The application shows its persona and chosen program, and a borrower can say they own no real estate
The application read now carries persona and selectedProgramCode (enum names, read-only). A borrower can answer URLA section 3 "I do not own any real estate" (o...
Record lead events for drips that start when someone enters a saved audience
AUDIENCE_ENTERED drips listen to lead created, status changed, reassigned and credit assigned, so an existing lead that comes to match the audience is noticed.
The ciphertext guard must keep seeing the borrower's ITIN and passport columns
Keep a borrower's ITIN or passport, and add the consent scopes the portal records
A borrower without a Social Security number can now give an ITIN or a passport number, or choose to give it to their loan officer. Each number is encrypted at r...
A work order invoice's customer links and sends, and an index for an account's subscription invoices
CommerceInvoiceLink (commerce_invoice_links): one view-online link per row, stored as the SHA-256 of a 256-bit token, never the invoice id; expires_at, revoked_...
A borrower can keep a rate watch on their loan, and a deal can have a closer
BorrowerRateWatch (mlos_borrower_rate_watch, created by hand as the owner role) holds a borrower's opt-in "tell me if rates drop" preference for one application...
The lender profile names and pictures the borrower guide
Owner decision 2026-11-11: one guide per lender on the KamoMLOS portal, named and pictured by the lender. Three nullable columns on mlos_lender_profile β guide_...
A second subscription is safe, grace periods, per-market agreements, paid/ended events
Generic for every org selling through the Subscription line of business: - CorePlans: the core-plan subscription is picked deterministically; a flat product (...
Marketing site, request and dispatch entities, rights and the god-only support topic flag
- MarketingSite / MarketingSiteRequest (WEB-<n> from its own sequence) / MarketingSiteDispatch entities and repositories, matching the hand DDL (column defaul...
Each market decides whether accepting a lead needs a disposition, a note, or both
Adds requireDispositionToAccept / requireNoteToAccept to LeadMarket (null reads as required, so existing markets behave exactly as before). LeadAcceptEligibilit...
A bankruptcy answer that is not a clear yes or no stays unset
The generic boolean reader treats every word it does not know as false, so a vendor's 'maybe' or 'n/a' became 'no bankruptcy' - a wrong claim about the borrower...
Townhouse and Planned Unit Development are property types of their own
Appended as ids 5 and 6; the existing ids are untouched. The vendor-word detection now sends townhouse/townhome/row house and PUD there instead of folding them ...
Hold what a mortgage vendor sends - credit rating words, employment, bankruptcy, desired loan type, county, timeframe, down payment percent, and consent proof; recognise property type by the words vendors use
Credit rating is its own column (CREDIT_RATING_DESC) beside the numeric ESTIMATED_CREDIT_SCORE. IP address, TrustedForm certificate and Jornaya LeadiD live on t...
Online store sync saves what it reads β products, stock, customers and orders, idempotently
Until now a sync read the store, counted the records and threw them away, and every run said it worked. - StoreReader per platform (Shopify, WooCommerce, BigCo...
Job numbers from a locked per-org counter, never a count; payments on a commerce invoice
Work order numbers were COUNT(jobs)+1, so two jobs raised at once could share one, and jobs raised from a paid order (ServiceFulfillmentPolicy) got no number at...
Switches for vendor-finding holds, vendor results, closing-docs orders and pricing sign-off
Owner rule: every action the MLOS takes on its own has a switch, OFF by default (two systems kept in sync must never both act). New MlosAutomationAction constan...
Procurement gets its own two notification kinds
PURCHASE_REQUEST_SUBMITTED (to everyone who can approve, gated on APPROVE_PURCHASE_REQUESTS) and PURCHASE_REQUEST_DECIDED (to the person who asked, gated on MAN...
Held legal uploads carry their Antivirus state; conversations count removed attachments
**************** (PENDING | BLOCKED, null = ready) and antivirus_family: a requested-document upload held while Antivirus was busy is recorded at once, pinned b...
ConfirmAndRelease, a confirmed concern that lets the loan go on
A steward can confirm a routed concern that calls for a protection rather than a stop (a borrower on active military duty: SCRA applies, it never bars the loan)...
A person clears or confirms a routed concern; a confirmed hold keeps the loan from moving
- DecisionSpine.uphold: a HUMAN_CONFIRMED decision (WORM, supersedes the routed one), the task closes UPHELD and the stage stays BLOCKED. resolve/uphold refus...
Finicity and Truv links get their own connection types
Finicity links were recorded as PLAID_AUTH and Truv as ARGYLE, the 'nearest peer' mapping. A lender switching asset provider from Plaid to Finicity would have h...
A hold verdict that beats the upload's commit no longer strands the document
Found in the live HOLD-path test: with the engines ready, a brief hold is judged in milliseconds and the antivirus.hold.verdict event arrived ~30 ms BEFORE the ...
A customer added or edited in market settings keeps its name, email and phone
**************** ignored firstName, lastName, email and phone, so the market Customers tab created empty accounts and its edits to the person never saved. Prese...
Protection widget rights, baseline verdicts, pre-Antivirus copies latch bytes_stored, refusals name the file
- RoleRightType ANTIVIRUS_WIDGET five-right block (703-707) under VIEW_ANTIVIRUS; RoleRightHierarchyTest 447 -> 452, children 292 -> 297. - AntivirusBlockedEx...
SiSettingChange β the Super Intelligence setting change log (SIS11)
Declares si_setting_changes (kamoai-service **************** applied) so KamoInitializer can recreate it; kamoai-service reads and writes it JDBC only.
Compliance Requirements engine entities, Platform Library items, two rights (701-702)
hr_compliance_requirement / _record / _record_event (append-only) / _gate_override and hr_platform_library_item; LegalPackage gains library_item_uid + library_e...
Order vendors for homeowners insurance, IRS transcripts, sanctions, fraud and SCRA
HOI: Matic, Covered (partner endpoints). TAX_TRANSCRIPT: Equifax IRS Tax Transcripts, Informative Research. SANCTIONS: LexisNexis Bridger Insight XG, ComplyAdva...
One stock count per product per place, shared by orders, the Stock view and settings
Retail had two stock systems: orders held and took from InventoryPool, while the market settings Inventory tab managed commerce_stock_levels, which no order eve...
VendorWebhookUrls, the public webhook address of every vendor that sends status updates
One base (https://api.kamouniverse.com) and the org in every path, matching each receiver: order vendors **************** Proof **************** DocuSign Connec...
Order vendors' webhook keys stored encrypted
Every catalogued webhookSecret is now a CONFIG_SECRET (encrypted, write-only). **************** cipher) gives a webhook verifier a detached copy with the keys d...
A second write-only secret per connection (CONFIG_SECRET)
**************** keeps a second secret (e.g. a webhook signing key beside the API secret) ENCRYPTED in configJson. Adapters read it with **************** key, c...
A reseller credit pull records a vendor instead of failing to save
Connection.VENDOR is NOT NULL, but CreditOrderService only stamped a vendor when the key was a direct bureau. Every reseller key (Xactus, Credit Plus, MeridianL...
Order vendors in the catalog β appraisal, title, flood, income, asset and identity
Twelve vendors the vendor-order service now has adapters for, each with its real credential form and sandbox/production addresses: - Appraisal: Mercury Network,...
Closing documents from DocMagic and Docutech; real eClose vendor URLs and fields
CLOSING_DOCS offers DocMagic and Docutech. Proof and DocuSign Notary get their published hosts (Proof production/Fairfax, DocuSign's OAuth hosts) and real crede...
Credit resellers on the MISMO 2.4 login fields; DocuSign and DocMagic eSign in the catalog
- CREDIT: every reseller (Xactus, Credit Plus, MeridianLink, CBC Innovis, Factual Data) takes the MISMO 2.4 credit request with the account login on REQUEST, ...
Catalog Desktop Underwriter, Loan Product Advisor, Optimal Blue and Polly
AUS: DU (Fannie Mae Desktop Underwriter) and LP (Freddie Mac Loan Product Advisor, alias LPA), keyed to the AusKind/AusSourceLabel the AUS engine already uses. ...
A subscription can only be ordered or priced from a catalog on offer to the org
createOrder and calculatePrice looked a plan up by id alone, so a member of one tenant could order, or read the pricing of, another tenant's plan. A plan is now...
A lender picks the primary vendor per category
MortgageProviderConfig gains is_primary (BOOL DEFAULT FALSE; the column was added by hand on production first). resolvePrimary now serves the enabled primary ro...
A vendor catalog the Partners tab and every adapter share
Adds **************** the single list of vendors Kamo has an explicit integration for per VendorCategory, each with its credential form (VendorField), default s...
Orders belong to a market; walk-in sales, partial refunds, real cart and draft conversion
- An order's engagement now carries the Retail market it was sold in (named, or the org's only one), and the purchasing account. A converted quote stamps its ...
Like what you see shipping?
All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.
