Live Change Log

See what we're building, in real-time. Every feature, fix, and improvement shipped across the platform.

18,042
Total Changes
4,671
Features
4,589
Fixes
32
Projects
Filter by project
All Projects18,042AIService114APIService140BillingService133ConversionService87DaemonService109DocsService191ESigService80EmailService392InitializerService304KBService76KlusterServices550MCPGatewayService45MediaService466RAGService63SecurityService1,532TranslateService47VOIPService175VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,606kamo-login319kamo-marketing590kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,332kamo-signer-monorepo50kamolos104
Filter by type
All TypesBuild24CI523Chore670Docs231Feature4,671Fix4,589Other6,781Performance136Refactor274Revert23Style48Test71Upgrade1
March 18, 2026
Fixkamo-internal

Add shared KB layout with persistent tabs and fix reviews page error

Create app/kb/layout.tsx with KbNavBar tabs shared across Articles, Resources, and Pending Reviews pages. Remove duplicate outer shells and fixed positioning fr...

kamo·6mo ago
CIEmailService

Trigger pipeline

Kamo·6mo ago
CIAIService

Trigger pipeline

Kamo·6mo ago
CISecurityService

Trigger pipeline

Kamo·6mo ago
CIMCPGatewayService

Trigger pipeline

Kamo·6mo ago
CIDocsService

Trigger pipeline

Kamo·6mo ago
CIAIService

Trigger pipeline

Kamo·6mo ago
CIMediaService

Trigger pipeline

Kamo·6mo ago
CIRAGService

Trigger pipeline

Kamo·6mo ago
CISecurityService

Trigger pipeline

Kamo·6mo ago
CIEmailService

Trigger pipeline

Kamo·6mo ago
March 17, 2026
Featurekamo-internal

Replace Plate.js with LexKit editor and add KB resource management

Replace Plate.js editor with LexKit (Lexical-based) including custom Video, Audio, and MediaCard extensions. Add WordPress-style media browser with drag-and-dro...

kamo·6mo ago
FeatureKBService

Add org-level resource management and article-media linking APIs

Rewrite KbMediaService/Controller for org-level media CRUD with paginated listing, search, metadata update, and soft delete. Add article-media link/unlink/sync ...

Kamo·6mo ago
Featurekamo-shared-library

Decouple KB media from articles and add resource management support

Decouple KbMedia from KbArticle (remove article FK), add KbArticleMedia join table for many-to-many article-media links, add title/description/ dateUpdated fiel...

Kamo·6mo ago
Fixkamo-internal

Update navtop email badge when message is marked as read

Dispatch email:folder-changed event after marking a message as read, so MailButton re-fetches the unread count immediately.

kamo·6mo ago
Fixkamo-internal

Revert email WebSocket URL to same-origin Next.js rewrite path

Use /email-ws on same origin, proxied by Next.js rewrites to EmailService via k8s internal DNS. SockJS HTTP fallbacks (xhr-streaming, xhr-polling) work through ...

kamo·6mo ago
FixEmailService

Remove hardcoded WebSocket headers from email middleware

Traefik v3 handles WebSocket Upgrade/Connection headers natively. Hardcoding them broke SockJS fallback transports (xhr-streaming, xhr-polling). Now matches med...

Kamo·6mo ago
Fixkamo-internal

Connect email WebSocket directly to email.{domain} subdomain

Next.js rewrites cannot upgrade HTTP connections to WebSocket, causing the STOMP connection to silently fail after 3 retries. Now uses the same direct subdomain...

kamo·6mo ago
FixKlusterServices

Auto-cert service not renewing expired SSL certificates

The auto-cert service was importing expired certs from shared storage and skipping Certificate CR creation, so cert-manager couldn't manage renewals. Also fixed...

Kamo·6mo ago
Fixkamo-internal

Add 30s polling fallback for real-time email updates when WebSocket is unavailable

The WebSocket connection silently fails after 3 retries, leaving the UI permanently stale. This adds a 30-second polling interval as a reliable fallback across ...

kamo·6mo ago
Fixkamo-internal

Align branch-setup and automation tabs with billing tab design

Standardize layout patterns across settings tabs: consistent padding, shared EmptyState component, matching table structure and header styles.

kamo·6mo ago
Refactorkamo-internal

Move AI to Enabled Apps section and remove settings slideout search/recents

Remove the search bar and recent items section from the settings slideout panel. Move Artificial Intelligence from main topics to the Enabled Apps section so it...

kamo·6mo ago
Fixkamo-internal

Use shared EmailWebSocketContext for real-time unread badge updates

MailButton was creating a duplicate WebSocket connection via useEmailWebSocket() and optimistically incrementing the unread count. Now uses the shared useEmailW...

kamo·6mo ago
Refactorkamo-internal

Simplify apps page with Available/Incubating tabs and list-only view

Remove stats banner, search bar, category filters, grid/list toggle, and features dialog. Apps are now organized into two tabs and "Adjust Features" navigates t...

kamo·6mo ago
Featurekamo-internal

Add Emojis, Character Map, and Text Converter tools to calculator menu

- Emojis: browse all emoji categories with search, select to view code points, copy as emoji/HTML/CSS - Character Map: browse Unicode blocks (Latin, Greek, Cyri...

kamo·6mo ago
Featurekamo-internal

Restyle graphing calculator to light theme and add mode-specific titles and icons

- GraphingMode now uses the same light calcColors scheme as other calculator modes - Graph line colors updated to work on light background - Calculator tool win...

kamo·6mo ago
Featurekamo-internal

Add dropdowns to navtop mail and calculator icons, show unread email badge

- Mail icon now shows red unread count badge and dropdown with "Create New Email" / "View My Emails" - Calculator icon now has dropdown with all 6 modes (adds p...

kamo·6mo ago
Fixkamo-internal

Route media feed WebSocket through media.* subdomain with retry limit

useMediaFeedWebSocket was connecting to same-origin /ws (404) instead of media.kamocrm.com. Fix URL construction to match useChatWebSocket pattern and add MAX_R...

kamo·6mo ago
Fixkamo-internal

Correct KB article field names to match backend entity

Frontend was using wrong field names (dateModified, content, authorName) instead of the actual backend fields (dateUpdated, contentJson, authorMemberId). Also r...

kamo·6mo ago
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
Fixkamo-internal

Remove debug logging, add email WS retry limit, proxy email WS through k8s DNS

Remove verbose console.log statements from useUserInfo, NavTop, NavPri, MemberListProvider, SessionManager, sessionMonitor, avatarUtils, and useChatWebSocket th...

kamo·6mo ago
FixKBService

Correct hasRight to match flat rights array format and honor god mode

Session rights are stored as ["VIEW_DASHBOARD", ...] not [{name, setting}]. Also bypass right checks when GD (god mode) is true.

Kamo·6mo ago
CIMediaService

Rebuild with updated shared-lib

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
FixRAGService

Rename qdrant config properties to avoid K8s env var collision

Kubernetes auto-creates QDRANT_PORT env var from the qdrant Service, which overrides the Spring property with 'tcp://ip:port' instead of an integer. Renamed to ...

Kamo·6mo ago
FixRAGService

Make NATS consumer startup resilient with retry logic

Consumer now retries subscription in a background thread with backoff if KB_EVENTS stream doesn't exist yet. Prevents crash loop when KBService hasn't published...

Kamo·6mo ago
CIRAGService

Retrigger build

Kamo·6mo ago
CIRAGService

Retrigger deploy

Kamo·6mo ago

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing