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 27, 2026
Featurekamo-shared-library

ECOA/FCRA adverse-action notice scaffolds + satisfy-timer

The issuance mechanism's shared-lib half. ComplianceTimerService gains **************** — flips only ARMED ECOA_AA timers to SATISFIED (leaves COUNTEROFFER/INCO...

Kamo·2mo ago
Featurekamo-shared-library

Bulk-email campaign foundation entities + department/org contact fields

Adds the shared-library foundation for org-level bulk email campaigns: - OrgBulkEmailProviderEntity (separate from everyday provider; UNIQUE org_id) - EmailCamp...

Kamo·2mo ago
Featurekamo-shared-library

STEWARD_TASK_ROUTED canonical template

The routed-decision steward notification needs a canonical email template. Registers STEWARD_TASK_ROUTED in CANONICAL_KEYS with its json/html pair; body carries...

Kamo·2mo ago
Featurekamo-shared-library

Add nullable contact date-of-birth to Lead

Adds a contact-level `dateOfBirth` (java.time.LocalDate, DATE column) to the base Lead: entity + Create/Update/LeadDTO (fromLead), copied in LeadService create/...

Kamo·2mo ago
July 23, 2026
Fixkamo-shared-library

Register WELCOME_MEMBER + WELCOME_TEAM_MEMBER canonical keys

Both templates ship as resource pairs on disk (welcome-member.{json,html}, **************** with matching templateKeys, and EmailService already has their sampl...

Kamo·2mo ago
July 22, 2026
Featurekamo-shared-library

LEADS_ASSIGNED email template; harden assignLead for bulk use

assignLead had zero callers and had never run in production. Before wiring the bulk reassignment path to it, give it the guarantees that path needs: - take org...

Kamo·2mo ago
Featurekamo-shared-library

Add MANAGE_ORG_BRANDING (174)

Org branding endpoints (logos, colors, backgrounds, theme provisioning) were owner-or-god only, leaving no way to delegate branding without handing over ownersh...

Kamo·2mo ago
Fixkamo-shared-library

A suspended loan can be resumed, and is no longer offered to itself

SUSPENDED is deliberately not terminal — LoanFileStatus.isTerminal excludes it, because a loan is suspended for a fixable reason. But it had no forward arrow, s...

Kamo·2mo ago
Fixkamo-shared-library

Bound MlosAiClient with explicit connect and read timeouts

The client field-initialized a bare `new RestTemplate()`, so no timeout applied on any AI call and no builder could reach it. A hung provider blocked the caller...

Kamo·2mo ago
Featurekamo-shared-library

Grouped aggregate queries for the agent scorecard

Twelve @Query aggregates across sessions, messages, usage records and outbound touches, so a scorecard is a handful of grouped queries rather than loading rows ...

Kamo·2mo ago
July 19, 2026
Featurekamo-shared-library

Structured sales-agent config, version spine and outreach state

Replaces the single training-context blob with a structured, versionable agent model, and adds the per-contact spine an agent needs before it may initiate conta...

Kamo·2mo ago
July 18, 2026
Featurekamo-shared-library

SalesAgent entity + per-channel agent assignment

Org-configurable AI sales agents: a named agent for a sales industry, programmed with a training context the org authors (from a template or by hand), assignabl...

Kamo·2mo ago
Featurekamo-shared-library

Signed agent-routing token + lead-reassignment propagation

Foundation for making the reusable public-chat widget handle the KamoMLOS borrower->loan-officer variant securely, and for propagating lead reassignment into an...

Kamo·2mo ago
Featurekamo-shared-library

CATALOG_SOURCE assoc type for MLOS catalog source documents

Investor rate sheets / LLPA + eligibility matrices / lock policies need somewhere to live: the ingest extracts from the blob, and the published rate-sheet versi...

Kamo·2mo ago
Featurekamo-shared-library

MobileDevicePolicy — org default + per-member override

personal phone or must be on a company-managed (Android Device Owner enrolled) device: - MobileDevicePolicy enum: PERSONAL_ALLOWED | COMPANY_MANAGED_REQUIRED. ...

Kamo·2mo ago
Featurekamo-shared-library

Value-keyed AUS case-file + e-sign envelope finders for identifier owner-delegation

Completes the owner-column lookups the MLOS identifier plane needs to route inbound callbacks: **************** (DU/LP/GUS run handle) and **************** Both...

Kamo·2mo ago
Featurekamo-shared-library

Value-keyed loan-identity finders for identifier owner-delegation

The MLOS identifier plane resolves an inbound vendor/agency callback back to a loan; for OWNED_ELSEWHERE types the authoritative value lives on the OWNER's colu...

Kamo·2mo ago
Featurekamo-shared-library

CONDITION_ADDED / CONDITION_CLEARED canonical email templates

The borrower-facing half of the conditions loop: two generic checklist templates for the new condition notification consumer. Added to CANONICAL_KEYS with their...

Kamo·2mo ago
July 17, 2026
Fixkamo-shared-library

Gate live sessions & participation on ACTIVE member status

Add **************** as the single source of truth for the "only ACTIVE members may sign in or appear as a live participant" invariant: base members must be rec...

Kamo·2mo ago
Featurekamo-shared-library

Commitment boardedAt + loan-funded event type (loan-sale desk)

- MlosCommitment.boardedAt: in-system marker for a PURCHASED commitment's loans boarded to servicing (the external servicing-system handoff is the blocked leg...

Kamo·2mo ago
Featurekamo-shared-library

Commitment/loan-sale desk entities (runtime consumer for the shipped investor config)

Slice 2 foundation for the capital-markets loan-sale desk (doc 08) — the terminal origination stage. The shipped **************** had NO runtime consumer; these...

Kamo·2mo ago
Featurekamo-shared-library

ClosingArtifact provenance = one-time null->value stamp (enables after-commit eClose dispatch)

Splits the ClosingArtifact @PreUpdate WORM guard so the eClose vendor dispatch can move OUT of the assemble/advance transaction (doc 05 §6): the node commits FI...

Kamo·2mo ago
Featurekamo-shared-library

EClose vendor categories (RON/ENOTE/EVAULT/MERS) + artifact-by-externalRef finder

- VendorCategory gains the four notarized-leg rails so the integrations tab can configure a per-org RON/eNote/eVault/MERS vendor (additive STRING enum, no CHE...

Kamo·2mo ago
July 16, 2026
Featurekamo-shared-library

Lock lookup by loan file (join through scenario)

**************** — locks key on scenario, so resolve a loan's locks via MlosLoanScenario.loanFileUid. Backs the borrower/steward 'is this loan rate-locked?' rea...

Kamo·2mo ago
Featurekamo-shared-library

Borrower section read methods for other-income/expense/REO/gift capture

The per-borrower repeating sections were write-only; add read projections **************** so the borrower capture UIs can hydrate existing rows via GET endpoin...

Kamo·2mo ago
Fixkamo-shared-library

**************** (was findById)

VendorOrder extends BaseUuidEntity (key = uid, not id); the derived-query parse failed at boot ("No property 'id' for VendorOrder"), crash-looping MLOSVendorSer...

Kamo·2mo ago
Featurekamo-shared-library

VendorOrder + VendorOrderEvent entities for WS3 vendor-order spine

The greenfield 3rd-party order-of-record **************** SCRA). VendorOrder = partial-WORM async order (ClosingArtifact idiom: opaque vendorKey/externalRef, fr...

Kamo·2mo ago
Featurekamo-shared-library

MortgageAmortization — monthly P&I from loan terms (WS6 support)

The one PITI component not stored on the loan. Standard fully-amortizing formula P·r·(1+r)^n/((1+r)^n−1); zero rate degrades to straight-line; non-positive prin...

Kamo·2mo ago
Featurekamo-shared-library

ClosingReadinessEvaluator — loan-level clear-to-close gate

Rolls a loan's obligations up to the funding question the end-to-end gap analysis raised ("service the loan all the way to funding"): clear-to-close iff zero ad...

Kamo·2mo ago
Featurekamo-shared-library

QualifyingRatioEngine — the reproducible dti keystone (WS6)

Composes the four cores (income, liabilities, PITI/DTI, reserves) into ONE QualifyingSnapshot: qualifying income, reconciled monthly debt, assembled PITIA, fron...

Kamo·2mo ago
Featurekamo-shared-library

ReservesCalculator — eligible-asset haircuts → PITIA months (WS6)

Derives reserve months from actual assets with standard agency haircuts — liquid deposits 100%, brokerage 70%, vested retirement 60%, gift/borrowed excluded — d...

Kamo·2mo ago
Featurekamo-shared-library

PitiDtiCalculator — PITI assembly + front/back DTI (WS6)

Pure ratio core completing the DTI trio with LiabilityReconciler + the income core: PITIA = P&I + taxes + HOI + HOA + MI + flood; front = PITIA / income; back =...

Kamo·2mo ago
Featurekamo-shared-library

QualifyingIncomeCalculator — base + variable core (WS5)

Pure/deterministic income core: base salaried = conservative lowest-of available evidence (paystub / W-2 / VOE); variable = 2-yr average with a declining-income...

Kamo·2mo ago
Featurekamo-shared-library

LiabilityReconciler — agency payment-inclusion rules (WS6 core)

Pure/stateless computer turning each liability into the monthly payment that counts against DTI, with a cited rationale: omitted/paid-off excluded, leases alway...

Kamo·2mo ago
Featurekamo-shared-library

Explicit-period quantity spec for delta successors

RequirementQuantity gains an explicit periods list (+ deltaJson builder); when present it IS the required set, so a successor can be scoped to "just send August...

Kamo·2mo ago
Featurekamo-shared-library

**************** as the single period-key source

Adds periodKeyFor(date) so the write-path (satisfier stamping) and the coverage evaluator key periods identically; evaluator now delegates to it. Pure/additive,...

Kamo·2mo ago
Featurekamo-shared-library

Period-coverage primitives for period-aware document collection

The pure, additive foundation of period-aware collection (doc 06 §4) — the first slice of the bank-statement "collect only the months I don't have yet" fix. Zer...

Kamo·2mo ago
Featurekamo-shared-library

Add software white-label branding columns to Organization

Kamo·2mo ago
Featurekamo-shared-library

Add ALLOW_MOBILE_ACCESS (167) general right for Mobile Copilot

New RoleRightType (serviceType=null → General group) gating the 'Setup Mobile Access' interaction-center tab. RoleRightsSyncService backfills it to all roles on...

Kamo·2mo ago
July 15, 2026
Featurekamo-shared-library

Add anon usage count query for public web-chat quota

Kamo·2mo ago
Featurekamo-shared-library

Device-token + push-registration entities, HMAC stream-token codec

hashed secret, rotation grace, sliding expiry), push_device_registrations (one push destination per device+org+kind), and StreamTokenCodec — short-lived HMAC to...

Kamo·2mo ago
Featurekamo-shared-library

Multi-pass closed-loan training — pass counter + corpus upsert key

The closed-loan trainer now re-reads a loan on successive passes until its extraction reproduces the loan outcome, so: - LeadLosLink.closedLoanPasses drives a p...

Kamo·2mo ago
Featurekamo-shared-library

Status-preserving progress write for the closed-loan trainer

run is RUNNING, without touching status. An operator pause (status → PAUSED) can no longer be clobbered by a full-row save from the pool thread — the guarded up...

Kamo·2mo ago
Featurekamo-shared-library

Harden closed-loan trainer — run lock + per-loan idempotency

- ClosedLoanTrainingRun.claim(): atomic conditional UPDATE that takes ownership of a run only when it is not already RUNNING or its heartbeat is stale (prev...

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