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
May 15, 2026
Featurekamo-internal

Employment & Income section UI

Replaces the Coming-Soon placeholder for the employment route with a full URLA Section 1d-1g editor. Per-borrower chip selector mirrors the declarations pattern...

kamo·4mo ago
Featurekamo-internal

URLA 2021 mortgage application UI

Adds the new /applications route group, the typed mortgageAppsApi client that talks to SecurityService /api/security/mortgage-apps, full TS types mirroring the ...

kamo·4mo ago
May 12, 2026
Fixkamo-internal

Route NavTop picker through /me/language

The picker called the generic member PUT, which SystemUserGuard 403s for the System User signed into a sub-org. The catch logged silently, so the kamo-locale co...

kamo·4mo ago
Fixkamo-internal

Resolve subdomain-tenant org bucket to its own MinIO folder

getThemePath() was reducing the hostname to apex+tld (mainDomain.tld) for both the themed host AND the bucket folder. For subdomain tenants like gnosia.demo.kam...

kamo·4mo ago
Fixkamo-internal

Stop clipping dark-variant color inputs in ModernColorGroup

Color picker rows had a hardcoded 280px wrapper inside a 1fr 1fr grid with overflow:hidden, so the input was chopped on narrow columns. Use flex:1 + minWidth:0 ...

kamo·4mo ago
Fixkamo-internal

Treat thrown subscription stub as no-subscription, not error

The legacy getCurrentSubscription stub throws by design so callers fall back to the ungated path. StatsManager was surfacing the throw as "Could not load subscr...

kamo·4mo ago
Fixkamo-internal

Return empty meters instead of null from getCurrentUsage

StatsManager rendered <UsageMeters usage={null}> when the legacy stub resolved to null, crashing on usage.meters. Return { meters: [] } so the component takes t...

kamo·4mo ago
Fixkamo-internal

Gate My Account slide-out section on CONFIGURE_SYSTEM

Hide the "My Account" menu from members who lack CONFIGURE_SYSTEM so they don't see links (Stats & Costs, Apps & Features, Branch Types, Automation Streams) tha...

kamo·4mo ago
Otherkamo-internal

Revert "fix(account-settings): auto-route child-org owners to their permitted org"

This reverts commit ****************

kamo·4mo ago
Fixkamo-internal

Auto-route child-org owners to their permitted org

When /settings/account loads for a user who lacks CONFIGURE_SYSTEM on the current org, the previous behavior was a silent redirect to /settings — a dead-end for...

kamo·4mo ago
Fixkamo-internal

Use full FQDN, not eTLD+1, when fetching org by domain

registrableDomainFromAlias strips any multi-label subdomain (e.g. "gnosia.demo.kamocrm.com") down to its eTLD+1 ("kamocrm.com"). That was fine for the API base ...

kamo·4mo ago
Fixkamo-internal

Don't show global loading overlay for client-handled forms

NavigationInterceptor's submit listener treated any form whose form.action was truthy and method=get as a navigation, and called setLoading(true) on the global ...

kamo·4mo ago
May 11, 2026
Fixkamo-internal

Wrap toolbar and shrink search/date so New Event stays on-page

Toolbar packed too much fixed-width content into a single non-wrapping flex row; with the parent main area set to overflow: hidden, the right section (New Event...

kamo·4mo ago
Fixkamo-internal

Read *** from master after session refresh to avoid replica lag

The previous fix had /api/user-info call /api/security/session/refresh before reading Redis, but the read went through readKsemJsonFromRedisWithRetry which uses...

kamo·4mo ago
Fixkamo-internal

Track tab by name + refresh session before reading user-info

Two related navigation bugs that both manifest as "the wrong tab opens": 1. SettingsView tracked the active tab by *index*. childrenArray can recompose ...

kamo·4mo ago
Fixkamo-internal

Gate Docs tab on VIEW_DOCUMENTS / MANAGE_DOCS_SETTINGS

Mirrors the Email + Phone tab gates. A member without VIEW_DOCUMENTS (basic user-level access) and without MANAGE_DOCS_SETTINGS (admin) no longer sees the Docs ...

kamo·4mo ago
Fixkamo-internal

Gate Email + Phone tabs on rights, gate VOIP config edit, periodic session refresh

Adds the missing right-gating so a basic Member without ACCESS_MAIL / ACCESS_VOIP can no longer see the Email & Mailbox or Phone Settings tabs on their own acco...

kamo·4mo ago
May 10, 2026
Fixkamo-internal

Align Type/Name/TTL fields by moving TTL hint to a tooltip

The TTL field rendered its 'use 1 hour if your registrar shows a dropdown' hint as a paragraph below the input. That column ended up taller than Type and Name, ...

kamo·4mo ago
Fixkamo-internal

SSL card stops claiming records are verified before they are

The SSL card had two states (installing / complete) so the "installing" copy ("All required records are verified, we're installing the certificate now") was sho...

kamo·4mo ago
Fixkamo-internal

Remove header gap, ungate subdomains, drop registrar picker

- Move DnsProvisioningPanel inside DnsSetupStudio so the empty px:4 pt:3 wrapper around it (which created a band of whitespace above the hero when the panel...

kamo·4mo ago
Featurekamo-internal

Unified DNS Setup Studio with inline help per record

Replaces the split DnsProgressView + AliasStatusTable + ManualDnsGuide trio with a single guided experience: each TXT/CNAME record now lives in one card alongsi...

kamo·4mo ago
Fixkamo-internal

Land on parent's /setup/dns after org create

The wizard previously redirected the creator to **************** right after POST /api/security/org returned. The new org's domain has no DNS yet, so the redire...

kamo·4mo ago
Chorekamo-internal

Retrigger build to pick up fully-translated dictionary

The deployed image ec1a3dad was built before kamo-translation-dictionary zh.json crossed from ~0.06% Chinese to 99.9% Chinese. The build step copies messages/ f...

kamo·4mo ago
May 9, 2026
Otherkamo-internal

Wire t() into remaining hardcoded UI strings across ~88 files

Replaces hardcoded English with next-intl t() calls in places the prior conversion missed: DataGrid headerName values (~238 across pipeline, account, leads, doc...

kamo·4mo ago
Featurekamo-internal

Render inline cid: images via the new EmailService endpoint

When a message exposes inline parts (each carrying a contentId), the email renderer now rewrites <img src="cid:..."> references at mount time to ***************...

kamo·4mo ago
Fixkamo-internal

Broken inline images, attachment downloads, and view-pane flicker

- Strip <img> with cid: src in the email sanitizer so embedded images don't render as a flickering broken-image icon, and hide images that fail at runtime v...

kamo·4mo ago
Chorekamo-internal

Trigger CI to regenerate translations

kamo·4mo ago
May 6, 2026
Otherkamo-internal

Fix doubly-namespaced t() calls in clubhouse member list

Calls were resolving to **************** instead of **************** — switch to use the properly-scoped tMember handle for searchPlaceholder, searchAriaLabel, ...

kamo·4mo ago
May 4, 2026
Chorekamo-internal

Trigger redeploy

kamo·4mo ago
Otherkamo-internal

Translate remaining UI strings outside main batches

NavInfo (placeholder name), NavTab (Print/Share buttons), NotImplemented (message), SecureIFrame (iframe title), useUserInfo HOCs (Loading/Please log in/permiss...

kamo·4mo ago
Otherkamo-internal

Translate POS6 (10 final files) — pos batch complete

97 strings across MarketCardGrid, MarketAgreementTemplates, MarketRentalAssets, MarketSubscriptionPlans, and 6 SubscriptionPlan* tabs (AddOns, Bundles, Details,...

kamo·4mo ago
Otherkamo-internal

Translate provider help (10 setup guides)

117 strings across BigCommerce, Ecwid, Magento, OpenCart, PrestaShop, Shift4Shop, Shopify, Squarespace, Wix, WooCommerce setup guides. Step text uses t.rich() w...

kamo·4mo ago
Otherkamo-internal

Translate POS4 ****************

74 strings. **************** **************** keys.

kamo·4mo ago
Otherkamo-internal

Translate POS3 ****************

92 strings. **************** **************** keys.

kamo·4mo ago
Otherkamo-internal

Translate MarketProducts + MarketCustomers

118 strings. **************** marketCustomers}.* keys with ICU plural patterns and refactored SUB_VIEWS/ATTR_TYPE_LABELS to hold translation keys instead of lit...

kamo·4mo ago
Otherkamo-internal

Translate MarketTaxShipping + MarketDiscounts

151 strings (78+73). **************** marketDiscounts}.* keys with ICU plural patterns for method/entry counts. DiscountTypeBadge refactored from helper into su...

kamo·4mo ago
Otherkamo-internal

Translate E5 (16 small files) — email batch complete

61 strings. **************** **************** **************** **************** signatureTemplateSelector}.* keys. All 27 email files now at 0 audit hits.

kamo·4mo ago
Chorekamo-internal

Trigger redeploy

kamo·4mo ago
Otherkamo-internal

Translate E4 ****************

62 strings. **************** **************** keys.

kamo·4mo ago
Otherkamo-internal

Translate E3 ****************

74 strings. **************** domainManager,caldavPersonal}.* keys.

kamo·4mo ago
Otherkamo-internal

Translate E2 ****************

92 strings. **************** **************** keys.

kamo·4mo ago
Otherkamo-internal

Translate EmailTemplateEdit (114 strings)

Largest file in the email batch. Refactored module-level legalTextOptions constant into buildLegalTextOptions(t) function for runtime translation. Inner EmailFr...

kamo·4mo ago
Otherkamo-internal

Translate P5 (6 medium tabs)

96 strings across VerticalSection, EngagementsTab, RetailFulfillmentTab, RetailCustomersTab, VendorsTab, SignupsTab. Uses t() with **************** ************...

kamo·4mo ago
Otherkamo-internal

Translate Commitments tab

34 strings. Uses t() with **************** keys.

kamo·4mo ago
Otherkamo-internal

Translate P3 (Applications+Dashboard) + P4

7 files. P3 partial — Commitments reverted (rate-limit kill mid-batch), Applications and Dashboard salvaged with 0 audit hits. P4 complete (ServiceRequests, Ret...

kamo·4mo ago
Otherkamo-internal

Translate WorkOrders + Procurement tabs

116 strings. Reused existing **************** procurementTab keys aggressively plus common.fields/actions/states.

kamo·4mo ago
Otherkamo-internal

Translate Bookings + Orders tabs

101 strings. Reused existing **************** keys plus common.* (status, dates, fields, actions).

kamo·4mo ago
Otherkamo-internal

Translate 5 essential settings managers

206 strings across DepartmentManager, JobTitleManager, LabelManager, SecurityRoleManager, SubdomainBranchesDialog. Uses t() with **************** **************...

kamo·4mo ago
Otherkamo-internal

Translate 6 security settings tabs

195 strings across APIManager, AccessBlockManager, OAuth2Manager, SuspiciousManager, SystemAccessLogsManager, SystemDebug. Uses t() with **************** access...

kamo·4mo ago
Otherkamo-internal

Translate 7 account settings components

130 strings across BranchSetupManager, DefaultRoleTemplatesSection, FeaturesManager, RelationshipManager, **************** **************** StatsManager. Uses t...

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