KamoCRM

Live Change Log

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

17,423
Total Changes
5,931
Features
5,264
Fixes
30
Projects
Filter by project
All Projects17,423AIService242APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService568InitializerService329KBService151KlusterServices738MCPGatewayService235MediaService593RAGService79SecurityService1,839TranslateService62VOIPService249VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,337kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,644kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore773Docs3,254Feature5,931Fix5,264Other994Performance165Refactor278Revert23Style42Test159Upgrade1
May 29, 2026
Featurekamolos

Tier 5 compliance batch

- OfacSanctionsService: Jaro-Winkler fuzzy match @ ≥0.92 after exact-match pass. Hits surface similarity score. Configurable via los.ofac.fuzzy-threshold. - A...

Kamo·5mo ago
Featurekamo-shared-library

LoanChargeOffReasonCode (IRS 1099-C box 6) + audit search

- New LoanChargeOffReasonCode enum (A_BANKRUPTCY..H_OTHER) per IRC §6050P - Loan.chargeOffReasonCode column - **************** multi-filter @Query for regulator...

Kamo·5mo ago
Featurekamolos

Tier 3 security + Tier 8 bug cleanup batch

T3 — Security: - New RateLimitFilter (Bucket4j): 1000/min per IP for webhooks, 10/min per session for offer accept/decoder/rescind, 60/min general. Register...

Kamo·5mo ago
Featurekamo-shared-library

****************

Used by **************** to reactivate an existing PAUSED plan instead of creating a duplicate row that orphans the paused one.

Kamo·5mo ago
May 28, 2026
Performancekamolos

Tier 2 — Hikari + RestTemplate timeouts + Stripe SDK + Redis cache

- RestClientConfig: single shared RestTemplate bean with 5s connect / 30s read timeouts. MediaServiceClient / NotificationDispatchService / OfacSanctionsSer...

Kamo·5mo ago
Featurekamo-internal

/api/los proxy HMAC-signs identity headers

When LOS_PROXY_HMAC_SECRET env var is set, the proxy now computes **************** secret) and sends X-Proxy-Signature + X-Proxy-Timestamp alongside the X-Org-I...

kamo·5mo ago
Fixkamolos

Tier 1 critical correctness pass

T1.1 Stripe disbursement strategy: TREASURY (stub — requires SDK upgrade or raw HTTP) / CONNECTED_ACCOUNT (Transfer.create — works in SDK 28.2.0) / MA...

Kamo·5mo ago
Performancekamo-shared-library

Paged repo queries + countByStatus for hot paths

- LoanRepository: countByStatus / countByOrganizationAndStatus + Page<Loan> findByStatus(...) / **************** / **************** + **************** for...

Kamo·5mo ago
Fixkamo-internal

Force email link clicks via capture-phase navigation

Reports show clicks on email-preview links silently doing nothing — hover shows the URL, no console errors, but the navigation never fires. That fingerprint poi...

kamo·5mo ago
Featurekamo-internal

Org-side loan detail page + adjustments/promise API

- losApi: manualAdjust, waiveFee, promiseToPay - **************** full org-operations page * 4-up balance cards (current, principal, interest, next due) * M...

kamo·5mo ago
Featurekamolos

Final batch — compliance, packets, adjustments, Grafana, tests

Compliance: - MlaCheckService — Military Lending Act covered-borrower lookup against DoD MDC single-record query. Returns NotCovered if unconfigured so dev ...

Kamo·5mo ago
Featurekamolos

P2 batch — observability, tests, year-end tax, real Stripe IDs

Observability: - micrometer-registry-prometheus on the classpath - /actuator/prometheus exposed via management config (both local + k8s configmap) - LoanMetrics...

Kamo·5mo ago
Featurekamo-shared-library

LoanOrgStripeConnect + Loan tax/accrual fields + hot indexes

- New LoanOrgStripeConnect entity (one-per-org, holds stripeConnectedAccountId + Connect onboarding capabilities) + repository - Loan: stripeCustomerId (lazy-...

Kamo·5mo ago
Fixkamo-internal

Let native target=_blank open the new tab, drop window.open

The previous fix intercepted the click and called window.open() — but popup blockers and extensions can block window.open even from a direct click handler, so t...

kamo·5mo ago
Featurekamo-internal

P1 frontend — charge-off queue + audit timeline

- losApi: chargeOffQueue / confirmChargeOff / auditByLoan - **************** D120 review queue page; org user reviews each loan, adds a reason, clicks Confirm...

kamo·5mo ago
Featurekamolos

P1 batch — webhooks advance state, crons, commerce vertical

Money movement (the core P1): - LoanPaymentPostingService: markSucceededAndPost / markFailed / markReturnedAndReverse / markDisbursementSucceeded / markDrawDi...

Kamo·5mo ago
Refactorkamo-shared-library

Loan.engagementUid → Long + originatingOrderUid

Engagement extends BaseEntity (Long PK) so engagementUid must be Long, not UUID — this is consistent with the existing AgreementDTO / WorkOrderDTO pattern of "L...

Kamo·5mo ago
Featurekamo-internal

P0 hardening — forms, session resolve, payment methods

Forms (org-side): - **************** and /{productUid} edit pages - New LoanProductForm: basics / pricing / limits / terms / compliance sections, kind-aware...

kamo·5mo ago
Featurekamolos

P0 hardening — Stripe Connect endpoint + PDF flatten

- Fix EsignClient imports: EsignGenericEnvelopeRepository / EsignSignatureRepository live in .esign.repos, not .esign root - New StripeConnectController POST ...

Kamo·5mo ago
ChoreSecurityService

KamoLOS → KamoMLOS in comment references

The /Next.js/KamoLOS project (mortgage applicant flow) was renamed to KamoMLOS so the KamoLOS name could be reused for the new personal-loan service. These are ...

Kamo·5mo ago
ChoreKlusterServices

Update subdomain map comment KamoLOS → KamoMLOS

The /Next.js/KamoLOS project was renamed to KamoMLOS (Kamo Mortgage Loan Origination System). The KamoLOS name is now used for the new personal-loan service. Th...

Kamo·5mo ago
Featurekamo-internal

/api/los/* proxy route → KamoLOS via k8s DNS

Mirrors the /api/billing/[[...path]] BillingService proxy: - *** session resolved via Redis; X-Org-Id + X-Member-Id forwarded - /api/los/webhooks/* skip session...

kamo·5mo ago
Featurekamo-internal

Add PERSONAL_LOANS commerce type front-end

- engagementTypeLabels: extend EngagementType union + vocabulary - MarketCardGrid: PERSONAL_LOANS color (#14b8a6) + Landmark icon + counter - Market detail page...

kamo·5mo ago
Fixkamo-internal

Email-preview links open in a new tab again

The sanitizer already sets target="_blank" on every link, but the document-level click handler in NavigationInterceptor was firing for every link click — includ...

kamo·5mo ago
Featurekamolos

Initial personal-loan origination + servicing service

New Spring Boot 3.1.5 / Java 21 microservice modeled on BillingService. Owns personal-loan domain end-to-end: - LoanProduct / LoanOffer / Loan CRUD with REST +...

Kamo·5mo ago
Featurekamo-shared-library

Add PERSONAL_LOANS commerce type + entity package

- CommerceType.PERSONAL_LOANS + parallel EngagementType + vocabulary - BuiltinVendorCategories entries for personal-loan vendors - 15 personal_loans JPA entitie...

Kamo·5mo ago
May 21, 2026
Featurekamo-internal

Photo-album uploads use the same WS pipeline as the Uploads tab

Extracts the doc-manager upload pipeline (hashing → dedup check → register-or-upload → WebSocket-driven conversion) into a reusable useImagingUploads hook. The ...

kamo·5mo ago
Fixkamo-internal

Add /api/security/mortgage-apps catch-all proxy — 404 root cause

The kamo-internal app proxies every Java backend path through an explicit Next.js route handler (one per top-level segment: /commerce-markets, /pos, /leads, …)....

kamo·5mo ago
Featurekamolos

Hide isActive=false programs from borrowers in real time

useProgramCatalog now filters out programs with isActive=false before returning them to the loan wizard. The flag is computed server-side as (base.isActive AND ...

Kamo·5mo ago
Fixkamo-internal

/pipeline/{vertical}/{x} 404s — namespace was renamed to /commerce/

The /pipeline namespace has no routes in this app — every link going to /pipeline/applications/{x}, /pipeline/orders/{x}, /pipeline/engagements/{x}, /pipeline/s...

kamo·5mo ago
FeatureSecurityService

Backfill program offerings for existing mortgage markets on boot

DataLoader now calls **************** after the AppMortgage-engagement backfill. Sweeps every existing MORTGAGE CommerceMarket and ensures its program Offerings...

Kamo·5mo ago
Featurekamo-shared-library

Bootstrap mortgage program offerings on market create + boot backfill

When the user creates a CommerceMarket with commerceType=MORTGAGE — via the Markets & Fields settings tab — the market needs program Offerings under it for down...

Kamo·5mo ago
FixSecurityService

Detach before replacing features collection in /org/domain

The previous fix wired the applied-model projection into **************** but called org.setFeatures(projected) on the still-managed entity. The Organization.fe...

Kamo·5mo ago
Fixkamo-internal

Remove standalone Applications icon — LOS lives under Commerce

The mortgage application pipeline is one vertical of the commerce system, not a top-level nav. Loan officers, processors, and underwriters reach it via Commerce...

kamo·5mo ago
FixSecurityService

Resolve ambiguous /org/domain handler — Commerce nav was disappearing

SecurityController had a second **************** that collided with **************** Spring rejected the request with "Ambiguous handler methods mapped" → 500 →...

Kamo·5mo ago
Featurekamo-internal

Duplicate binders so users can fork without affecting the original

Adds a "Duplicate" action accessible from the binder list's context menu and from a new button in the editor header. The duplicate starts from the source binder...

kamo·5mo ago
FeatureDocsService

Add POST ****************

Deep-copies a binder the requester can see (owned, shared, or template) into a fresh binder owned by the requester. Copies every item (DOC, SEPARATOR, GENERATED...

Kamo·5mo ago
Featurekamo-internal

Mortgage Programs toggle + MORTGAGE engagement deep-link

- MortgageProgramsPanel now ships a real Switch on each program card with optimistic update + rollback on failure. Toggling a program calls PUT ************...

kamo·5mo ago
FeatureSecurityService

PUT /programs/{code}/active + deprecate legacy mortgage POS endpoints

- MortgageProgramController gains PUT **************** with body {"isActive": bool}, gated on LOS_TAKE_APPLICATION. Delegates to **************** which upse...

Kamo·5mo ago
Featurekamo-shared-library

Per-org enable/disable + deprecate legacy commerce-only mortgage path

- **************** upserts an OrgProgramOverride row with recordState.isActive=desired; listForOrg now AND's the base program's active flag with the overrid...

Kamo·5mo ago
Chorekamo-internal

Show Engaged / Committed badge on application cards

Each mortgage card in /applications now renders a tiny chip next to the pair count: green "Committed" when the loan has a Commitment (funded), indigo "Engaged" ...

kamo·5mo ago
ChoreSecurityService

Backfill mortgage engagements on boot

DataLoader now invokes **************** after rights sync and System User backfill. Idempotent — once an app is attached to its engagement+intent, subsequent bo...

Kamo·5mo ago
Chorekamo-shared-library

Polish — backfill, delete cleanup, amount sync, appUid links

- **************** heals AppMortgages predating the wiring; called from SecurityService DataLoader. - AppMortgageService.delete cancels the engagement+intent ...

Kamo·5mo ago
Fixkamo-internal

Flatten add-item menu so Generated Docs are reachable

The "Add Generated Doc" submenu approach didn't work: clicking the menu item closed the parent menu, which unmounted the MenuItem before the nested Menu could a...

kamo·5mo ago
Fixkamolos

Drive journey sky from SkyToggle, unstack from personality chip

- Move SkyToggle to its own top-right row at top-14 so the slider stops overlapping LoGuideChip, which is positioned at right-14 assuming it only needs to c...

Kamo·5mo ago
Featurekamolos

Scrubbable day↔night theme with sun-moon SkyToggle

- Continuous t ∈ [0,1] scene position drives ~25 CSS custom properties on :root via linear RGB interpolation between warm-paper day and aurora night anchors...

Kamo·5mo ago
Featurekamolos

Expose engagement/intent/commitment UIDs

AppMortgageDTO now carries the commerce-lifecycle identifiers that the SecurityService backend populates on every mortgage application. KamoLOS doesn't actively...

Kamo·5mo ago
Featurekamo-internal

Show Commerce context + Programs settings tab

- /applications hero now reads "Commerce > Residential Mortgages · URLA 2021" so staff see mortgage as one vertical of the commerce module, not a standalone...

kamo·5mo ago
FeatureSecurityService

Enforce LOS rights + /commerce/engagements endpoint

- MortgageAppController: every endpoint now gates on RoleRightType. Reads require LOS_VIEW_PIPELINE; creating a new application requires LOS_TAKE_APPLICATIO...

Kamo·5mo ago
Featurekamo-shared-library

Wire URLA mortgage into Engagement/Intent/Commitment

Mortgage is one vertical of the commerce system — alongside retail, rental, service, subscription, and procurement. This wires the URLA-fidelity mortgage stack ...

Kamo·5mo 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