KamoCRM

Live Change Log

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

18,392
Total Changes
6,527
Features
5,537
Fixes
30
Projects
Filter by project
All Projects18,392AIService276APIService177BillingService161ConversionService117DaemonService146DocsService240ESigService93EmailService619InitializerService344KBService162KlusterServices769MCPGatewayService277MediaService620RAGService79SecurityService1,995TranslateService62VOIPService265VectorService11kamo-apps26kamo-asterisk-support28kamo-capcha17kamo-capcha-widget4kamo-internal8,692kamo-login342kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,824kamo-signer-monorepo57kamolos114
Filter by type
All TypesBuild23CI525Chore794Docs3,286Feature6,527Fix5,537Other1,001Performance174Refactor281Revert23Style45Test175Upgrade1
March 29, 2026
FeatureMediaService

Add MeetConfigController and MeetConfigService for org-level meet settings

REST endpoints for CRUD on OrgMeetConfig and MeetBackground entities. Supports config get/update, background upload/delete/reorder via MinIO storage.

Kamo·7mo ago
March 28, 2026
ChoreMediaService

Trigger rebuild

Kamo·7mo ago
ChoreMediaService

Rebuild

Kamo·7mo ago
ChoreMediaService

Rebuild with ServiceType.MEET COMPLETED stage

Kamo·7mo ago
FeatureMediaService

Add unread count API endpoint, mark-as-read endpoint, and WebSocket broadcast

- GET /api/media/sessions/chat/unread returns per-session and per-sender unread counts - PUT /api/media/sessions/{guid}/read marks a session as read for current...

Kamo·7mo ago
March 26, 2026
FeatureMediaService

Add PRE_TICKET creation and convert-to-ticket endpoint

- createTicket: when preTicket=true, sets status to PRE_TICKET, skips assignment (no title required) - PUT /tickets/{id}/convert: converts PRE_TICKET to NEW, ...

Kamo·7mo ago
March 25, 2026
OtherMediaService

Log session rights on support topic creation

Kamo·7mo ago
March 24, 2026
CIMediaService

Rebuild with latest kamo-shared-library

Kamo·7mo ago
FeatureMediaService

Add support ticket services, REST controllers, and STOMP relay

Implements the MediaService backend for the support ticket system: - SupportTopicService: CRUD for org-scoped support topics - SupportAssignmentService: round-r...

Kamo·7mo ago
March 20, 2026
March 19, 2026
FixMediaService

Add voip.> to NATS stream subjects and handle IllegalStateException in VoipStompRelayController

The NATS stream only covered chat.> so subscribing to voip.> threw IllegalStateException ([SUB-90007] No matching streams). Added voip.> to the stream subjects ...

Kamo·7mo ago
FeatureMediaService

Add VOIP NATS-to-STOMP relay in MediaService

Kamo·7mo ago
March 18, 2026
CIMediaService

Trigger pipeline

Kamo·7mo ago
March 17, 2026
CIMediaService

Rebuild with updated shared-lib

Kamo·7mo ago
March 14, 2026
ChoreMediaService

Add *.md to .gitignore

Kamo·8mo ago
March 13, 2026
CIMediaService

Trigger pipeline

Kamo·8mo 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·8mo 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·8mo 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·8mo 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·8mo ago
March 11, 2026
FixMediaService

Accept *** from query param for cross-subdomain WebSocket auth

Read *** ID from ?***= query parameter first, falling back to cookie. This allows the frontend on internal.kamocrm.com to authenticate WebSocket connections to ...

Kamo·8mo ago
FixMediaService

Handle stale NATS consumer binding with unique consumer retry

- Extract message handler into createNatsMessageHandler() method - Add retry logic with unique consumer name when "Consumer already bound" error occurs after ...

Kamo·8mo ago
ChoreMediaService

Normalize line endings across project files

Kamo·8mo ago
FeatureMediaService

Add WebSocket authentication via *** cookie handshake interceptor

Add WebSocketAuthInterceptor that reads *** cookie on handshake, resolves session via KSessionService, and stores memberId/orgId in WebSocket session attributes...

Kamo·8mo ago
March 10, 2026
FixMediaService

Route WebSocket through Traefik on port 443

- service.yaml: fix port 80→8443 to match pod's actual listen port - ingressroute.yaml: use scheme https + port 8443 for backend - serverstransport.yaml: add in...

Kamo·8mo ago
FixMediaService

Use cluster-internal DNS for NATS connection

Change default NATS URL from WireGuard IPs (100.64.x.x) to nats.kamo.svc.cluster.local for the local server. Remote nodes (k0m1, k2m1) remain on WireGuard IPs.

Kamo·8mo ago
December 23, 2025
CIMediaService

Trigger pipeline

snadjafinia·10mo ago
FixMediaService

Make TLS certificate optional in MediaService deployment

- Add optional: true to wildcard-kamocrm-com secret volume - Update cert-converter init container to handle missing certificate gracefully

snadjafinia·10mo ago
CIMediaService

Trigger pipeline

snadjafinia·10mo ago
CIMediaService

Trigger pipeline after IP updates

snadjafinia·10mo ago
December 16, 2025
CIMediaService

Trigger pipeline - redeploy after RKE2 etcd reset

snadjafinia·10mo ago
CIMediaService

Trigger pipeline - redeploy after RKE2 etcd reset

snadjafinia·10mo ago
CIMediaService

Trigger pipeline - redeploy after RKE2 etcd reset

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