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
March 27, 2026
FixSecurityService

Auto-provision completed-stage app features in org domain endpoint

Moves auto-provisioning from the FeatureController (only hit from the apps settings page) to the SecurityController org domain endpoint (hit on every page load ...

Kamo·6mo ago
FixSecurityService

Auto-provision missing completed-stage app features for existing orgs

When listing features, the controller now checks for missing OrgFeature rows for COMPLETED-stage apps and creates them. This ensures orgs created before new app...

Kamo·6mo ago
FixSecurityService

Catch all exceptions in FeatureController enable/disable endpoints

Prevents uncaught RuntimeExceptions from becoming opaque 500 errors. Now returns structured error messages for any failure.

Kamo·6mo ago
March 26, 2026
FixSecurityService

Prevent duplicate apps in features list by excluding all existing types

The available list was only excluding features with enabled=true, so a disabled feature (isActive=false) appeared in both the features array AND the available a...

Kamo·6mo ago
FeatureSecurityService

Auto-refresh Redis session rights after feature/role changes

FeatureController and SecurityRoleController now rebuild the caller's session rights in Redis after enable/disable, role create/update/delete, and recalculate-r...

Kamo·6mo ago
FeatureSecurityService

Add FeatureController for org app enable/disable management

REST endpoints for managing organization app features: GET features list, POST enable/disable with CONFIGURE_SYSTEM permission check, root-org-only gating for i...

Kamo·6mo ago
March 25, 2026
CISecurityService

Rebuild with debug logging in shared library

Kamo·6mo ago
FeatureSecurityService

Add POST **************** endpoint

Triggers org-wide member_rights_applied recalculation. Needed after schema migrations or manual DB changes to permissions.

Kamo·6mo ago
March 24, 2026
FeatureSecurityService

Use targeted role-scoped rights recalculation

SecurityRoleController now uses updateRoleMemberRightsApplied() to only recalculate members who have the modified role, instead of recalculating all members in ...

Kamo·6mo ago
FixSecurityService

Recalculate member_rights_applied after role create/update/delete

The member_rights_applied table was never recalculated when roles were modified, causing all members to have 0 applied rights. Now calls **************** after ...

Kamo·6mo ago
CISecurityService

Rebuild with updated shared library containing support permissions

SecurityService needs the new ACCEPT_SUPPORT_TICKETS and MANAGE_SUPPORT entries in RoleRightType enum to include them in *** session rights.

Kamo·6mo ago
FeatureSecurityService

Enforce role protection flags and add parent label support to session

- Enforce isAllowEditSecurity in SecurityRoleController update endpoint - Add parentMemberTitlePlural and parentTeamMemberTitlePlural to *** session - Resolve p...

Kamo·6mo ago
March 23, 2026
RefactorSecurityService

Remove notes code, moved to KBService

Notes management (controller, service, encryption) has been relocated to KBService where it better aligns with knowledge and content management responsibilities...

Kamo·6mo ago
FixSecurityService

Transparent server-side encryption with stable master key

- Add permanent notes.master-encryption-key to ConfigMap (was generating a random key on each pod restart, making old notes undecryptable) - Always encrypt ...

Kamo·6mo ago
FixSecurityService

Clear undecryptable note content and disable encryption flag

When server-side decryption fails (corrupted data or key mismatch), clear the content and set isEncrypted=false on the entity so the note stops showing cipherte...

Kamo·6mo ago
FixSecurityService

Decrypt encrypted notes in getAllNotes and searchNotes responses

getAllNotes and searchNotes were returning raw encrypted content for notes with isEncrypted=true. Now decrypts content server-side before returning, matching th...

Kamo·6mo ago
FeatureSecurityService

Support multi-size photo avatar uploads and crop endpoint

Update uploadPhotoAvatar to accept optional sized variants (fileSm, fileMd, fileLg) stored with suffix naming ({hash}_sm.png, etc). Add PUT /{id}/crop endpoint ...

Kamo·6mo ago
FixSecurityService

Use OTKPreAuthFilter attributes instead of re-validating OTK in NotesController

The OTKPreAuthFilter already consumes and validates the OTK, storing the session data in request attributes. NotesController was trying to re-validate the alrea...

Kamo·6mo ago
March 22, 2026
FixSecurityService

Remove GD check from ****************

The sed command that added the god-mode bypass incorrectly inserted it into all methods containing sessionData, not just hasRight. This caused 'return true' (bo...

Kamo·6mo ago
CISecurityService

Trigger pipeline

Kamo·6mo ago
FixSecurityService

Allow god-eligible users to bypass access security permission checks

New rights (MANAGE_ACCESS_RULES, VIEW_ACCESS_LOGS, etc.) aren't granted to any existing role yet, so all users get Forbidden. God-eligible users (GD=true in ses...

Kamo·6mo ago
March 21, 2026
FeatureSecurityService

Add access security system backend

8 new services (AccessCacheService, GeoLiteService, GeoLiteSyncService, AccessRuleService, GeoBlockService, AccessLogService, DetectionRuleService, SuspiciousDe...

Kamo·6mo ago
March 20, 2026
FixSecurityService

Resolve remaining Long/UUID type mismatches in controllers and beans

Fixes LeadVendorController, LeadMarketController, LeadImportController, ImagingController, AccountController, MediaStreamController, POSController, MemberContro...

Kamo·6mo ago
RefactorSecurityService

Update controllers and services for UUID entity IDs

Updates all controller @PathVariable and service method signatures to use UUID instead of Long for internal entity IDs (avatars, backgrounds, roles, departments...

Kamo·6mo ago
March 19, 2026
FeatureSecurityService

Remove calendar endpoints (moved to EmailService)

Kamo·6mo ago
March 18, 2026
FeatureSecurityService

Add website and social links to member profile GET/PUT endpoints

GET /api/security/members/{id} now returns website and socialLinks fields. PUT /api/security/members/{id} accepts website (string) and socialLinks (map of platf...

Kamo·6mo ago
CISecurityService

Trigger pipeline

Kamo·6mo ago
CISecurityService

Trigger pipeline

Kamo·6mo ago
March 17, 2026
FixSecurityService

COALESCE type mismatch on security_level — column is varchar not int

The SQL query for user details during session creation was failing with 'incompatible COALESCE expressions: expected 0 to be of type varchar' because **********...

Kamo·6mo ago
CISecurityService

Rebuild with updated shared-lib containing KNOWLEDGE_BASE ServiceType

The ServiceTypeConverter fails on feature_type=18 with the old shared-lib.

Kamo·6mo ago
March 16, 2026
March 14, 2026
ChoreSecurityService

Add *.md to .gitignore

Kamo·6mo ago
March 13, 2026
FixSecurityService

Add auth check and sanitize input on POST /org

- Return 401 if no authenticated user (prevents orphan orgs) - Build Organization from allowed fields only (prevents mass-assignment) - Fix colors field name (w...

Kamo·6mo ago
FeatureSecurityService

Set owner and create team member on org creation

When creating an organization via POST /api/security/org, the authenticated user is now set as the org owner and gets Member + TeamMember records with FULL acce...

Kamo·6mo ago
FeatureSecurityService

Add security models CRUD controller and wire to security roles

Add SecurityModelController with full CRUD at /api/security/models. Update SecurityRoleController to accept securityModelIds on create/update and expose GET /se...

Kamo·6mo ago
FixSecurityService

Include member title labels and shortTitle in org domain response

The /org/domain/{domain} endpoint was missing memberTitlePlural, memberTitleNonPlural, teamMemberTitlePlural, teamMemberTitleNonPlural, and shortTitle fields fr...

Kamo·6mo ago
March 12, 2026
FixSecurityService

Move loginOrgOpt declaration outside try block to fix scope error

The variable was declared inside the first try block but referenced in the second try block for parent branch title resolution.

Kamo·6mo ago
FeatureSecurityService

Add abstract title and parent branch title fields to session and API

Add memberTitleAbstract, teamMemberTitleAbstract, parentBranchTitlePlural, and parentBranchTitleNonPlural to session creation and branch titles endpoint for lab...

Kamo·6mo ago
RefactorSecurityService

Rename Employee to TeamMember and Employment to TeamMembership

Update all Employee/Employment references to TeamMember/TeamMembership in controllers, services, and security profile. Rename API endpoint from /employees-contr...

Kamo·6mo ago
FeatureSecurityService

Add PATCH **************** endpoint

Kamo·6mo ago
FeatureSecurityService

Resolve and store org branch titles at login

Kamo·6mo ago
FeatureSecurityService

Store branchTitlePlural/NonPlural in Redis session

Kamo·6mo ago
March 11, 2026
FixSecurityService

Add kamo.commerce.enabled=true to k8s configmap

This is the file the CI pipeline actually applies (k8s/configmap.yaml). Required for CommerceService and EngagementLifecycle to load under the new @ConditionalO...

Kamo·6mo ago
FixSecurityService

Add KAMO_COMMERCE_ENABLED=true to k8s configmap

Required for CommerceService and EngagementLifecycle to load now that they use @ConditionalOnProperty instead of @ConditionalOnBean.

Kamo·6mo ago
FixSecurityService

Enable commerce beans via kamo.commerce.enabled property

CommerceService and EngagementLifecycle now use @ConditionalOnProperty instead of @ConditionalOnBean. Set kamo.commerce.enabled=true so they load in SecuritySer...

Kamo·6mo 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