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 4, 2026
FeatureSecurityService

Map an imported column to the lead `source` field

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

Kamo·2mo ago
Featurekamo-shared-library

Add importable `source` field to CreateLeadRequest + persist it in createLead

The Lead has a free-text `source` (shown/edited on the lead detail page) but it was not importable — CreateLeadRequest had no source field, so createLead never ...

Kamo·2mo ago
Featurekamo-shared-library

Canonical scenario-fact spine — genesis deriver + factsJson populate + write-back + overlay matcher (D45)

D1/D45 broadens BorrowerScenarioProfile consumption. Populates the dormant factsJson and makes it the shared source of truth for borrower/loan facts: - Scenari...

Kamo·2mo 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·2mo ago
Featurekamo-internal

Product Enablement tab (per-program, versioned)

kamo·2mo 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·2mo ago
Featurekamo-internal

Policies tab — effective-dated pricing/capital/servicing config

New MortgagePoliciesTab: current active version + publish-new-version form + version history for each of the three effective-dated policies; configTypes/configA...

kamo·2mo 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·2mo ago
Featurekamo-shared-library

VersionedProfilePolicy interface for effective-dated policies

Pricing/Capital/ServicingPolicy implement it so one publish routine drives the single-active demote-then-insert versioning.

Kamo·2mo ago
Featurekamo-internal

Investor delivery + commitment rule sub-editors

The expanded investor row gains Delivery (funding behavior / execution path / remittance) and Commitment (type / min pull-through % / pair-off) editors alongsid...

kamo·2mo 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·2mo ago
Fixkamo-internal

Drop light gray text; use dark gray-800 for labels/secondary

Medium grays (gray-500/600/700, #6b7280/#9ca3af) read as disabled. Push all secondary text and labels to gray-800 / #374151 across the detail page, shared Field...

kamo·2mo ago
Featurekamo-internal

Investor credit-box overlay sub-editor

MortgageInvestorsTab's expanded investor row gains an OverlayEditor (FICO/LTV/DTI/ reserves/doc/geo tightening + comparator + optional program + effective windo...

kamo·2mo 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·2mo ago
Featurekamo-internal

Right-attached full-height sub-nav + higher-contrast text

- Move the section sub-nav from the left to a right-attached, full-height panel that scrolls independently; the header + form content take the remaining width...

kamo·2mo ago
Fixkamo-internal

Governance proxy PUT/DELETE + per-org governor overrides UI (D4)

- Governance proxy now forwards PUT/DELETE (the platform-default save + per-org delete were unreachable — GET/POST-only proxy). Adds mlosDelete http helper. -...

kamo·2mo ago
Fixkamo-internal

Stop loan-pipeline grid flicker loop; full-width detail

- Loan pipeline datagrid: the grid was wrapped in a SectionCard 'fill' body (overflow:auto) around a height:100% AG Grid, causing a ResizeObserver/height fe...

kamo·2mo ago
Featurekamo-internal

Loan pipeline as Mortgage sub-tab + light theme

- Add ApplicationsPipelineConsole: a /leads-style advanced AG-Grid datagrid of mortgage applications at a loan level (status filter tabs, filter row, quick ...

kamo·2mo ago
Featurekamo-internal

Platform AI-Governor calibration config panel (D4 §5.C)

**************** Advanced tab gains a governor panel: edit the platform- default calibration posture (governor gate / force-steward-until-calibrated / min sampl...

kamo·2mo ago
ChoreInitializerService

Platform-singleton partial-unique index for mlos_governor_config (D4)

mlos_governor_config auto-creates via ddl-auto; add the partial expression unique index confining the platform-default (organization_id IS NULL) to a single row...

Kamo·2mo 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·2mo ago
Featurekamo-shared-library

LOAN doc-type guard (D2), sign-convention adapter (D3), per-org governor config (D4)

- ImageService: require a docType for ImageAssocType.LOAN uploads (LOAN-scoped; ACCOUNT/SERVICE_* unchanged). - SignedAdjustmentAdapter: the rule-7 adapter/co...

Kamo·2mo ago
Fixkamo-internal

Fire the accept-lead popup on becoming Available; drop the fire animation

The popup now triggers on the rising edge of (a credit lead is acceptable) AND (nav-top status is Available) — so it fires both when a lead is already waiting a...

kamo·2mo ago
Refactorkamo-internal

Single Integrations tab replaces AUS-only tab (D40)

MortgageIntegrationsTab: all 15 vendor categories (credit, AUS, eSign, closing- docs, title, flood, …) in one tab, each an expandable section with add/remove co...

kamo·2mo ago
FixInitializerService

Scan mlos.intake repos (§5.A) + drop orphan mlos_aus_connection_config (D40)

- Add com.kamo.z.shared.mlos.intake to @EnableJpaRepositories — the §5.A **************** was component-scanned but not a JPA repo, aborting KI startup befo...

Kamo·2mo 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·2mo ago
Refactorkamo-shared-library

Generic MortgageProviderConfig replaces AUS-only config (D40)

One integration-credential store keyed by VendorCategory+vendorKey (credit, AUS, eSign, closing-docs, title, flood, …) behind a single Integrations tab — the Mo...

Kamo·2mo ago
Featurekamo-internal

AUS connections tab (D37) + block 2nd mortgage market (D38)

- MortgageAusConnectionsTab: org-scoped DU/LP/GUS credential config (one per kind); secret is a write-only password field, row shows only whether a credential...

kamo·2mo 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·2mo ago
Featurekamo-internal

Investor delegation sub-editor — per-program authority (D39)

Drop the delegated Switch/column; each investor row expands to a per-program delegation editor (program UUID, blank = investor-wide default; DELEGATED/ NON_DELE...

kamo·2mo ago
ChoreInitializerService

Drop **************** column (D39)

The coarse boolean is replaced by the per-program mlos_investor_delegation child; drop the removed NOT-NULL column so Hibernate INSERTs are not rejected.

Kamo·2mo 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·2mo ago
Featurekamo-shared-library

Per-program investor delegation (D39) — new InvestorDelegation child

Delegation is granular per (investor, program), not a coarse InvestorConfig boolean. Adds DelegationAuthority {DELEGATED, NON_DELEGATED}, the InvestorDelegation...

Kamo·2mo ago
Featurekamo-shared-library

[AUS] AusConnectionConfig entity — per-org per-market DU/LP/GUS connections

Owner directive #6: each org configures its own AUS vendor APIs (Fannie DU / Freddie LP / USDA GUS) per mortgage market, in settings→commerce. Foundational data...

Kamo·2mo ago
Featurekamo-shared-library

[ImageAssocType] append LOAN — images attach to a loan, doc type required

Owner directive: images can be attached directly to a mortgage loan, always with a relevant doc type. Append LOAN to ImageAssocType (id 11, bucket imaging-loans...

Kamo·2mo ago
Featurekamo-shared-library

[sign-convention] money sign-convention validators + Adjustment model

Per the owner's canonical rules. Core domain money never encodes meaning in a sign: - **************** / requirePositive — assets, receivables, liabilities, p...

Kamo·2mo ago
Featurekamo-shared-library

[§5.A] canonical BorrowerScenarioProfile + ProductDiscoveryGate

Per the owner's §5.A directive: ScenarioSupportPolicy must consume a canonical Borrower Scenario Profile generated from normalized URLA data, never raw forms/UI...

Kamo·2mo ago
Featurekamo-shared-library

[12] §5.A ScenarioSupportPolicy deferral-interlock resolver (D36)

doc 12 line 235 P0 — 'the cheapest highest-leverage lifecycle addition'. A legal-wall at product-discovery that keeps **************** from silently running as ...

Kamo·2mo ago
Testkamo-shared-library

[11] doc 11 §6.2 single-active enum↔DDL drift guard

**************** is derived from enum metadata, but the DB backstop is four partial-unique indexes in KamoInitializer whose type IN(...) lists HARD-CODE the sin...

Kamo·2mo 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·2mo ago
Refactorkamo-shared-library

Use the simple entity name in the calibration-count JPQL (D32)

countCalibrationSamples referenced AiDecision by fully-qualified class name in the FROM clause; Hibernate resolves that, but every other @Query in the shared-li...

Kamo·2mo ago
Testkamo-shared-library

Update CanonicalTemplateLoaderTest for the change-password template set

Commit 7c6b20f (change-password support) added the canonical PASSWORD_CHANGED template and reworded EMAIL_VERIFICATION's expiry variable ({{expiryMinutes}} → {{...

Kamo·2mo ago
Featurekamo-shared-library

[12] §5.C AutonomyGovernor — kill-switch + force-steward-until-calibrated (D32)

The DecisionGate already carries a GLOBAL static force-steward @Value, but §5.C needs two things it cannot give: a kill switch flippable WITHOUT redeploy (so DB...

Kamo·2mo ago
Featurekamo-internal

[04] risk-overlay tab — credit-box/geo/exposure layers (D31)

New MORTGAGE market config tab for per-tenant risk overlays: category (credit box / geo concentration / property type / loan amount / fraud / exposure limit) + ...

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