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
April 27, 2026
FixDaemonService

Enable JPA repos for commerce + email + dao.repositories packages

DaemonService crashed on startup with: Parameter 0 of constructor in **************** required a bean of type **************** that could not be found. A r...

Kamo·5mo ago
FeatureDaemonService

RecordingProcessorJob + NATS shortcut for fresh uploads

- New Quartz job RecordingProcessorJob ticks every minute, dispatches independent VM and call batches concurrently to ConversionService **************** usi...

Kamo·5mo ago
April 24, 2026
FeatureDaemonService

Global VOIP sync job (admin-tunable interval)

VoipGlobalSyncJob ticks every minute and, on each tick, reads the SystemConfiguration singleton to decide whether a global sync is due: - If voipSyncEnabled is ...

Kamo·6mo ago
April 21, 2026
April 20, 2026
April 19, 2026
ChoreDaemonService

Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)

Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...

Kamo·6mo ago
ChoreDaemonService

Rebuild for kamo-shared-library update (appConfig upsert-only fix)

Pulls the hardened **************** that no longer deletes appConfig rows whose service types are absent from the caller's payload — prevents silent data loss w...

Kamo·6mo ago
ChoreDaemonService

Rebuild for kamo-shared-library update (effective-feature resolver)

Picks up the new AppliedModelEnforcementService methods (computeAvailabilitiesMap, isAppEffectivelyEnabled, getEffectivelyEnabledAppTypes, computeEffectiveFeatu...

Kamo·6mo ago
ChoreDaemonService

Rebuild for kamo-shared-library update (applied-model enforcement + appConfigs + isPrivate)

Triggers a rebuild so this service pulls the updated kamo-shared-library containing AppliedModelEnforcementService, ChildOrgSecurityModelAppConfig entity, Servi...

Kamo·6mo ago
ChoreDaemonService

Rebuild for kamo-shared-library update (runtime force rules + DEFAULT fallback in MemberRightsAppliedService)

Triggers a rebuild so this service picks up the updated **************** that applies template force rules and DEFAULT-template fallbacks on top of the existing...

Kamo·6mo ago
ChoreDaemonService

Rebuild for kamo-shared-library update (master model, default role templates, force-rule resolver)

Triggers a rebuild so this service pulls the new kamo-shared-library revision containing Organization.branchTypeID, Organization.masterModelID, ****************...

Kamo·6mo ago
April 18, 2026
FixDaemonService

Bump kamo-shared-library to 1.4.0

Kamo·6mo ago
April 16, 2026
CIDaemonService

Add concurrency group to prevent duplicate workflow runs

When a push triggers a workflow and workflow_dispatch is also fired (or two pushes arrive in quick succession), both runs would execute simultaneously. Adding a...

Kamo·6mo ago
FeatureDaemonService

Add Quartz job for automated lead intake payload processing

Adds LeadIntakeProcessingJob that runs every minute to process queued raw payloads from 3rd-party vendors. Applies configured field mappings, transformations (t...

Kamo·6mo ago
April 13, 2026
April 12, 2026
RefactorDaemonService

Delegate thumbnail generation to ConversionService, remove PDFBox dependency

ThumbnailGenerationJob now POSTs the converted PDF to ConversionService **************** unzips the response, and stores each thumb_p{n}.png in MinIO. PDFBox re...

Kamo·6mo ago
April 11, 2026
FixDaemonService

Use imgRepository.findByDat() instead of lazy imgDat.getImages()

Quartz jobs run outside JPA sessions, so lazy collection access on ImgDat.images throws LazyInitializationException. Use explicit repository query instead.

Kamo·6mo ago
FeatureDaemonService

Add NATS progress publishing for background document conversion

ConversionProgressPublisher publishes real-time progress events for each conversion stage. DocumentConversionJob and ThumbnailGenerationJob now emit progress fo...

Kamo·6mo ago
FeatureDaemonService

Add document conversion and thumbnail generation background jobs

- DocumentConversionJob: polls for unconverted files, sends to ConversionService, stores converted PDFs with deduplication - ThumbnailGenerationJob: renders f...

Kamo·6mo ago
April 4, 2026
FixDaemonService

Update WebinarReminderJob to use renamed repository method

Calls **************** with a 24-hour max window instead of the removed findWebinarsWithDueReminders method.

Kamo·6mo ago
FeatureDaemonService

Add webinar reminder job with NATS event publishing

Adds WebinarReminderJob (runs every minute) that checks for due webinar reminders based on configured intervals, publishes daemon.webinar.reminder events via NA...

Kamo·6mo ago
ChoreDaemonService

Add target/ to gitignore

Kamo·6mo ago
April 3, 2026
FeatureDaemonService

Add OG image warmup job for kamocrm.com

Quartz-scheduled job that pre-fetches opengraph-image URLs daily at 4 AM to keep the marketing site's OG image cache warm. Covers 23 static routes and 7 blog po...

Kamo·6mo ago
March 24, 2026
CIDaemonService

Rebuild with latest kamo-shared-library

Kamo·7mo ago
FixDaemonService

Enable redirect following for MaxMind download

MaxMind returns 302 redirect to the actual file. HttpClient wasn't following it, causing the sync to fail with HTTP 302.

Kamo·7mo ago
FixDaemonService

Add SecurityConfig to permit daemon trigger and actuator endpoints

Spring Security defaults blocked all endpoints with 401. Added explicit config to permit /api/daemon/** and /actuator/** without authentication.

Kamo·7mo ago
FeatureDaemonService

Add manual job trigger controller with duplicate execution guard

POST /api/daemon/trigger/{jobName} triggers any Quartz job immediately. Returns 409 if the job is already executing. GET /api/daemon/trigger/status returns runn...

Kamo·7mo ago
CIDaemonService

Temporarily set geolite sync cron to every 2 minutes for testing

Will revert to weekly Sunday 3 AM after confirming sync works.

Kamo·7mo ago
March 23, 2026
FixDaemonService

Rewrite GeoLite sync — correct download URL, streaming hash, batch inserts

- Use MaxMind's current permalink API with HTTP Basic Auth (account-id + license-key) - Streaming SHA-256 instead of Files.readAllBytes (prevents OOM on 100MB+ ...

Kamo·7mo ago
March 21, 2026
FeatureDaemonService

Add GeoLite2 sync job for MaxMind IP-to-location database

Quartz-scheduled job (weekly Sunday 3 AM) that downloads MaxMind GeoLite2-City-CSV, parses IPv4/IPv6 blocks and locations, loads into staging tables, and perfor...

Kamo·7mo ago
March 20, 2026
FeatureDaemonService

Include memberId in sync complete NATS messages

SyncCompletePublisher now accepts optional memberId parameter, and ContactSyncJob passes it from the integration's member reference. This enables EmailService t...

Kamo·7mo ago
March 19, 2026

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