Live Change Log

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

17,933
Total Changes
4,614
Features
4,543
Fixes
32
Projects
Filter by project
All Projects17,933AIService110APIService138BillingService133ConversionService85DaemonService107DocsService189ESigService78EmailService373InitializerService300KBService74KlusterServices546MCPGatewayService43MediaService461RAGService61SecurityService1,523TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,579kamo-login319kamo-marketing585kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,322kamo-signer-monorepo50kamolos102
Filter by type
All TypesBuild24CI523Chore670Docs226Feature4,614Fix4,543Other6,781Performance136Refactor274Revert23Style48Test70Upgrade1
April 26, 2026
FeatureInitializerService

Add include_company and company_name columns

LeadCompanyColumnRunner (Order 40) idempotently adds: - lead_markets.include_company (BOOLEAN, nullable) — tracks whether a market requires company name on le...

Kamo·4mo ago
FeatureSecurityService

Expose includeCompany in intake-config and market-config responses

Both **************** and **************** now include the includeCompany flag so the frontend knows whether to show the company name field on lead creation.

Kamo·4mo ago
Featurekamo-shared-library

Add includeCompany to LeadMarket and companyName to Lead

- LeadMarket entity gets include_company (Boolean, nullable) - Lead entity gets company_name (String, max 50, nullable) - LeadMarketDTO, CreateLeadMarketRequest...

Kamo·4mo ago
Featurekamo-internal

Show sales type path in Add Lead subtitle

Append the market's Sales Type and Sub-Type to the "Adding to" line so the form mirrors the labels used in the Edit Market popup at **************** Renders as ...

kamo·4mo ago
Featurekamo-internal

Unified PhoneSdk supporting RingCentral + sip.js (FreePBX)

The softphone hook used to instantiate ringcentral-web-phone unconditionally, which threw on any FreePBX credential shape because that SDK is hard-coded to Ring...

kamo·4mo ago
FeatureVOIPService

WSS-aware SIP credentials for browser softphones

The /api/voip/sip/credentials endpoint now returns credentials a browser-side SIP stack can actually use: WSS transport, public domain, and a wsServers URL. - ...

Kamo·4mo ago
FeatureKlusterServices

Add WSS WebRTC transport for browser softphones

Asterisk's chan_pjsip now binds a plain WebSocket transport on 0.0.0.0:8089 and Traefik terminates TLS at **************** (port 443) so kamo-internal can regis...

Kamo·4mo ago
FeatureSecurityService

Add /names endpoint returning id→name for all members regardless of state

The by-department endpoint filters to active TeamMembers only, but extension assignments may reference base Members or inactive members. Use /names for ID→name ...

Kamo·4mo ago
Featurekamo-internal

Single-lead Add Lead form at /leads/new

Refactor Add Lead from an in-page multi-tab pane into a dedicated route at /leads/new so it can be linked directly. The current market is passed through as ?mar...

kamo·4mo ago
FeatureSecurityService

Add **************** endpoint

Returns salesType, subType, and customForms for a market by marketId so the Add Lead form can render sub-type fields and intake custom forms without first creat...

Kamo·4mo ago
Featurekamo-shared-library

Add isDisplayOnIntake to create/update request DTOs

Kamo·4mo ago
Featurekamo-shared-library

Expose isDisplayOnIntake in FormFieldDTO

Kamo·4mo ago
Featurekamo-shared-library

Add IS_DISPLAY_ON_INTAKE column to FormField entity

Kamo·4mo ago
Featurekamo-internal

Persist active mailbox in URL query params

Switching mailboxes now updates the URL (?mailboxType, ?mailboxId, ?mailbox) so refreshing the browser restores the same mailbox. MessageBrowser reads window.lo...

kamo·4mo ago
Featurekamo-marketing

Add Flowroute to integrations hub page

Kamo·4mo ago
Featurekamo-marketing

Add Flowroute to INTEGRATED WITH banner

Kamo·4mo ago
Featurekamo-internal

Show accurate provider connection status from isConnected field

Replaces the old logic that showed "Connected" for any provider with no sync error (including brand-new providers that were never tested). New three-state badg...

kamo·4mo ago
FeatureVOIPService

Persist connection test result to isConnected field

- test() endpoint saves isConnected=true/false to DB after every health check - update() resets isConnected to null when configJson changes (credentials may h...

Kamo·4mo ago
Featurekamo-shared-library

Add isConnected field to VoipProviderInstance

Nullable Boolean: null = never tested, true = last test passed, false = failed. Requires KamoInitializerService schema migration to add IS_CONNECTED column.

Kamo·4mo ago
Featurekamo-marketing

Show active offer banner with live millisecond countdown

Fetches the active promotion server-side on the home page and renders a HeroOfferBanner between the subheadline and the free-forever callout. The banner shows t...

Kamo·4mo ago
Featurekamo-internal

Wire Available/Unavailable switch to backend and fix OFFLINE presence bug

- Rename Paused/Active chip to Available/Unavailable in NavTop - Fetch initial availability on mount and persist toggles via new me/availability API - Add isAva...

kamo·4mo ago
FeatureInitializerService

Backfill is_available = TRUE for existing members

Kamo·4mo ago
Featurekamo-shared-library

Add isAvailable field for member availability toggle

Kamo·4mo ago
Featurekamo-marketing

Live unread badge + bounce on new agent message

- Keeps LiveSupportPanel mounted offscreen while the widget is minimized (only when a support session exists) so the STOMP subscription stays alive and onUn...

Kamo·4mo ago
FeatureMediaService

Broadcast pending count + unread on agent read & visitor send

- **************** now delegates to **************** so the count reflects sessions with unread visitor messages and decrements when the agent calls markA...

Kamo·4mo ago
Featurekamo-shared-library

Unread-based count + lookup-by-session helper

Adds **************** so the navtop SupportButton badge can count support tickets that actually need attention (have unread visitor messages) instead of just PR...

Kamo·4mo ago
April 25, 2026
FeatureKlusterServices

Add media to subdomain cert provisioning list

Kamo·4mo ago
Featurekamo-internal

Add media subdomain to required DNS aliases

kamo·4mo ago
Featurekamo-internal

Add Location column to ticket datagrid

Reads **************** straight off the SupportTicketDTO (now snapshot on the ticket entity at creation time — no extra round trip). Renders flag + city/region/...

kamo·4mo ago
Featurekamo-shared-library

Snapshot visitor geo on ticket entity

Adds VISITOR_IP_ADDRESS, VISITOR_COUNTRY_CODE, VISITOR_COUNTRY_NAME, VISITOR_CITY, VISITOR_SUBDIVISION columns. Captured at ticket creation so the list/detail e...

Kamo·4mo ago
FeatureMediaService

Add /ws/public-chat-native plain WebSocket endpoint alongside SockJS

Registers a second STOMP endpoint without SockJS at /ws/public-chat-native so that the frontend can connect with a native WebSocket (brokerURL) without needing ...

Kamo·4mo ago
Featurekamo-internal

Per-ticket unread badge + 'New messages only' filter

- Ticket list shows a chat-bubble badge with the unread count next to ticket# whenever the session has messages newer than the agent's last viewed message. ...

kamo·4mo ago
FeatureMediaService

Broadcast unread counts to agent on visitor message

After a visitor sends a support message, push the latest unread-counts payload to **************** so the agent's ticket-list badge and navtop counter update in...

Kamo·4mo ago
Featurekamo-shared-library

Include SUPPORT_TICKET sessions in unread membership query

findChatMembershipsByMemberId now returns memberships for both CHAT and SUPPORT_TICKET session types, so the existing per-member unread-count infrastructure (ge...

Kamo·4mo ago
FeatureKlusterServices

Production fail2ban with PJSIP jails and persistent state

- Add fail2ban-configmap.yaml with [asterisk] and [freepbx-web] jails, incremental ban escalation (1h→24h→30d ceiling), LAN ignoreip, and a custom asterisk-...

Kamo·4mo ago
Featurekamo-shared-library

Add resetHasAttachmentsForFolder query to ConversationRepository

Allows sync to reset stale has_attachments flags before re-indexing so corrected MIME detection can rebuild the field from actual attachment data.

Kamo·4mo ago
FeatureKlusterServices

Integrate Coqui TTS with norman voice (VCTK p267)

- Deploy coqui-tts server (VCTK VITS model, CPU-only) as ClusterIP service on port 5002 with model cache at /var/lib/coqui-tts on k1m1 - Inject coqui_tts.agi ...

Kamo·4mo 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