KamoCRM

Live Change Log

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

17,594
Total Changes
6,048
Features
5,310
Fixes
30
Projects
Filter by project
All Projects17,594AIService258APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService582InitializerService329KBService151KlusterServices744MCPGatewayService261MediaService602RAGService79SecurityService1,864TranslateService62VOIPService250VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,377kamo-login339kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,674kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore775Docs3,257Feature6,048Fix5,310Other994Performance165Refactor278Revert23Style42Test162Upgrade1
July 7, 2026
Fixkamo-internal

Readiness banner refreshes with the Refresh button and never shows an empty market name

Two follow-ups on the MLOS default-lead-source readiness banner: - Refresh (IconButton) now also calls loadMlosReadiness(), so surfacing a newly-created marke...

kamo·3mo ago
Featurekamo-internal

Explain when email isn't configured; gate compose

The /messages inbox previously rendered its full shell even when the org had no email provider or the member had no mailbox, silently failing every API call. Ad...

kamo·3mo ago
Featurekamo-internal

All-types Chats list + browser-tab attention

Chats sub-tab now lists member, group, support and social conversations together, most-recent first, with a multi-select filter (Team Members / Members / Social...

kamo·3mo ago
Featurekamo-internal

Finish lead-view header actions + callbacks

- Header: split Call into Call (Work)/Call (Personal) opening the softphone (hidden when the member has no registered extension), Email opens the composer, ...

kamo·3mo ago
Fixkamo-internal

Explain why the MLOS default-lead-source control is hidden instead of silently dropping it

On the vendors-products tab the "designate default lead product" control is gated on mortgage-vertical readiness — POS enabled, an active MORTGAGE commerce mark...

kamo·3mo ago
Featurekamo-internal

Create a session for group chats opened by memberIds

ChatTool ignored props.memberIds: a group open arrived with an empty userId and no sessionGuid, so the 1:1 createSession bailed early and the window never got a...

kamo·3mo ago
Fixkamo-internal

Stop duplicate chat popups for the same conversation

The tool-window dedup only exact-matched a single userId key against an async-mirrored windowsRef, so the same 1:1 chat opened twice: - userId from a member ro...

kamo·3mo ago
Fixkamo-internal

Show all enabled-app permission groups in job title & department editors

JobTitleManager and DepartmentManager only ever rendered two permission groups — General and CRM — so **************** rights were invisible and uneditable ther...

kamo·3mo ago
Fixkamo-internal

Refresh provider status when OAuth popup closes

The provider now redirects to the api-gateway callback (a different origin), so its postMessage may not pass the opener origin check. Re-fetch real provider sta...

kamo·3mo ago
Fixkamo-internal

My Docs uses MY_DOCS ordinal (3), not enum id (4)

The backend resolves ImageAssocType via `values()[assocType]` (ordinal index) and persists it @Enumerated(ORDINAL). Every imaging surface passes the ordinal, bu...

kamo·3mo ago
Fixkamo-internal

Stop 404/422 console errors for un-customized nav and phone-less orgs

Read the ui-preferences collection endpoint (always 200) for the initial navLayout load instead of the single-key GET, which 404s when a member has never custom...

kamo·3mo ago
Featurekamo-internal

Gate lead contact-info by assignment + new privacy rights

Mirror the three new CRM rights. On the lead detail page, mask/lock the Primary Contact, Mailing Address and Property Address fields for leads not assigned to t...

kamo·3mo ago
July 6, 2026
Fixkamo-internal

Agent filter shows member name + phone extension, not email

The Agent dropdown labelled each teammate with their email because the loader read firstName/lastName keys the backend never sends (it sends nameFirst/nameLast/...

kamo·3mo ago
Featurekamo-internal

Request-support popup shows parent-org shared topics

Point the ticket-creation topic dropdown at the new /api/support/topics/available endpoint (own-org + parent-shared topics) so child-org users can contact their...

kamo·3mo ago
Featurekamo-internal

Wire up member/team-member create + Prospect-gate UI

- Add the missing POST proxy routes /api/security/members/create and /create-team-member (these 405'd before, so creation never reached the backend). Status...

kamo·3mo ago
Featurekamo-internal

Wire Tasks tab to real backend + delete action + live count

Adds the Next proxy routes for /leads/{id}/tasks[/{taskId}] (the tab's getTasks/ addTask/updateTask/completeTask calls were 404ing), a deleteTask action in the ...

kamo·3mo ago
Featurekamo-internal

Real-time datagrid + live lead view with per-pane edit locks

/leads grid is now fully live over websocket (NATS→STOMP): rows add/remove/update against the active filter automatically and changed cells blink once for other...

kamo·3mo ago
Fixkamo-internal

Remove "Not available to you" section

Stop surfacing nav features a member lacks access to. The Navigation Layout page listed every hidden nav option as locked chips; dropped the block along with th...

kamo·3mo ago
Featurekamo-internal

Integrate primary tabs into the header on remaining Style A pages

Follow-up to the Style A→B sweep, covering pages that don't route through SettingsView: - /kb: KbNavBar becomes a gradient hero header with the Articles/Resour...

kamo·3mo ago
Fixkamo-internal

Center the vendors-products status snackbar at top

The save/update status pill used MUI's default anchor (bottom-left, no anchorOrigin set) so it rendered off-center. Anchor it top-center.

kamo·3mo ago
Featurekamo-internal

Relocate bottom count bars into the header across social, imports tabs

Applies the vendors-tab treatment to the sibling CRM settings surfaces so the standalone "x • y" summary bar at the bottom no longer eats page real estate: - S...

kamo·3mo ago
Featurekamo-internal

Move vendor/product count above the header actions, bottom-align Refresh + Add Vendor

Recaptures the page real estate the standalone bottom summary bar used to occupy — the "x vendors • x products" line now stacks above the action buttons in the ...

kamo·3mo ago
Featurekamo-internal

Integrate primary tabs into the page header (Style B) across Style A pages

Every gradient-hero page that rendered its primary tabs in a separate card below the header now renders them inside the gradient header itself, matching /accoun...

kamo·3mo ago
Fixkamo-internal

Add missing Next.js proxy routes for MLOS default-product + readiness

The vendors-products page threw 'Failed to set default product:' because the frontend PUT to **************** (and GET lead-vendors/mlos-readiness) 404'd — thos...

kamo·3mo ago
Featurekamo-internal

Back arrow in header returns to /leads

Add an optional backHref/backTooltip to SettingsView that renders a white back arrow left of the title, and wire the CRM settings page to send the member back t...

kamo·3mo ago
Featurekamo-internal

Bold 'CRM Settings:' prefix, pipe separators, hover-only underline on tab links

Preface the CRM settings tab links with a bold 'CRM Settings:' label (new **************** key), separate links with ' | ' instead of a bare space, and switch t...

kamo·3mo ago
Featurekamo-internal

Add CRM settings tab links above refresh, gated like settings menu

Render a right-aligned row of white, underlined, space-separated links to each /settings/features/crm tab above the Leads header refresh button. The links reuse...

kamo·3mo ago
Fixkamo-internal

Correct trial pill remaining-time (was 20644d)

When NavPri was rewritten the minute-tick was changed from Date.now() to a counter starting at 0, and that counter was passed as the `now` argument to formatTri...

kamo·3mo ago
Fixkamo-internal

Reset button in the title row (right) + full-width content

- "Reset to Standard" now sits on the same row as the "Navigation Layout" heading, right-aligned, with the heading left-aligned (moved out of the footer). - T...

kamo·3mo ago
Featurekamo-internal

Surface 'Needs review' (borrower-submitted docs awaiting staff) as a distinct, prioritized state

A borrower's uploaded document flips the requirement to RECEIVED (awaiting lender), but the Documents column only showed 'Awaiting borrower' or a neutral 'In re...

kamo·3mo ago
Fixkamo-internal

Responsive trial pill + tighten remaining oversized hero headers

- NavPri trial pill: when the rail is expanded it becomes a full-width pill with the fully-qualified label centered ("Trial — 4d 7h 9m left"); collapsed it st...

kamo·3mo ago
Fixkamo-internal

Tighten oversized vertical padding on page title headers

The gradient page-title headers had far more top/bottom padding than the horizontal inset where the title text starts, wasting vertical space. Bring the vertica...

kamo·3mo ago
Fixkamo-internal

Use the lightning-bolt icon for Leads to match the /leads UI

The Leads option used AccountTreeIcon; the /leads "Leads Available" actions use BoltIcon (@mui/icons-material/Bolt). Switch the registry's Leads icon to Bolt so...

kamo·3mo ago
Featurekamo-internal

Document-collection progress column

Per-loan doc progress (accepted/total + a colored bar, 'N from borrower' / in-review / complete) in the applications pipeline, fetched in one batch by loanFileU...

kamo·3mo ago
Fixkamo-internal

De-slop remaining Quick Tips content + make leads tips collapsible

- security, operations, account, and CRM settings help columns: removed all emoji (💡 🚫 ⏳ ✅ 🌍) and rainbow-coloured bullets; every list marker is now one ...

kamo·3mo ago
Featurekamo-internal

Remember Quick Tips open/closed per USER across all pages

The help column's visibility was stored in a single global localStorage key, so it wasn't scoped to the user. Introduce useQuickTipsVisible, keyed by user id (n...

kamo·3mo ago
Featurekamo-internal

Standardize Quick Tips help column + de-slop reference page

- Rename the help side-column title to "Quick Tips" everywhere (SettingsView reads **************** whose value is now "Quick Tips"). - Add a shared HelpConte...

kamo·3mo ago
Fixkamo-internal

Settings topics are expand-only, not links

Settings topics (Essential Setup, CRM, Security, …) are group headers with no page of their own — only their sub-topics are real destinations. Drop the topics' ...

kamo·3mo ago
Featurekamo-internal

Nested sub-options so deeper items (e.g. Settings sub-topics) are reachable

The sub-option menu only rendered one level, so a sub-option that itself has sub-options (Settings topics → sub-topics) was inaccessible. - NavToolButton now r...

kamo·3mo ago
Fixkamo-internal

Clean rail alignment, uniform top-bar tiles, and replace Settings slide-out with a sub-option menu

- NavPri logo: the 56px tile made the top of the rail wider than the 44/48px options below it, and collapsed options rendered left-aligned. The logo now sha...

kamo·3mo ago
Featurekamo-internal

Member-configurable navigation — drag options between rail & top bar, expandable rail, per-member layout

Turn the two hardcoded navs (NavPri/NavTop) into a data-driven, per-member system. - Single nav registry (navRegistry) + pure resolver (resolveNavLayout) enfor...

kamo·3mo ago
Featurekamo-internal

Document vault tab — parties, requirements, satisfy/accept/reject

- AccountDocumentsTab: per-borrower-party view of the account's document vault and per-loan requirements. Upload once, satisfy every loan (satisfy-across); st...

kamo·3mo ago
July 5, 2026
Otherkamo-internal

Convert account-merge + default-product inline strings to next-intl keys

White-label multitenant strings must be translatable. Moves the account-merge dialog/button and the Borrower Origination Web Portal default-product tooltips/sna...

kamo·3mo ago
Featurekamo-internal

Transaction drill-in drawer in the pipeline

Clicking a multi-loan deal opens a right drawer showing the group status + each member loan (borrower, property, loan status), each clickable through to the loa...

kamo·3mo ago
Fixkamo-internal

Vendors-products — white-label default-product terminology, dialog option, FFA header

- Rename 'KamoMLOS' → 'Borrower Origination Web Portal' everywhere in the vendors-products UI (star tooltip, snackbars) — this is a white-label multitenant pr...

kamo·3mo ago
Featurekamo-internal

Per-transaction pipeline — list per deal, not per loan (owner req)

ApplicationsPipelineConsole now lists ONE row per LoanTransaction (its representative loan + any not-yet-grouped legacy loans), with a pinned 'Deal / Status' co...

kamo·3mo ago
Featurekamo-internal

KamoMLOS portal default-product designation in vendors-products (#11)

A star toggle on each product designates the org's single KamoMLOS portal auto-assign product (single-active). Gated via GET /lead-vendors/mlos-readiness: shown...

kamo·3mo ago
Featurekamo-internal

Account-merge admin UI (MERGE_ACCOUNTS)

AccountManager gains a Merge Accounts action (gated by **************** select exactly two customer accounts, pick the survivor, optionally keep the duplicate's...

kamo·3mo 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