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
October 19, 2026
Testkamo-shared-library

AiAutonomyModeTest pins CP07's RELEASE_PROPOSAL draft kind, and no @Immutable entity may carry a database-generated value

- **************** was red on main since KamoCollab CP07 Task 5 (8bd0f67c) appended **************** (spec D25, a disclosure_request's approval) without updat...

KamoΒ·4d ago
October 11, 2026
Testkamo-shared-library

Pin that an organization the resolver cannot load is UNKNOWN and refused (SP97 T12)

PhiTenantResolver had no test of its own. The SI router (OrgPhiStatusCache) and the Tool Plane (OrgFactsService) read every org's PHI status through it, so a mi...

KamoΒ·1w ago
October 5, 2026
Testkamo-shared-library

Capture the rights and session-timeout waterfall goldens on unchanged main (CP01 T1)

RightsWaterfallGoldenTest (933 lines: cascade 588, templates 324, closure 18, AI 3) a94381d6 and checked in both fixture modes (lazy collections, bulk repositor...

KamoΒ·2w ago
September 25, 2026
Testkamo-shared-library

Compose manifest, fixtures and 232 goldens from the legacy renderers

The fixtures carry the logo ladders (full: header rung with ?v=, a laddered logo badge; company: header and signature rungs without a revision) and the uploaded...

KamoΒ·4w ago
September 12, 2026
Testkamo-shared-library

Count PLAY_CHESS, PLAY_HOLDEM and MANAGE_EMAIL_OPT_OUTS

The two game roots shipped without moving the audited shape, so RoleRightHierarchyTest had been red on main since. The opt-out right is a child of MANAGE_EMAIL_...

KamoΒ·1mo ago
September 3, 2026
Testkamo-shared-library

Wire the accept-gate mock into the FFA spend test

acceptNextLead consults LeadAcceptEligibilityService before it reaches any of the credit logic these cases are about, and the test builds the service by reflect...

KamoΒ·1mo ago
September 2, 2026
Testkamo-shared-library

Pin the quote letter's dotted templateKey, as the HR family already is

The constant is not the templateKey. CanonicalTemplateLoader.load derives only the FILENAME from the constant (QUOTE_SENT -> quote-sent.json) and reads template...

KamoΒ·1mo ago
August 26, 2026
Testkamo-shared-library

Actually exercise the terminal guards

The test that shipped with them asserted only that an ACCEPTED quote reports itself terminal β€” true before the guards existed and still true if both were delete...

KamoΒ·1mo ago
Testkamo-shared-library

Parse every core repository query against the real mapping

Spring Data validates an annotated @Query at bean creation, so a bad JPQL path ships green and crash-loops the consuming service instead of failing CI. The clin...

KamoΒ·1mo ago
August 24, 2026
Testkamo-shared-library

Ratchet that a blocked capability with no app has a call-site guard

Splitting an app from the capability inside it is what lets a clinic hold a phone system and a video room at all, but it moves the enforcement burden. PhiModule...

KamoΒ·1mo ago
August 11, 2026
Testkamo-shared-library

Pin how the pool divides into per-mailbox limits

Dovecot needs a byte figure per mailbox, but storage is one organization-wide pool across eighteen domains. The division has to hold one property above all β€” th...

KamoΒ·2mo ago
Testkamo-shared-library

Pin the delegation-mode semantics

These predicates are what the surfaces hide themselves on, so getting one wrong either offers a button that cannot work or silently permits a charge the owner m...

KamoΒ·2mo ago
August 9, 2026
Testkamo-shared-library

Pin the deprecated-alias exclusion

The catalog key is ServiceType's numeric id, and several retired constants deliberately share one with the app that replaced them β€” DOC_MANAGER with DOCS on 8, ...

KamoΒ·2mo ago
August 7, 2026
Testkamo-shared-library

Script the half of the scan invariant this repo cannot see

SharedLibBeanSafetyTest can only police the library: it knows a bean requires a repository from some package, and nothing about whether the ~40 services scan it...

KamoΒ·2mo ago
Testkamo-shared-library

Detect the unsafe repository dependencies instead of listing them

The guard carried 29 baselined offenders and a location exemption, and caught none of the four outages it exists to prevent. Both were guesses standing in for a...

KamoΒ·2mo ago
August 5, 2026
Testkamo-shared-library

Pin the contact-point and linker invariants, and drop timeline count queries

The two classes the whole feature rests on had no tests, and all three properties they guarantee fail silently in production: an unmatched call is indistinguish...

KamoΒ·2mo ago
July 10, 2026
Testkamo-shared-library

PlatformOAuthProviderType append-order guard

Regression-locks the Phase 5 pull-forward: MERIDIANLINK(8,"meridianlink", "MeridianLink Mortgage") must stay the LAST constant so no existing provider's persist...

KamoΒ·3mo ago
July 9, 2026
Testkamo-shared-library

Regression test for LeadMarket MLOS collapse rule

KamoΒ·3mo ago
July 4, 2026
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Β·3mo 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Β·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