Live Change Log

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

17,856
Total Changes
4,574
Features
4,510
Fixes
32
Projects
Filter by project
All Projects17,856AIService110APIService138BillingService133ConversionService85DaemonService107DocsService189ESigService78EmailService347InitializerService299KBService74KlusterServices539MCPGatewayService43MediaService460RAGService61SecurityService1,518TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,550kamo-login318kamo-marketing580kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,320kamo-signer-monorepo50kamolos102
Filter by type
All TypesBuild24CI522Chore670Docs226Feature4,574Fix4,510Other6,781Performance136Refactor273Revert23Style48Test68Upgrade1
April 28, 2026
Refactorkamo-register

Drop language search filter on My Language step

The supported language list is short enough to scan visually; the search input added complexity without user value.

Kamo·4mo ago
Refactorkamo-internal

Split member APIs; show subs' target org; add billing-owner promote UI

billingApi splits members into accountMembers (canManageBilling, isAccountManager) and subscriptionMembers (isLicensee, canManageSubscription) under ***********...

kamo·4mo ago
RefactorBillingService

Subs target a sub-org; per-sub members split from account admins

Subscriptions now require targetOrganizationId on create — the (account, market, target_org) triple is the new uniqueness key. AccountBillingMemberService is sp...

Kamo·4mo ago
Refactorkamo-shared-library

Split account-level admins from per-sub members; subs gain target_org

Adds SubscriptionMember (per-subscription licensee + sub-manager flags) so an Account on the KamoCRM org can hold multiple subscriptions, each targeting a diffe...

Kamo·4mo ago
April 27, 2026
Refactorkamo-internal

Rename AccountBillingMember -> AccountMember; isGroupPlanManager -> isAccountManager

Type-level rename across the billing client and the PlansBillingTab: - AccountBillingMember type -> AccountMember - isGroupPlanManager flag -> isAccountManager ...

kamo·4mo ago
RefactorBillingService

Use Account.members via AccountMember; rename isGroupPlanManager -> isAccountManager

The Account is now the group, so all references to the old AccountBillingMember entity are pointed at the new generic **************** entity. The "group plan m...

Kamo·4mo ago
RefactorSecurityService

Drop users/masterAccountHolder, use Account.members + primaryMember

AccountController now reflects the Account-as-group model: - computeDisplayName / extractEmail / extractPhone resolve through the primaryMember (Member) inste...

Kamo·4mo ago
Refactorkamo-shared-library

Make Account the group; replace User-set with Member-set + AccountMember

The Account is now itself the "group" — there's no separate billing-group concept. Members (org-scoped) belong to the Account directly via the new AccountMember...

Kamo·4mo ago
Refactorkamo-internal

Rewrite billingApi client onto Account-based endpoints

billingApi now talks to **************** instead of the old /groups/{groupId} routes. Top-level types renamed: - BillingGroup -> AccountBilling - Bill...

kamo·4mo ago
RefactorBillingService

Rewrite BillingService onto Account-based entities

The BillingService is now Account-centric. Member-driven flows (e.g. "add a card", "subscribe to a plan") now go through an Account that auto-creates for the me...

Kamo·4mo ago
RefactorSecurityService

Move from BillingGroup to Account-based licenses

EntitlementService resolves member entitlements against AccountLicense records owned by the member's billing Account. The MemberEntitlements shape now exposes a...

Kamo·4mo ago
Refactorkamo-shared-library

Migrate from BillingGroup to Account as billing principal

Account is now the single Stripe customer principal. A Member needing to pay (e.g. for a subscription) auto-creates an Account; that Account then holds one or m...

Kamo·4mo ago
Refactorkamo-shared-library

Orient live records to Account address profile, snapshot historical addresses

Orient live commerce records to reference the Account profile's primary shipping/billing addresses, with snapshots taken only when records become historical (pl...

Kamo·4mo ago
Refactorkamo-shared-library

Switch Account.java to embeddables; add AccountAddress entity for shipping/billing lists

- Add AccountAddressType enum (SHIPPING, BILLING) - Add AccountAddress entity (account FK, type, label, EmbAddress, timestamps) - Add AccountAddressRepository -...

Kamo·4mo ago
April 26, 2026
Refactorkamo-internal

Ticket requestor presence via WebSocket only

kamo·4mo ago
RefactorMediaService

Requestor snapshot over STOMP, drop HTTP presence

Kamo·4mo ago
Refactorkamo-internal

Move Create Lead action into header, drop sticky bar

Replace the top-right Cancel button with the primary Create Lead action and remove the bottom sticky action bar entirely. Add a back IconButton to the left of t...

kamo·4mo ago
Refactorkamo-internal

Make Best Contact Time a free-text field

Replace the Morning/Afternoon/Evening dropdown on the Add Lead and Lead View edit forms with a plain text input so members can describe specific windows (e.g., ...

kamo·4mo ago
April 24, 2026
Refactorkamo-internal

Drop editor page header, rename General sub-tab

- Removes the back-arrow IconButton + shield icon + title + subtitle from the top of the security-model / master-model editor. The Cancel button in the stic...

kamo·4mo ago
RefactorInitializerService

Drop teamMemberPayFeesSetting from DataLoader

Master-model provisioner no longer passes the removed tri-state pay-fees setting when creating the master security model — the field is gone from ChildOrgSecuri...

Kamo·4mo ago
RefactorSecurityService

Drop teamMemberPayFeesSetting parameter

Mirrors the shared-library change — SecurityModelController, MasterModelController, and AppliedModelController no longer read/write teamMemberPayFeesSetting. Th...

Kamo·4mo ago
Refactorkamo-shared-library

Drop teamMemberPayFeesSetting

Employee self-pay fee policy is gone — the BillingGroup refactor handles billing per-group, not via the security model. Removes the teamMemberPayFeesSetting col...

Kamo·4mo ago
Refactorkamo-register

Drop My Profile tip banner + unify section spacing

All four My Profile sections now share the same vertical rhythm — 8px between each section's header and its field(s), 16px between sections. The Alert banner ex...

Kamo·4mo ago
Refactorkamo-register

Tidy My Profile layout + drop phone verification

Reorganize the My Profile step so all four sections share the same layout and title format. Order is now Legal Name, alias, e-mail, phone. - FormName: remove t...

Kamo·4mo ago
RefactorSecurityService

Drop SMS verification for the phone field on signup

The phone number collected during self-service registration is now a plain optional text field — no /register/phone/initiate, no SMS code, no /register/phone/ve...

Kamo·4mo ago
Refactorkamo-shared-library

Drop RegistrationPhoneCode entity + repository

Self-service registration no longer uses SMS-code verification for the phone field — the register form collects the phone number as plain text and stores it as-...

Kamo·4mo ago
April 23, 2026
RefactorSecurityService

Share PostAuth***Service between login and enter-as

Extract the post-authentication *** build (grant-all expansion, profile SQL, branch titles, createSession) into PostAuth***Service so enter-as uses the same cod...

Kamo·4mo ago
Refactorkamo-internal

Remove phone + security-questions pages

These were added to kamo-internal by mistake — collection of the phone number and security questions belongs in the registration flow in kamo-register, and has ...

kamo·4mo ago
April 22, 2026
April 21, 2026
RefactorSecurityService

Merge default template without wiping org folder

Full provision no longer deletes the org prefix before copy. Copy from public/default overwrites matching keys only; other objects under the org folder remain. ...

Kamo·4mo ago
April 19, 2026
April 18, 2026
Refactorkamo-internal

Compact editor header — remove large title/tabs, move actions to nav row

Removes the sticky header card (title, subtitle, Save/Cancel/Preview buttons, Edit/Preview tab bar) from EmailTemplateEdit to reclaim ~200px of vertical space a...

kamo·4mo ago
Refactorkamo-login

Redirect EMAIL_NOT_VERIFIED to register/resend-verification

Removes the inline EmailVerifyCard from the login page and all related state/callbacks. On EMAIL_NOT_VERIFIED, the user is now forwarded to **************** whe...

Kamo·4mo ago
Refactorkamo-shared-library

Remove eager feature-loading from getOrganizationByDomain

Features are an org-level concern unrelated to most callers of this method (e.g. registration, login domain resolution). Force-loading them via setFeatures() re...

Kamo·4mo ago
RefactorInitializerService

Tighten KamoCRMAgeReqUpdateRunner per review

- Restore Javadoc paragraph explaining @Order(10) rationale. - Test now references the UPDATE_SQL constant directly instead of duplicating the SQL string, so ...

Kamo·4mo ago
Refactorkamo-marketing

Honest marketing — align pages to actual platform capabilities

Full review of marketing pages against actual KamoCRM product capabilities. Removed fabricated claims about features not built today, and repositioned industry-...

Kamo·4mo ago
April 17, 2026
Refactorkamo-internal

Call BillingService directly via k8s DNS instead of through APIService

Next.js server-side proxy now calls BillingService at **************** directly, skipping the unnecessary hop through APIService. Uses BILLING_SERVICE_URL env v...

kamo·4mo ago
April 16, 2026
April 13, 2026
Refactorkamo-internal

Add memberType to user info, rename templateName to docDescription in template settings store

Add memberType field from Member entity discriminator column to the user-info API response and useUserInfo hook. Rename templateName to docDescription in templa...

kamo·5mo ago
April 12, 2026
Refactorkamo-internal

Migrate all imaging API routes from SecurityService to ConversionService/DocsService

Upload routes now call ConversionService directly via CONVERSION_SERVICE_URL: - POST /api/imaging/upload → /api/conversion/imaging/upload - POST /api/imaging/te...

kamo·5mo ago
RefactorSecurityService

Remove ImagingController and beans/imaging — moved to ConversionService and DocsService

Upload endpoints now live in ConversionService at /api/conversion/imaging/*. All management and download endpoints now live in DocsService at /api/docs/imaging/...

Kamo·5mo ago
RefactorDaemonService

Delegate thumbnail generation to ConversionService, remove PDFBox dependency

ThumbnailGenerationJob now POSTs the converted PDF to ConversionService **************** unzips the response, and stores each thumb_p{n}.png in MinIO. PDFBox re...

Kamo·5mo ago
RefactorSecurityService

Delegate thumbnail generation to ConversionService, remove PDFBox dependency

generateAndStoreThumbnails now POSTs the converted PDF to ConversionService **************** unzips the response, stores each thumb_p{n}.png in MinIO, and publi...

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