KamoCRM

Live Change Log

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

17,662
Total Changes
6,080
Features
5,341
Fixes
30
Projects
Filter by project
All Projects17,662AIService261APIService174BillingService158ConversionService110DaemonService138DocsService223ESigService91EmailService587InitializerService329KBService151KlusterServices744MCPGatewayService261MediaService604RAGService79SecurityService1,874TranslateService62VOIPService250VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,413kamo-login340kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,682kamo-signer-monorepo57kamolos114
Filter by type
All TypesBuild16CI523Chore776Docs3,257Feature6,080Fix5,341Other998Performance165Refactor278Revert23Style42Test162Upgrade1
July 6, 2026
FeatureSecurityService

Expose team-member work phone extension in team-members-contractors

The /leads Agent filter needs the work-phone extension to label options as "Name (ext 8080)". The extension already exists on TeamMember (getPhoneWorkExtension)...

Kamo·3mo ago
FeatureSecurityService

New child orgs inherit their parent's securityProvider

When creating a child org from kamo-internal, set the new org's securityProvider to the parent org's securityProvider (the org it's created under) instead of le...

Kamo·3mo ago
FeatureSecurityService

Reuse existing users, mirror to securityProvider, gate team-member sign-in

Reuse (no duplicate accounts for the same person): - MemberCreateController now reuses an existing user by personal email case-INSENSITIVELY (was case-sensiti...

Kamo·3mo ago
FixSecurityService

File new accounts under the org of the domain, not kamocrm

/register bound the new member's org to the request Host, but the org signal never survived the hop: kamo-register proxies every signup to the shared api.kamocr...

Kamo·3mo ago
FeatureSecurityService

Lead tasks REST API + real-time TASK_CHANGED

Implements the backend the /leads/view Tasks tab was already calling but that never existed: GET/POST/PUT/DELETE **************** (LeadTaskController + LeadTask...

Kamo·3mo ago
FeatureSecurityService

Per-pane edit-lock REST API + auto-save sweeper

Adds /api/security/leads/{id}/locks **************** backed by LeadLockService: exclusive per-pane reservation, draft-buffering heartbeats that reset a 5-min id...

Kamo·3mo ago
FeatureSecurityService

Staff vendor-doc upload endpoint satisfies third-party requirements

POST **************** (LOS write): staff upload an appraisal/title/HOI/flood doc to the loan-level image store, then satisfy the loan's THIRD_PARTY requirement ...

Kamo·3mo ago
FeatureSecurityService

Cascade condition waive/delete to document requirements

waiveCondition and deleteCondition now best-effort call MLOSDocService's suppress-for-condition after a successful waive/delete, so a waived condition's require...

Kamo·3mo ago
FixSecurityService

Scope borrower's loan document-requirements to their own party

The enriched /document-requirements read authorized any party to the app and returned EVERY party's requirements, so on a joint loan a borrower saw the co-borro...

Kamo·3mo ago
FixSecurityService

Per-party vault authorization + per-party notification routing

The account vault held documents per-PARTY (shared human) but authorized access per-ACCOUNT — two HIGH multi-human defects on a joint loan: - PII leak / lockou...

Kamo·3mo ago
FeatureSecurityService

Borrower notifications close the collection loop

DocNotificationService sends transactional emails (established EmailTemplateServiceClient path, recipient = account primary member, portal link from org root do...

Kamo·3mo ago
FixSecurityService

Pipeline per-transaction grouping was broken

TransactionSummaryDTO.loanUids carried LOAN-FILE uids, but the pipeline console keys rows on the APPLICATION uid — so grouping silently fell back to one row per...

Kamo·3mo ago
FeatureSecurityService

Proactive checklist generation + pipeline doc summary

- Generate the scenario document checklist at APPLICATION_TAKEN (MortgagePipelineController transition hook) so it exists the moment a loan enters the pipelin...

Kamo·3mo ago
FixSecurityService

Member-vault upload was broken (access_level NOT-NULL)

The account-level imaging path had never actually run (0 vault Imgs in prod): uploadDocument was passed accessLevel=null. Pass CONFIDENTIAL for borrower PII (ID...

Kamo·3mo ago
FixSecurityService

Satisfy-across confused-deputy IDOR + account party self-heal

- HIGH: satisfy-across gated on the path partyId but fanned out over the DOCUMENT's own party downstream; verify the document belongs to the authorized party ...

Kamo·3mo ago
FixSecurityService

Self-heal party links before enriched requirement read

listDocumentRequirements calls ensurePartyLinks so requirement rows always carry an accountBorrowerPartyId (the borrower upload/satisfy target).

Kamo·3mo ago
FeatureSecurityService

Proxy the vault-backed requirement surface

- MlosDocClient: POST verbs (generate, satisfy, accept, reject, satisfy-across) + enriched loan/party reads over X-Internal-Auth. - MortgageAppController /{ui...

Kamo·3mo ago
July 5, 2026
FeatureSecurityService

Transaction detail endpoint GET ****************

Returns one deal group's rolled-up summary + each member loan's AppMortgageSummaryDTO (drill-in for the per-transaction pipeline). Operator view or a party to t...

Kamo·3mo ago
FixSecurityService

Default-product set failed — HQL bulk UPDATE disallows the vendor→org join

setDefault used a bulk 'update LeadVendorProduct ... where p.vendor.id in (subquery)' — Hibernate bulk updates reject the implicit association join, so the call...

Kamo·3mo ago
FeatureSecurityService

P4 member document vault backend (reusable docs across loans)

- MemberDocumentService: upload a doc ONCE at AccountBorrowerParty scope → ImageService creates an Img in the auto-created imaging-member-vault bucket *******...

Kamo·3mo ago
FeatureSecurityService

P3 default-product designation backend (single-active) + operator readiness

- **************** designates ONE LeadVendorProduct as the org's KamoMLOS portal auto-assign product; single-active (demotes any other, org-scoped, fail-close...

Kamo·3mo ago
FeatureSecurityService

P2c leads-first portal backend

- MortgageVerticalResolver: resolves an org's RESIDENTIAL_MORTGAGE LeadMarket, MORTGAGE CommerceMarket, designated default LeadVendorProduct, and EFFECTIVE PO...

Kamo·3mo ago
FeatureSecurityService

P2a account-merge tool + P2b transaction backend

P2a — admin account merge (owner requirement A), gated by MERGE_ACCOUNTS: - AccountMergeService: reparents EVERY account_uid child via native UPDATE (bypasses J...

Kamo·3mo ago
FixSecurityService

Borrower self-create = createBlank then stampOwnershipAndGet (two txs)

Sequence the borrower ownership stamp as a separate service call after createBlank commits, so the new borrower/declarations graph is flushed before the account...

Kamo·3mo ago
FeatureSecurityService

Borrower self-service authorization (loan-party IDOR guard)

A borrower is a plain org Member with no operator LOS rights; they may act on the ONE application they are a party to — and only that one. Layered guard: operat...

Kamo·3mo ago
FeatureSecurityService

Pre-app-taken borrower-journey endpoint for the operator pipeline

New GET **************** (LOS_VIEW_PIPELINE) returns per-DRAFT borrower-intake progress so pipeline stewards can watch a loan take shape while the borrower is s...

Kamo·3mo ago
FeatureSecurityService

LOS controllers accept per-borrower *** sessions (doc03 §0.1)

BaseLosController now resolves the caller's session via CallerSessionResolver (X-OTK-validated attribute FIRST — operators/BFF unchanged — then a first-party **...

Kamo·3mo ago
FeatureSecurityService

LOE-Core server-authoritative program scorer + /programs/scores (doc03 §9 Phase 2)

Ports the KamoMLOS client scorer (lib/los/scoring.ts) into SecurityService LOE-Core: LoeCoreScorer scores the org's effective program catalog (baseline deep-mer...

Kamo·3mo ago
July 4, 2026
FeatureSecurityService

Member state-licensing API + license-aware lead availability

Add MemberStateLicensingController (GET/PUT /api/security/members/{id}/ state-licensing) gated by STATE_LICENSING_* rights with server-side renewal<=expiry vali...

Kamo·3mo ago
FeatureSecurityService

Map an imported column to the lead `source` field

Add case "source" to setDirectFieldOnCreateRequest so the mapping path 'source' is honored.

Kamo·3mo ago
FeatureSecurityService

Channel applicability rules collection CRUD — completes §3.2 config

createChannelRule/update/delete on the D31 flat-collection spine (profile-level, org fail-closed, WORM change-log); controller /channel-rules GET/POST/PUT (dele...

Kamo·3mo ago
FeatureSecurityService

Product enablement config — per-program single-active, effective-dated

**************** (program-scoped demote-then-insert) + reads; controller /product-enablements GET (active per program) / PUT (publish). Body carries programId, ...

Kamo·3mo ago
FeatureSecurityService

Effective-dated profile policies — pricing/capital/servicing publish

New MlosPolicyWriteService (isolated; its own repos so the config-collection write- service is untouched): single-active demote-then-insert versioning on the sa...

Kamo·3mo ago
FeatureSecurityService

InvestorConfig delivery + commitment rule sub-collections CRUD

**************** (+update/delete) on the D31 config spine (org fail-closed via the parent investor, WORM change-log per row); controller /investors/{id}/deliver...

Kamo·3mo ago
FeatureSecurityService

InvestorConfig credit-box overlay sub-collection CRUD

**************** on the D31 config spine (org fail-closed via the parent investor, WORM change-log per row, configVersion defaults 1); controller /investors/{id...

Kamo·3mo ago
FeatureSecurityService

ScenarioDiscoveryService — canonical profile genesis at loan-app create/update (D1)

MortgageAppController (re)produces the canonical BorrowerScenarioProfile via the new ScenarioDiscoveryService after **************** (best-effort, its own tx). ...

Kamo·3mo ago
RefactorSecurityService

Single Integrations write surface — MortgageProviderConfig (D40)

Replaces the AUS-only write path with generic provider-connection CRUD keyed by VendorCategory+vendorKey: /provider-connections GET/POST/PUT, secret write-only ...

Kamo·3mo ago
FeatureSecurityService

AUS-connection config write surface (D37) + single mortgage market per org (D38)

- MlosConfigWriteService **************** org-scoped (resolveProfile), one-per-AusKind uniqueness, secret preserved on blank-secret edits, WORM audit spine. -...

Kamo·3mo ago
FeatureSecurityService

Investor delegation write surface — per-program CRUD (D39)

Drop delegatedAuthority from the InvestorConfig write/view; add the InvestorDelegation sub-collection under /investors/{id}/delegations (GET/POST/ PUT, delete v...

Kamo·3mo ago
FeatureSecurityService

[08] ReconciledFactPublisher — los.pipeline.fact publish seam (D34)

doc 08 §3.3: the locked **************** must not gain a NATS publisher (that edits donotmodify). Add a non-locked ReconciledFactPublisher wrapper that reconcil...

Kamo·3mo ago
FeatureSecurityService

[04] slice E2 RiskOverlay collection CRUD (D31)

Risk overlays (credit-box / geo-concentration / exposure-limit layers on the base credit box) as a config collection on the D31 spine: create defaults configVer...

Kamo·3mo ago
FeatureSecurityService

[04] slice E2 InvestorConfig collection CRUD (D31)

The second collection config domain (doc-04 §3.2 InvestorConfig) — per-investor approval/delivery/authority that feeds capital-markets execution. Reuses the Uni...

Kamo·3mo ago
FeatureSecurityService

[04] slice E2 licensing collection CRUD (D31)

The first COLLECTION config domain (doc-04 §3.2 LicensingEntry, many-per-profile) — a new id-keyed write shape on the same audit spine as the singletons: - ****...

Kamo·3mo ago
DocsSecurityService

Correct the D28 auto-execute comment (override REPLACES config, not AND)

Review observation: the GET map javadoc said 'auto-execute = config AND override' but **************** is override-replaces-config. Comment-only; the GET faithf...

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