Live Change Log

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

17,992
Total Changes
4,652
Features
4,558
Fixes
32
Projects
Filter by project
All Projects17,992AIService112APIService138BillingService133ConversionService85DaemonService107DocsService189ESigService78EmailService386InitializerService303KBService74KlusterServices547MCPGatewayService43MediaService462RAGService61SecurityService1,530TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,602kamo-login319kamo-marketing588kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,328kamo-signer-monorepo50kamolos102
Filter by type
All TypesBuild24CI523Chore670Docs231Feature4,652Fix4,558Other6,781Performance136Refactor274Revert23Style48Test71Upgrade1
March 28, 2026
Fixkamo-meet

Use make build system and add .dockerignore for Meet Meet Docker build

Meet Meet uses make/webpack, not npm run build. Added --legacy-peer-deps for peer dependency conflicts, and .dockerignore to exclude node_modules from build con...

Kamo·5mo ago
Fixkamo-internal

Make visibility checkboxes and Train AI toggle independent controls

Visibility (Members, Team Members, Public) controls who can access the article in the KB UI. Train AI is a separate toggle for RAG indexing, not a parent of the...

kamo·5mo ago
FixAPIService

Preserve upstream X-Forwarded-Host instead of overwriting with own Host

When an upstream proxy (Next.js) sets X-Forwarded-Host to the browser's original host, APIService now preserves it instead of overwriting with its own Host head...

Kamo·5mo ago
Fixkamo-internal

Use internal K8s URL for API routing to fix avatar upload for non-KamoCRM orgs

The API proxy was computing external URLs (https://api.{domain}) for every org, which only resolved for KamoCRM. Now uses API_SERVICE_URL env var for direct int...

kamo·5mo ago
Fixkamo-internal

Re-fetch notes after create/update to show decrypted content in preview

The backend returns encrypted content/contentPlain in POST/PUT responses, causing NoteCard previews to display ciphertext until page refresh. Now re-fetches via...

kamo·5mo ago
Fixkamo-internal

Disable all auto-link behaviors in KB editor to prevent paste-as-hyperlink bug

The linkExtension singleton from @lexkit/editor retains internal paste handler state across component remounts. Disabling autoLinkUrls, autoLinkText, and linkSe...

kamo·5mo ago
Fixkamo-internal

Prevent KB editor link extension state leaking between article creates

Move Lexical extensions from module-level singletons into a factory function called via useMemo per component mount, so each new article gets fresh extension in...

kamo·5mo ago
March 27, 2026
Fixkamo-internal

Accept large CockroachDB IDs in org Zod schema

The org ID from unique_rowid() exceeds JS MAX_SAFE_INTEGER, causing z.coerce.number().int() to fail with "too_big". Now accepts number, bigint, or string to han...

kamo·5mo ago
Fixkamo-internal

Accept UUID strings for feature IDs in org Zod schema

The OrgFeature schema required id to be a coercible integer, but the backend returns UUIDs. This caused a ZodError on every layout fetch, falling back to the ha...

kamo·5mo ago
Fixkamo-internal

Always refresh org context after any app toggle, not just completed-stage

POS and other non-completed apps also affect the UI (e.g. Pipeline in NavPri). The stage check was preventing the refresh for these apps.

kamo·5mo ago
Fixkamo-internal

Update all fallback feature lists and gate Pipeline/Chat/LeadStatus

Root cause: layout.tsx and org API route had hardcoded fallback feature lists with only 6 old apps (missing VOIP, AI_SUPPORT, SUPPORT, KB, NOTES, DOCS). When th...

kamo·5mo ago
FixSecurityService

Auto-provision completed-stage app features in org domain endpoint

Moves auto-provisioning from the FeatureController (only hit from the apps settings page) to the SecurityController org domain endpoint (hit on every page load ...

Kamo·5mo ago
FixSecurityService

Auto-provision missing completed-stage app features for existing orgs

When listing features, the controller now checks for missing OrgFeature rows for COMPLETED-stage apps and creates them. This ensures orgs created before new app...

Kamo·5mo ago
FixInitializerService

Auto-enable all completed-stage apps for new orgs instead of hardcoded list

Replaces hardcoded feature list (which had duplicates and deprecated types) with a loop over all COMPLETED-stage, non-core, non-deprecated ServiceTypes. New app...

Kamo·5mo ago
FixSecurityService

Catch all exceptions in FeatureController enable/disable endpoints

Prevents uncaught RuntimeExceptions from becoming opaque 500 errors. Now returns structured error messages for any failure.

Kamo·5mo ago
Fixkamo-internal

Show CC and BCC in sent item email previews

Add bcc field to EmailMessage type. ThreadDetailView now displays BCC recipients when present (typically in sent folder copies).

kamo·5mo ago
FixEmailService

Extract BCC recipients from IMAP messages

BCC header is retained on sent folder copies. Now extracted alongside To and CC so the frontend can display it in sent item previews.

Kamo·5mo ago
Fixkamo-internal

Email nav icon now links to /messages instead of legacy /email iframe

The /email page embeds mail.kamocrm.com in an iframe (legacy webmail). The actual built-in email client is at /messages. Updated NavPri to point to the correct ...

kamo·5mo ago
Fixkamo-internal

Surface actual backend error message on feature toggle failure

Enable/disable now parses the error response body and shows the real error in the toast instead of a generic message. Helps diagnose what's actually failing on ...

kamo·5mo ago
Fixkamo-internal

Restore org context refresh after toggling completed-stage apps

Without router.refresh(), the org context stayed stale after enabling apps — NavPri, homepage, and settings never showed the newly enabled features. Now refresh...

kamo·5mo ago
Fixkamo-internal

Gate all feature cards and settings sections by org feature flags

Homepage: Documents card now uses isDocs (not deprecated isStorage/isDocManager), Calendar gated by isEmail, Notes gated by isNotes. Settings page: Commerce se...

kamo·5mo ago
March 26, 2026
Fixkamo-internal

Remove router.refresh() from feature toggle to prevent page reset

router.refresh() was causing the page to re-render and reset the active tab back to "Available" on every toggle. The cache invalidation and loadFeatures() call ...

kamo·5mo ago
FixSecurityService

Prevent duplicate apps in features list by excluding all existing types

The available list was only excluding features with enabled=true, so a disabled feature (isActive=false) appeared in both the features array AND the available a...

Kamo·5mo ago
Fixkamo-internal

Invalidate org cache after feature toggle to reflect changes immediately

The org API route caches organization data in Redis for 24h. After enabling or disabling an app, the stale cache caused feature flags to remain false, making se...

kamo·5mo ago
Fixkamo-internal

Gate all nav links and settings pages by org feature flags

NavTop: hide AI chat, softphone, SMS, credits, notes, calendar, and contacts links when their corresponding app is disabled. Settings pages for CRM, Email, Phon...

kamo·5mo ago
Fixkamo-internal

Sync settings nav with actual tab definitions across all pages

Add missing Mailboxes and CalDav/CardDav entries to email section in both the settings main page and the NavPri slide-out drawer. Fix Account section card linki...

kamo·5mo ago
Fixkamo-internal

Provider save field name and mailboxes tab member list endpoint

Provider save for non-configurable types now sends correct field name. Mailboxes tab now uses **************** endpoint which actually exists, instead of non-ex...

kamo·5mo ago
FixEmailService

Provider GET returns both type and providerType, PUT accepts both

GET /api/email/provider now includes both 'type' and 'providerType' fields in the response for frontend compatibility. PUT now accepts 'type' as a fallback when...

Kamo·5mo ago
Fixkamo-login

Resolve Remember Me not persisting username across login sessions

The re*** callback captured a stale performLogin closure where rememberMe was always false (initial state). Used a ref to read the live checkbox value. Also fix...

Kamo·5mo ago
Fixkamo-internal

Provider save for non-configurable types and mailbox member email mapping

**************** selections now immediately persist via saveProvider API instead of only updating local state. Mailboxes tab now correctly extracts emailAddress...

kamo·5mo ago
Fixkamo-internal

Fix PRE_TICKET DB constraint + redesign creation form

- Fixed CHECK constraint on support_ticket.status to allow ordinal 14 - Redesigned TicketCreationForm with modern card-based UI: - "How can we help?" landing ...

kamo·5mo ago
Fixkamo-internal

Extract topics array from { topics: [...] } API response

The GET /api/support/topics endpoint returns { topics: [...] }, not a raw array. All consumers now extract data.topics before using the array.

kamo·5mo 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