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 11, 2026
PerformanceMediaService

An SI shows "typing…" through an internal endpoint, and a message's badges are recounted off the sender's request

- POST /api/media/internal/chat/typing {memberId, conversationId, typing} (KamoAI internal secret, InteractionInternalAuth; under /api/media/internal, which the...

KamoΒ·1w ago
September 29, 2026
PerformanceMediaService

A turn-only fan-out reads no roster, ticket id or conversation title

SP98-D-6. ChatFanoutService.prepare resolved the roster, the support ticket's id and the conversation's title for every request, including the turn-only ones (a...

KamoΒ·3w ago
September 8, 2026
PerformanceMediaService

Stop rebuilding the wallet and the guest list on every check

`viewFor` fetched the recipient's Cheddar balance and queried the whole organization's member list β€” both per RECIPIENT, on every published frame. At a full tab...

KamoΒ·1mo ago
August 28, 2026
PerformanceMediaService

Serve a reopened window only what it missed, and audit a page in one write

Two costs, both paid on every single open of a chat window. ?since on GET /sessions/{guid}/messages. A window being reopened wants the messages after the one i...

KamoΒ·1mo ago
August 9, 2026
PerformanceMediaService

Accept a BLAKE3-only claim so dedup is faster than uploading

The link endpoint demanded both hashes. A browser has no fast SHA3-256, so proving it already had a 358 MB file took ~20 seconds against an 18.8 second upload β€”...

KamoΒ·2mo ago
April 25, 2026
PerformanceMediaService

Store geo on ticket at creation, drop GeoLite reads

**************** now captures the visitor's geo once (via GeoLookupService) and persists ip/country/city/subdivision on the SupportTicket itself. SupportTicket...

KamoΒ·6mo ago
PerformanceMediaService

Bulk-load visitors and skip GeoLite lookup in list

The /api/support/tickets list endpoint was running, per page of 20 rows: - 20 **************** calls (N+1) - 20 calls into GeoLookupService.lookup, each of ...

KamoΒ·6mo ago
March 12, 2026
PerformanceMediaService

Skip DB member lookup for messages auth check

Extract getMemberIdFromRequest() that reads memberID from the Redis session without hitting the DB. Use it in getMessages() instead of getCurrentMember() β€” the ...

KamoΒ·7mo ago
PerformanceMediaService

Remove remaining println calls from getMessages endpoint

KamoΒ·7mo ago
PerformanceMediaService

Eliminate per-request logging overhead and async TTL refresh

- k8s configmap (the actual production config): lower security/hikari logging from INFO/DEBUG to WARN, add HikariCP pool config (max 20) - KSessionService: st...

KamoΒ·7mo ago
PerformanceMediaService

Reduce log noise and tune connection pool

- Lower Spring Security from TRACE to WARN and HikariCP from DEBUG to WARN β€” eliminates dozens of synchronous log writes per request - Add explicit HikariCP p...

KamoΒ·7mo ago
PerformanceMediaService

Remove per-message logging from chat message endpoint

Remove System.out.println calls inside the message stream map that were firing once per message (100 I/O operations per request), and the final log that streame...

KamoΒ·7mo ago
December 12, 2025
PerformanceMediaService

Refactor to parallel deployment for k1m1 and k2m1

- Split build and deployment into separate jobs - Deploy to k1m1 and k2m1 in parallel after build completes - Reduces total deployment time significantly

snadjafiniaΒ·10mo 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