KamoCRM

Live Change Log

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

18,829
Total Changes
6,790
Features
5,684
Fixes
30
Projects
Filter by project
All Projects18,829AIService286APIService179BillingService166ConversionService121DaemonService151DocsService275ESigService101EmailService650InitializerService349KBService163KlusterServices775MCPGatewayService278MediaService627RAGService79SecurityService2,052TranslateService62VOIPService266VectorService11kamo-apps29kamo-asterisk-support29kamo-capcha17kamo-capcha-widget4kamo-internal8,868kamo-login346kamo-marketing642kamo-nowww20kamo-register216kamo-shared-library1,880kamo-signer-monorepo72kamolos115
Filter by type
All TypesBuild23CI528Chore796Docs3,293Feature6,790Fix5,684Other1,007Performance174Refactor285Revert23Style45Test180Upgrade1
November 5, 2025
Fixkamo-internal

Allow /ws WebSocket endpoints without auth redirect

- Added /ws path to middleware bypass - SockJS needs to connect to /ws/info without redirect - WebSocket connections will still have *** cookie - Fixes WebSocke...

snadjafinia·Nov 5, 2025
Fixkamo-internal

Change WebSocket connection to same-origin

- Changed from media.kamocrm.com to same origin (internal.kamocrm.com) - Avoids cross-origin WebSocket connection issues - Added Next.js rewrite rule to proxy /...

snadjafinia·Nov 5, 2025
Featurekamo-internal

Add API proxy routes for WebRTC endpoints

- Added /api/webrtc/config proxy to MediaService - Added /api/webrtc/token proxy for Janus authentication - Added /api/webrtc/call/initiate, answer, end proxies...

snadjafinia·Nov 5, 2025
Fixkamo-internal

Remove invalid coder property from getDisplayMedia

- Using simple video: true for screen sharing - Build should now succeed

snadjafinia·Nov 5, 2025
Fixkamo-internal

Resolve build error - replace PhoneOff with CallEnd

- PhoneOff icon doesn't exist in @mui/icons-material - Using CallEnd which is the correct MUI icon - Removed unused duplicate files (ChatBoxWithWebRTC, VideoCal...

snadjafinia·Nov 5, 2025
Featurekamo-internal

Complete peer-to-peer WebRTC calling with signaling

- Added useWebRTC hook with full signaling support - Integrated WebSocket signaling (offers, answers, ICE candidates) - Added incoming call notifications with a...

snadjafinia·Nov 5, 2025
Featurekamo-internal

Add Janus WebRTC integration for audio/video calls

- Added useJanusWebRTC hook for WebRTC call management - Added VideoCallPanel component for in-chat video display - Integrated with ChatBox for seamless call ex...

snadjafinia·Nov 5, 2025
Revertkamo-internal

Restore WebSocket transport in SockJS

- Revert to using websocket transport (not polling) - WebSockets are standard and should work properly - Focus on fixing the actual WebSocket connection issue

snadjafinia·Nov 5, 2025
Fixkamo-internal

Skip WebSocket transport in SockJS to avoid HTTP/2 issues

- Use xhr-streaming and xhr-polling transports instead of websocket - These transports work with both HTTP/1.1 and HTTP/2 without requiring WebSocket upgrades -...

snadjafinia·Nov 5, 2025
Fixkamo-internal

Configure SockJS transports to handle HTTP/2 WebSocket upgrade issues

- Explicitly configure SockJS transport order to prefer WebSocket, then fallback to xhr-streaming/xhr-polling - HTTP/2 WebSocket upgrades may fail, so SockJS wi...

snadjafinia·Nov 5, 2025
November 4, 2025
Fixkamo-internal

Ensure messages route is recognized by Next.js

- Added logging to verify route is being hit - Route file exists and structure is correct for Next.js 15

snadjafinia·Nov 4, 2025
Fixkamo-internal

Remove non-existent 'active' property from STOMP Client logging

- STOMP Client doesn't have an 'active' property - Only check 'connected' property which is the correct state indicator

snadjafinia·Nov 4, 2025
Fixkamo-internal

Remove unsupported onWebSocketError handler from STOMP client

- onWebSocketError is not a valid property in ClientOptions - SockJS error handlers (onerror, onclose) already provide error handling

snadjafinia·Nov 4, 2025
Fixkamo-internal

Improve connection timeout handling with ref cleanup

snadjafinia·Nov 4, 2025
Fixkamo-internal

Add comprehensive WebSocket error handling and logging

- Added SockJS error handlers (onopen, onerror, onclose) to catch connection failures - Added connection timeout detection (10 seconds) to identify silent failu...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Remove incorrect HTTPS agent workaround

- Reverted changes that bypassed certificate validation - Certificates are issued by auto-cert service (Let's Encrypt), not self-signed - Need to investigate wh...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Use HTTPS with agent that accepts self-signed certificates

- Reverted to always use HTTPS (not HTTP) - Added HTTPS agent with rejectUnauthorized: false for self-signed certs - This allows server-side Next.js routes to c...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Use Kubernetes service name for MediaService to avoid SSL cert issues

- Server-side Next.js routes now use **************** - This avoids self-signed certificate errors when connecting to https://media.kamocrm.com - Client-side re...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Remove old /api/security/media/ routes that were intercepting requests

- Old routes were forwarding to APIService which no longer has media endpoints - All media requests should go through /api/media/ routes directly to MediaServic...

snadjafinia·Nov 4, 2025
Featurekamo-internal

Add detailed error logging for MediaService session creation

- Log MediaService URL being called - Log response headers - Enhanced error logging with full error details - Include URL in error response for debugging

snadjafinia·Nov 4, 2025
Fixkamo-internal

Add actions/checkout@v4 to deploy_k1m1 job as well

snadjafinia·Nov 4, 2025
Fixkamo-internal

Revert to actions/checkout@v4 to match other Next.js projects

- Remove complex manual checkout logic that was causing hangs - Use standard actions/checkout@v4 like kamo-login and kamo-register - Simplify Docker build conte...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Use shallow clone with timeout to prevent hanging

- Use --depth 1 for faster cloning - Add timeout (120s for shallow, 300s for full) - Fallback to full clone if shallow fails - Fetch specific commit if needed a...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Change to valid directory before git clone to avoid working directory error

- Change to /tmp or / before removing/cloning workspace - Only remove directory if it exists but is not a git repo - Prevents 'Unable to read current working di...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Use hardcoded repository URL and set GITHUB_WORKSPACE env var

- Use direct repository URL to avoid DNS/hostname resolution issues - Set GITHUB_WORKSPACE environment variable for subsequent steps - Use env var in Docker bui...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Use git clone directly instead of relying on empty workspace

- Clone repository using git directly with repository URL - Handle both fresh clone and existing repository cases - Use working-directory for Docker build actio...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Simplify all checkout steps - remove git operations that hang

- Remove git fetch/reset/clean from deploy jobs - Forgejo runner already has code checked out - Just verify GITHUB_WORKSPACE is valid

snadjafinia·Nov 4, 2025
Fixkamo-internal

Simplify checkout step - remove git clone that was hanging

- Remove git clone logic that was causing 20+ minute hangs - Forgejo runner already has code checked out, just verify directory - Remove unnecessary git fetch/r...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Improve checkout and Docker build context handling

- Add proper repository cloning if not already checked out - Verify Dockerfile exists before building - Use absolute paths for Docker build context - Fix workin...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Replace actions/checkout with manual git checkout to avoid DNS issues

- Replace actions/checkout@v4 with manual git checkout commands - Forgejo runner already has code checked out, just need to ensure clean state - Fixes DNS looku...

snadjafinia·Nov 4, 2025
Featurekamo-internal

Add direct MediaService routes via media.{domain} for WebSocket support

- Create new /api/media/* routes that forward directly to media.{domain} - These routes bypass APIService to allow secure WebSocket connections - MediaService r...

snadjafinia·Nov 4, 2025
Featurekamo-internal

Add logging for subscription request to backend

- Log when subscription request is sent to /app/chat/subscribe - Helps verify if subscription requests are reaching the backend

snadjafinia·Nov 4, 2025
Featurekamo-internal

Add detailed logging for subscribe function

- Log when subscribe() is called and current connection state - Log client existence and connection status - Helps diagnose why subscriptions aren't being creat...

snadjafinia·Nov 4, 2025
Featurekamo-internal

Add detailed WebSocket connection logging

- Enhanced logging for WebSocket connection success/failure - Log connection frame details on successful connection - Log detailed STOMP error information - Hel...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Extract large IDs from raw JSON to prevent JavaScript precision loss

- Extract memberID, userID, orgID, and securityOrgId from raw JSON string before parsing - Prevents precision loss for IDs > Number.MAX_SAFE_INTEGER (9007199254...

snadjafinia·Nov 4, 2025
Fixkamo-internal

Add detailed logging for member ID precision debugging

snadjafinia·Nov 4, 2025
Otherkamo-internal

Add logging to track member ID flow from MemberItem to ChatDock

snadjafinia·Nov 4, 2025
Fixkamo-internal

Move unsubscribe before useEffect to fix variable ordering

snadjafinia·Nov 4, 2025
Fixkamo-internal

Replace 'any' type with proper interface for message mapping

snadjafinia·Nov 4, 2025

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