KamoCRM

Live Change Log

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

17,374
Total Changes
5,891
Features
5,258
Fixes
30
Projects
Filter by project
All Projects17,374AIService242APIService174BillingService157ConversionService110DaemonService137DocsService223ESigService91EmailService568InitializerService329KBService151KlusterServices738MCPGatewayService235MediaService592RAGService79SecurityService1,822TranslateService62VOIPService248VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,321kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,631kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore773Docs3,252Feature5,891Fix5,258Other993Performance165Refactor278Revert23Style42Test159Upgrade1
June 26, 2026
Featurekamo-shared-library

Guideline rules + conditions + evaluator, sharing the LLPA predicate engine (Phase-2 Slice 8)

The guideline-rule predicate conjunct of §8.1 step-2. Critically, REUSES the reviewed Slice-4 condition evaluator instead of duplicating the safety-critical pre...

Kamo·3mo ago
Featurekamo-shared-library

MlosGuidelineVersion (WORM) + GuidelineVersionResolver (Phase-2 Slice 7)

The immutable effective-dated guideline VERSION — the container eligibility matrices **************** and future guideline rules hang off. Faithful replication ...

Kamo·3mo ago
Featurekamo-shared-library

Eligibility matrix + cells + cell matcher (Phase-2 Slice 6)

The §8.1 step-2 eligibility-first filter substrate (the cell conjunct; guideline_rule + AUS gate AND in later). - MlosEligibilityMatrix (mlos_eligibility_matri...

Kamo·3mo ago
Featurekamo-shared-library

MlosMarginSchedule + MarginScheduleResolver (Phase-2 Slice 5)

The investor margin layer — the "+ margin_schedule" term of §8.1 step-4 price assembly. - MlosMarginSchedule (mlos_margin_schedule): rateSheetVersionId FK, pro...

Kamo·3mo ago
Featurekamo-shared-library

LLPA adjustments + value sets + condition evaluator (Phase-2 Slice 4)

The LLPA/adjustment layer + the deterministic predicate engine for §8.1 step-4 matching ("an adjustment matches iff ALL its conditions are satisfied"). - MlosP...

Kamo·3mo ago
Featurekamo-shared-library

MlosBasePriceGrid + NoteRateLadder priceable cells (Phase-2 Slice 3)

The priceable rate/price cells — first catalog entity to FK BOTH a rate-sheet version (Slice 1) AND a product (Slice 2); the base of the §8.1 price assembly. -...

Kamo·3mo ago
Featurekamo-shared-library

MlosProduct + MlosArmIndex product-taxonomy layer (Phase-2 Slice 2)

The product spine of the catalog (doc 02 §6.3): everything priceable downstream (base price grids, eligibility matrices, guideline rules) FKs to MlosProduct.uid...

Kamo·3mo ago
Featurekamo-shared-library

Catalog provenance + effective-dated versioning spine (Phase-2 Slice 1)

Smallest shippable slice of the Phase-2 catalog (doc 02 §6): the provenance chain ImgDat -> MlosSourceDocument -> MlosRateSheetVersion and the immutable effecti...

Kamo·3mo ago
Featurekamo-shared-library

Per-tenant confidence-threshold gate overload (config↔gate wiring)

Additive DecisionGate.evaluate(stage, confidence, legallyRequiresHuman, BigDecimal tenantThresholdOverride) — the autonomy-tuned per-tenant wall resolved by ***...

Kamo·3mo ago
Featurekamo-shared-library

Complete Phase-1 config domains + MlosActivationService (Slice 5)

Completes doc 04's config entity inventory **************** - Policy singletons (one-active-per-profile, effective-dated/append-only): PricingPolicy (ppeSour...

Kamo·3mo ago
Featurekamo-shared-library

Channel Applicability engine (Phase-1 Slice 4)

The deterministic most-restrictive resolver (doc 04 §8) — Product x Channel x Investor -> {ALLOWED|DISALLOWED, executionPath, authorityModel, fundingBehavior}. ...

Kamo·3mo ago
Featurekamo-shared-library

AuthorityConfig (underwriting authority + govt delegations) — Phase-1 Slice 3

- AuthorityConfig (singleton per LenderProfile): underwritingAuthority DELEGATED/NON_DELEGATED/HYBRID + manualUwAllowed + govtDelegation Set {FHA_DE,VA_SAR_...

Kamo·3mo ago
Featurekamo-shared-library

AI autonomy config + safety-floor resolver (Phase-1 Slice 2)

- AiAutonomyConfig (singleton per LenderProfile; autonomyLevel **************** globalDefaultThreshold DECIMAL(4,3), autoExecuteEnabled) + AutonomyStageOver...

Kamo·3mo ago
Featurekamo-shared-library

LenderProfile + LicensingEntry config foundation (Phase-1 Slice 1)

New com.kamo.z.shared.mlos.config tenant-config foundation (doc 04 §3): - LenderProfile (root, UNIQUE per MORTGAGE marketId) — soft-FKs locked Organization (...

Kamo·3mo ago
Featurekamo-shared-library

**************** for the DaemonService SLA sweep

Flips every ARMED-but-past-deadline AdverseActionTimer + RegXTimer to EXPIRED (the durable escalation signal the Compliance steward screen surfaces; event emiss...

Kamo·3mo ago
Featurekamo-shared-library

Wire license-aware assignment into DecisionSpine (Slice 2b-ii)

DecisionSpine.record() now stamps StewardTask.assignedMemberId from the StewardAssigner when a routed decision carries the loan's jurisdiction: - DecisionReque...

Kamo·3mo ago
Featurekamo-shared-library

License-aware StewardAssigner (decision-spine Slice 2b-ii)

Adds the license-aware steward selector (doc 03 §3.2; doc 01 §6 #9) — picks a steward whose MLOS StewardLicense is valid TODAY for the act's required license ty...

Kamo·3mo ago
Featurekamo-shared-library

ECOA + Reg X timer substrate (decision-spine Slice 2c-i)

New **************** package (doc 03 §2.8) — kamo-owned compliance-timer analogues of the locked donotmodify.TridTimer. Substrate-first: - AdverseActionTimer (...

Kamo·3mo ago
Featurekamo-shared-library

State-aware legal registry substrate (decision-spine Slice 2b)

New com.kamo.z.shared.mlos.legal package — the greenfield producer of the DecisionGate's absolute legal-wall input (doc 03 §3.2). Substrate-first, no adopter ye...

Kamo·3mo ago
Refactorkamo-shared-library

Declare Slice-2a indexes via @Table(indexes) on entities

Move the mlos_orchestration_state and mlos_steward_task index definitions from KamoInitializer's SchemaCleanupRunner onto the entities themselves (@Table(indexe...

Kamo·3mo ago
Featurekamo-shared-library

Decision-spine Slice 2a — OrchestrationState + StewardTask + DecisionSpine BLOCKED-state machine

OrchestrationState (per-loan-stage GREEN/BLOCKED/COMPLETE) + StewardTask (exception record) + enums + DecisionSpine (@ConditionalOnProperty mlos.spine.enabled):...

Kamo·3mo ago
Featurekamo-shared-library

Add VENDOR_CALLBACK_RESOLVED event-type key (0.6a ingress)

Kamo·3mo ago
Featurekamo-shared-library

LoanIdentifier registry substrate — 42 typed ids (keystone 0.5, slice 1)

New pkg com.kamo.z.shared.mlos.identity (the inbound-webhook routing key): LoanIdentifierType (42 first-class typed ids, each carrying Cardinality + Ownership; ...

Kamo·4mo ago
Fixkamo-shared-library

PublishAck is in io.nats.client.api, not io.nats.client

Test-only import fix that was breaking shared-lib compilation (caught by the now-required local mvn install). Main code was unaffected (OutboxRelay ignores the ...

Kamo·4mo ago
Featurekamo-shared-library

StewardFeedback flywheel — capture every steward verdict (keystone 0.11)

New pkg **************** append-only StewardFeedback ground-truth row (FK ai_decision.uid; verdict CONFIRM/OVERRIDE/MODIFY; Reg-B-aligned reasonCode; correctedV...

Kamo·4mo ago
Featurekamo-shared-library

Immutable AiDecision WORM ledger + two-wall DecisionGate (keystone 0.3, slice 1)

New pkg com.kamo.z.shared.mlos.decision (greenfield decision spine, never edits donotmodify): immutable append-only AiDecision (WORM via @PreUpdate guard; loanF...

Kamo·4mo ago
Featurekamo-shared-library

Tenant-isolation gate for the event backbone (Slice 3)

Roadmap 0.10: **************** (the per-tenant consumer subscription seam) + belongsToTenant(subject,orgId) token-wise matching that mirrors NATS filtering; for...

Kamo·4mo ago
Featurekamo-shared-library

Consumer-side idempotency, DLQ + steward replay (Slice 2)

Adds the reliability core that any MLOS consumer plugs into: ProcessedEvent dedup ledger (unique consumer_name+event_id) + MlosDeadLetter DLQ + MlosDeadLetterSt...

Kamo·4mo ago
Featurekamo-shared-library

Transactional outbox event backbone (Phase-0 keystone B)

Money/compliance-grade producer path in NEW sibling pkg **************** (never edits donotmodify): MlosEventEnvelope DTO + MlosOutboxEvent outbox entity/repo +...

Kamo·4mo ago
Docskamo-shared-library

Commit project markdown (rescind no-.md policy)

Kamo·4mo ago
June 16, 2026
Featurekamo-shared-library

Add case-insensitive findByEmailEmailIgnoreCase

Emails are stored with inconsistent case (e.g. Sage@KamoCRM.com) and CockroachDB string equality is case-sensitive, so findByEmailEmail misses on case alone. Ne...

Kamo·4mo ago
June 15, 2026
June 13, 2026
June 10, 2026
Featurekamo-shared-library

Canonical e-sign signer templates (verification + invite)

Add two platform-wide canonical email templates seeded lazily per org: - esign.signer_verification (step-up OTP: {{code}}, {{name}}) - esign.signer_invite (sign...

Kamo·4mo ago
Featurekamo-shared-library

API_SIGNATURE api-key scope + EsignGenericEnvelope.origin

Additive, no version bump: - ApiKeyScope.API_SIGNATURE — gates the programmatic e-signature API (Business) - EsignGenericEnvelope.origin (EsignUsageOrigin, null...

Kamo·4mo ago
Featurekamo-shared-library

Explicit Organization.isPlatformProduct as entitlement-root signal

Replace the derived 'owns a SUBSCRIPTION market' heuristic with an explicit, admin-set ownership flag. A platform product (e.g. sign.pink) is a white-label prod...

Kamo·4mo ago
Fixkamo-shared-library

Product root = owns SUBSCRIPTION market, not any market

A customer org (e.g. BluEleven) owns its OWN business markets (RETAIL/MORTGAGE) to run its company while remaining a customer of the KamoCRM platform — its memb...

Kamo·4mo ago
June 9, 2026
Featurekamo-shared-library

Resolve entitlements by product-root org, not platform top-level

Introduce EntitlementRootResolver: the nearest market-owning ancestor-or-self of an org (its product root), falling back to the platform top-level. This decoupl...

Kamo·4mo ago
Featurekamo-shared-library

Add envelope recipient, field value, recipient status entities

Check in the in-progress esign model: EsignEnvelopeRecipient (+repo), EsignFieldValue (+repo), EsignRecipientStatus, and an ESignSignerType update. Additive; no...

Kamo·4mo ago
Featurekamo-shared-library

Add EsignUsageRecord for per-signature usage metering

New append-only usage entity (mirrors AiUsageRecord) emitted at signature completion. Only API-origin signatures count toward a plan's monthly included quota + ...

Kamo·4mo ago
May 29, 2026
Fixkamo-shared-library

Rename LoanRepository → PersonalLoanRepository

Spring Data JPA derives the repository bean name from the interface's simple class name, not from the @Repository("...") qualifier value, so the prior workaroun...

Kamo·4mo ago
Fixkamo-shared-library

Avoid Loan / LoanRepository collision with mortgage app

KamoInitializerService failed to boot because two @Entity classes named 'Loan' and two repository classes named 'LoanRepository' both wanted to register the sam...

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

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

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

Kamo·4mo ago
May 28, 2026
Performancekamo-shared-library

Paged repo queries + countByStatus for hot paths

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

Kamo·4mo 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·4mo 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·4mo 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·4mo ago
May 21, 2026
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
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

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