KamoCRM

Live Change Log

Every feature, fix and improvement, posted as it ships. Nothing is held back for a launch.

15,120
Total Changes
5,169
Features
4,935
Fixes
30
Projects
Filter by project
All Projects15,120AIService197APIService161BillingService143ConversionService107DaemonService129DocsService215ESigService88EmailService518InitializerService318KBService105KlusterServices697MCPGatewayService85MediaService546RAGService71SecurityService1,658TranslateService55VOIPService205VectorService11kamo-apps25kamo-asterisk-support24kamo-capcha17kamo-capcha-widget4kamo-internal6,937kamo-login330kamo-marketing625kamo-nowww20kamo-register213kamo-shared-library1,455kamo-signer-monorepo53kamolos108
Filter by type
All TypesBuild11CI523Chore738Docs2,167Feature5,169Fix4,935Other986Performance157Refactor274Revert23Style42Test94Upgrade1
July 9, 2026
Featurekamo-internal

Recompute P(fund) action on the Capital & Risk console

Steward button rebuilds the pipeline-funding projections from the live pipeline (POST passthrough, org from session) then reloads the fan/KPIs. Gives the flagsh...

kamo·2mo ago
FeatureSecurityService

Steward passthrough to recompute pipeline-funding P(fund) projections

POST **************** → MlosCapitalMarketsClient (X-Internal-Auth, org stamped from session) → MLOSCapitalMarketsService recompute. Operator-gated like the othe...

Kamo·2mo ago
Featurekamo-shared-library

**************** (active-pipeline query for P(fund))

Kamo·2mo ago
Featurekamo-internal

Dedicated full-width wallpaper editor page

Adds **************** — a full-bleed, inline (no-popup) wallpaper editor, and moves all upload/gallery curation off the My Account tab. - New "cinematic Stage"...

kamo·2mo ago
Featurekamo-internal

On-demand LIGHT-tier AI summary on the Scenario Workspace Insights card

'AI summary' button posts the factual scenario to **************** → the org's configured provider. Graceful: no provider → deterministic rule-based insights st...

kamo·2mo ago
FeatureSecurityService

Scenario-insights endpoint — LIGHT-tier AI narrative via the org's provider

POST **************** takes a factual (estimated) scenario summary, calls MlosAiClient.text(orgId, prompt, LIGHT) through the org's configured AI provider, retu...

Kamo·2mo ago
Docskamo-internal

Spec for Background Watermark org setting

Design for a None/Full Logo/Simple Logo branding setting under Settings > Essential > behavior-labeling > Branding that governs the background logo watermark ac...

kamo·2mo ago
Featurekamo-internal

Lead Scenario Workspace — LO pre-qualification workbench on the mortgage lead

Right-side panel on /leads/view for mortgage leads: 14 modular tools (Summary, Eligibility, Payment, DTI, Affordability, Down-Payment/Rate comparison, Cash-to-C...

kamo·2mo ago
FeatureAIService

Tier-aware internal text completion (POST /api/ai/internal/text)

Mirrors the vision path: selectTextProvider picks the org's active provider tagged with the requested cost tier (LIGHT/MEDIUM/HEAVY), falling back by priority; ...

Kamo·2mo ago
Featurekamo-shared-library

MlosAiClient — the sanctioned tiered AI entrypoint for MLOS

Best-effort text()/vision() at a cost tier through the org's configured provider (AIService internal endpoints). Returns Optional.empty on no-provider/error so ...

Kamo·2mo ago
Fixkamo-internal

Keep manager open on upload/select; uploads join the slideshow

Members reported the background manager closing after every upload and every select, only one image appearing on the home slideshow, and the "use own" choice re...

kamo·2mo ago
Featurekamo-internal

Surface borrower-stated financials on the lead mortgage panel

Adds a 'Borrower-stated financials' subsection (estimated income/credit, purchase price, down payment, refi balance/cash-out) to /leads/view mortgage details, l...

kamo·2mo ago
FeatureSecurityService

Persist borrower-stated financials + phone onto the mortgage lead

ClaimedFactsDTO gains purchasePrice, downPayment, currentLoanBalance, cashOutAmount and phone; PortalLeadService.applyFacts maps them onto LeadClaimMortgage / t...

Kamo·2mo ago
Featurekamo-shared-library

Mortgage lead carries borrower-stated financials (income, credit, purchase price, down payment, refi balance/cash-out)

Surfaces the existing **************** and adds four stated columns to LeadClaimMortgage; wires DTOs (read/update/create), the history field registry, and LeadS...

Kamo·2mo ago
Fixkamo-internal

Repair per-tab *** migration gaps in directory + timeout popup

The *** session moved from a shared cookie to a per-tab sessionStorage carrier (X-***-Token). A few consumers were never updated to match. - Interaction Center...

kamo·2mo ago
Fixkamo-internal

Show the "Manage Background Images" button so members can upload

The Background & Theme section used BackgroundManager under external open-control but nothing ever opened it, so the upload/select dialog was unreachable — you ...

kamo·2mo ago
FeatureSecurityService

Process member uploads like org bg + gate by new rights

- New ImageResizeClient runs member background uploads through the SAME post-processing as org backgrounds (POST **************** and stores the result as ....

Kamo·2mo ago
Featurekamo-internal

Gate My-Profile backgrounds by the new rights + member/org slideshow

- Gate the My Profile "Background & Theme" section by MANAGE_OWN_BACKGROUND_IMAGES (self) / **************** (others); let a background-admin open another m...

kamo·2mo ago
Featurekamo-shared-library

Add Manage Own / Others Background Images rights (General group)

Adds MANAGE_OWN_BACKGROUND_IMAGES (165) and **************** (166) to RoleRightType, serviceType null so they land in the General settings group (mirrors the ST...

Kamo·2mo ago
FeatureSecurityService

Notify the assigned loan officer when a loan's borrower docs are all received

Fires LOAN_DOCS_READY_LO at the satisfy points alongside the borrower DOC_COMPLETE. Resolves the LO via loanFile -> **************** -> Member; self-guarded to ...

Kamo·2mo ago
Featurekamo-internal

Assign a loan officer to a deal from the originator section

The read-only Loan Originator section now has a loan-officer picker (org members via /members/names) + Assign, calling PUT **************** at the transaction l...

kamo·2mo ago
Revertkamo-internal

Scope the background back to the home + settings landings

Reverses the global-layout move — the member preferred the background on the landing(s) rather than behind every page. Backdrop is once again rendered per page ...

kamo·2mo ago
FixEmailService

Stop serializing computed xoauth2 getter that broke MailCredentials Redis cache

MailCredentials is cached in Redis (GenericJackson2Json). The added `isXoauth2()` boolean getter was serialized as a "xoauth2" property but has no field to read...

Kamo·2mo ago
Fixkamo-internal

Scope by org server-side (empty assocObjectId) — folders/list no longer empty

Keying materials on the org-id string was fragile: the id loses precision through a JS number on the write path and resolves inconsistently across proxy→APIServ...

kamo·2mo ago
Featurekamo-internal

Provider config fields for cloud mail access

Add the config inputs the EmailService resolver reads to authenticate cloud mailboxes: - Google Workspace: service-account key (JSON) for domain-wide-delegation...

kamo·2mo ago
FeatureEmailService

Route all cloud providers' mail through IMAP/SMTP with OAuth2 (XOAUTH2)

Cloud providers (Microsoft 365, Exchange Online, Google Workspace, Zoho, IceWarp) inherited read/send from **************** but the resolver never populated IMA...

Kamo·2mo ago
TestSecurityService

Lock the system-managed originator (projection, freeze, assignment)

8 tests over LoanTransactionService: live projection fills name/NMLS/subject-state license + org and marks LIVE; stale hand-entry is cleared when no LO is assig...

Kamo·2mo ago
Refactorkamo-internal

Render the console background globally in the layout, not per page

The background switch stays on the home page, but the chosen background (plain gradient or org slideshow) should be behind EVERY page, not just the two landings...

kamo·2mo ago
Featurekamo-internal

Deal-scope a vault upload from the account documents tab

The upload dialog now offers an optional "Deal" selector (the account's transactions); choosing one stamps loanTransactionId so a time-sensitive doc (credit rep...

kamo·2mo ago
FeatureSecurityService

Vault upload can deal-scope a document (loanTransactionId)

The vault upload now accepts an optional loanTransactionId, stamped onto the MemberDocument so a time-sensitive doc (credit report / bank statement) can be boun...

Kamo·2mo ago
Featurekamo-internal

Per-device background switch — plain gradient or org photo slideshow

Adds a two-icon switch top-right (under the trial pill; it rises into the pill's place once the trial ends) to choose the console background: - Plain gradient (...

kamo·2mo ago
FeatureSecurityService

Freeze the originator snapshot at initial Loan Estimate (Reg Z/TRID)

Completes the originator lifecycle: a shared resolveProjection() now feeds BOTH the live read projection and the freeze (no drift). On issuing an INITIAL_LE dis...

Kamo·2mo ago
Fixkamo-internal

Folders/list empty (org-id precision) + default visibility Team-Members-Only + custom labels

Root cause: materials store assocObjectId as the org id, which round-trips through a JS number on the write path (precision loss >2^53), so reads with the preci...

kamo·2mo ago
Featurekamo-internal

Transaction-first pipeline — PrimeReact expandable rows

Replaces the flat loan grid with a PrimeReact DataTable of TRANSACTIONS that start collapsed and expand IN PLACE to their member loans (no two-click drawer), so...

kamo·2mo ago
Featurekamo-internal

Re-add the trial pill top-right (color-swapped NavPri pill)

Keeps the trial line in the masthead status strip and re-adds a prominent pill in the top-right so an org's trial mode stays obvious. It's the NavPri expanded t...

kamo·2mo ago
Featurekamo-internal

Live "insert between" while dragging, not just drop-to-swap

Previously the order only changed on drop, so it read as swapping into a slot. Now the list re-flows live as you drag: dnd-kit onDragOver moves the dragged opti...

kamo·2mo ago
Featurekamo-internal

Sibling-loan switcher on the application view

A transaction can group multiple loans; the app header now shows a switcher to jump between the deal's sibling loans (hidden for single-loan deals) instead of o...

kamo·2mo ago
Featurekamo-shared-library

LoanFileDTO.loanTransactionId (app view knows its deal)

Surfaces the loan's transaction so the /applications view can show/switch sibling loans. Verified: mvn install clean.

Kamo·2mo ago
Featurekamo-internal

**************** (FE type)

Mirrors the backend field for the pipeline Transaction # column. Verified: tsc --noEmit clean.

kamo·2mo ago
FeatureSecurityService

Surface transactionNumber on TransactionSummaryDTO (pipeline Transaction #)

The per-transaction pipeline row now carries the human transaction number. Verified: mvn compile clean.

Kamo·2mo ago
Fixkamo-internal

Stop external-images banner flashing on already-allowed messages

The reading pane renders a message from its IndexedDB cache before the network fetch returns, and the cached copy lacks the server remoteImagesAllowed flag (und...

kamo·2mo ago
FeatureSecurityService

Originator projection resolves the per-state license

Completes the live originator projection: the assigned LO's StewardLicense (NMLS_MLO) for the SUBJECT PROPERTY's state (from property.address.subdivision, norma...

Kamo·2mo ago
Featurekamo-internal

Drag-and-drop to rearrange launchpad options, saved per member

Members can now reorder their home options by dragging, and the arrangement is persisted server-side per member (survives reloads and follows them across device...

kamo·2mo ago
Featurekamo-internal

Make Materials the first tab + default landing; remove Overview

Overview tab removed; Materials is now first. The /marketing index redirects to the first accessible tab (Materials by default), so anyone opening Marketing lan...

kamo·2mo ago
FixDocsService

Folder create/rename 500 on root folders (Map.of null value)

createFolder/renameFolder built the response with Map.of(..."parentId", parentId), which throws NullPointerException when parentId is null (a root folder) — the...

Kamo·2mo ago
FeatureSecurityService

Live originator projection — org + assigned LO, on read

GET /mortgage-apps/{uid} now overlays a LIVE, system-managed originator projection (computed on read, never stored) unless the row is frozen: org name/NMLS/addr...

Kamo·2mo ago
Featurekamo-internal

Loan Originator section is read-only / system-managed

The Loan Originator card no longer hand-edits URLA §9 data (the duplication of **************** it was re-capturing). It renders read-only: a LIVE projection of...

kamo·2mo ago
FeatureSecurityService

Transaction-level loan-officer assignment + transaction number

ensureTransactionForApp now stamps an org-unique transactionNumber (TXN-<uid>). New **************** + PUT /mortgage-apps/transactions/ {uid}/loan-officer sets ...

Kamo·2mo ago

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.

Start Free ForeverView Pricing