KamoCRM

Live Change Log

Every feature, fix and improvement, posted as it ships. Nothing is held back for a launch.

17,374
Total Changes
5,891
Features
5,258
Fixes
30
Projects
Filter by project
All Projects17,374AIService242APIService174BillingService157ConversionService110DaemonService137DocsService223ESigService91EmailService568InitializerService329KBService151KlusterServices738MCPGatewayService235MediaService592RAGService79SecurityService1,822TranslateService62VOIPService248VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,321kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,631kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore773Docs3,252Feature5,891Fix5,258Other993Performance165Refactor278Revert23Style42Test159Upgrade1
November 25, 2025
Fixkamo-internal

Fix logo display in tab labels - use img tag in label instead of icon prop

- Changed from using Tab icon prop to embedding logo directly in label using Box with img tag - Added console logging to debug logo fetching and URL generation ...

snadjafinia·11mo ago
Featurekamo-internal

Add organization logos to Profile and Membership & Permissions tabs

- Fetch security provider organization logo and display next to Profile tab - Fetch current organization logo and display next to Membership & Permissions tab -...

snadjafinia·11mo ago
Fixkamo-internal

Increase kubectl rollout timeout from 300s to 900s

- Increased kubectl rollout status timeout to 900 seconds (15 minutes) for both k1m1 and k2m1 deployments - This matches the increased progressDeadlineSeconds o...

snadjafinia·11mo ago
Fixkamo-internal

Increase deployment progressDeadlineSeconds from 60s to 600s

- Increased progressDeadlineSeconds to 600 seconds (10 minutes) to allow Next.js app sufficient time to build and start - Previous 60 second timeout was too sho...

snadjafinia·11mo ago
FixSecurityService

Handle ISO date format and improve avatarId type parsing

- Added support for ISO date format (YYYY-MM-DD) in addition to M/d/yyyy - Improved avatarId parsing to handle Number types (Double, BigDecimal, etc.) from JSON...

snadjafinia·11mo ago
FixSecurityService

Add better error handling and logging for user/member save operations

- Added try-catch around user save operation with detailed error logging - Added try-catch around member save operation with detailed error logging - Improved d...

snadjafinia·11mo ago
FixSecurityService

Improve avatarId parsing to handle string, integer, and long types

- Added support for parsing avatarId from String type - Better error handling for invalid avatarId formats - Added logging for avatar assignment and errors

snadjafinia·11mo ago
Fixkamo-internal

Improve error handling and logging for member profile updates

- Added detailed logging to API route for PUT requests - Improved error response handling to include actual error messages - Fixed avatarId type conversion (str...

snadjafinia·11mo ago
FixSecurityService

Add detailed logging to updateMemberProfile for debugging

- Added logging at start of updateMemberProfile method - Added logging before and after saving user and member - Improved error response to include error detail...

snadjafinia·11mo ago
Fixkamo-internal

Improve error handling and refresh profile data after save

- Added detailed error messages when profile save fails - Profile data is now refreshed from server after successful save - Better error logging for debugging

snadjafinia·11mo ago
FixSecurityService

Add support for updating user name fields and dateOfBirth in member profile

- Added UserRepository to MemberController - Updated updateMemberProfile to handle namePrefix, nameFirst, nameMiddle, nameLast, nameSuffix, nameFirstAKA, nameLa...

snadjafinia·11mo ago
Fixkamo-internal

Remove URL input for backgrounds, improve upload error handling, fix avatar persistence

- Removed URL input field for backgrounds - only uploads via popup are allowed - Improved error handling for background uploads with detailed error messages - F...

snadjafinia·11mo ago
Fixkamo-internal

Resolve lint errors in ProfileTab and MemberHeader

- Added Button import to MemberHeader - Fixed newAvatar scope issue in handleUploadPhoto and handleCreateAvatar Creator - Stored avatarIdToRefresh in outer scop...

snadjafinia·11mo ago
Featurekamo-internal

Add Manage Backgrounds button in MemberHeader

- Added handleManageBackgroundsClick prop to MemberHeader - Added Manage Backgrounds button next to URL input when custom background is enabled - BackgroundMana...

snadjafinia·11mo ago
FeatureSecurityService

Store avatar hash and extension in *** session data

- Added updateSession method to KSessionService for updating session fields - Updated setActiveAvatar to store userAvatarHash and userAvatarExtension in session...

snadjafinia·11mo ago
Fixkamo-internal

Refresh profile data after setting avatar and ensure proper activation

- handleSelectAvatar now sets avatar as active via API and refreshes profile data - handleUploadPhoto and handleCreateAvatar Creator now update member and refre...

snadjafinia·11mo ago
Fixkamo-internal

Convert null to undefined for avatarSrc type compatibility

- fetchMemberAvatar returns string | null but avatarSrc expects string | undefined - Use nullish coalescing operator to convert null to undefined

snadjafinia·11mo ago
Fixkamo-internal

Add .js extension to dynamic imports for node16 module resolution

- TypeScript with node16 moduleResolution requires explicit file extensions - Changed relative imports to include .js extension

snadjafinia·11mo ago
Fixkamo-internal

Use relative paths for dynamic imports of avatarUtils

- Changed dynamic imports from @/app/lib/avatarUtils to relative paths - Fixes TypeScript module resolution error during build

snadjafinia·11mo ago
Fixkamo-internal

Fix async/await syntax error in HexHeadGroup useEffect

- Wrapped Promise.all in async function to fix build error - useEffect callbacks cannot be async directly

snadjafinia·11mo ago
Fixkamo-internal

Update avatarUtils to use URLs directly from member profile

- Backend now includes avatar URLs in member profile response - Removed unnecessary second API call to /api/security/avatars/{id} - More efficient and works cor...

snadjafinia·11mo ago
FeatureSecurityService

Include avatar URLs in member profile response

- Added helper methods to generate avatar URLs (getThemeDomain, getPublicBucketName, generateFileHash, getPublicBucketUrl, generateAvatarUrl) - Updated getMembe...

snadjafinia·11mo ago
Featurekamo-internal

Add avatar fallback logic to chat components and member list

- Created avatarUtils.ts with utility functions for avatar fallback (member -> user -> initials) - Updated HexHeadGroup to fetch and display avatars with fallba...

snadjafinia·11mo ago
Otherkamo-internal

Fix duplicate React import causing build error

snadjafinia·11mo ago
Otherkamo-internal

Fix Grid component API usage to match MUI v7 Grid API

snadjafinia·11mo ago
Featurekamo-internal

Update Create Avatar layout to match kamo-register design

- Reorganize Create Avatar tab with top row for quick settings (Style, Seed) - Split bottom row into two columns: Preview (left) and Advanced Settings (right) -...

snadjafinia·11mo ago
Refactorkamo-internal

Switch back to MuiAvatar components for avatar display

- Replace img tags with MuiAvatar components - Maintains all existing functionality (error handling, loading callbacks) - Cleaner code using Material-UI compone...

snadjafinia·11mo ago
FixSecurityService

Use correct bucket and object path structure for MinIO uploads

- Change bucket name from domain-based to 'public' bucket - Include domain path (e.g., kamocrm-com) as part of object name, not bucket name - Fix object path st...

snadjafinia·11mo ago
FixSecurityService

Properly handle MinIO upload failures for avatars

- Remove silent exception swallowing in Avatar Creator avatar creation - Add proper error handling and rollback for failed uploads - Delete database record if f...

snadjafinia·11mo ago
RefactorSecurityService

Remove ID-based fallback code, use only hash-based naming

- Remove all try-catch fallback logic for missing fileHash column - Remove ID-based file naming fallbacks - Code now exclusively uses hash-based file storage - ...

snadjafinia·11mo ago
FixSecurityService

Handle missing fileHash column gracefully

- Add try-catch around fileHash access to handle missing database column - Fall back to ID-based file naming if fileHash column doesn't exist yet - Allows code ...

snadjafinia·11mo ago
Fixkamo-internal

Replace MuiAvatar with img tag to properly display avatar images

- Use native img tag instead of MuiAvatar component for better image rendering - Wrap img in Box container with proper styling for circular display - Maintains ...

snadjafinia·11mo ago
FeatureSecurityService

Implement hash-based file storage for avatars

- Generate SHA-256 hash from avatar ID after persistence - Store hash in database fileHash field - Upload files to MinIO using hash-based naming: {hash}.{fileEx...

snadjafinia·11mo ago
Featurekamo-shared-library

Add fileHash field to Avatar entity for secure file storage

- Add fileHash column to store SHA-256 hash of avatar ID - Hash is used for MinIO file naming to prevent enumeration attacks - Format: {hash}.{fileExtension} in...

snadjafinia·11mo ago
Fixkamo-internal

Avatar URL generation and display issues

- Add X-Forwarded-Host header forwarding in API proxy so backend can generate correct theme domain URLs - Add comprehensive logging for avatar upload and fetch ...

snadjafinia·11mo ago
Fixkamo-internal

Improve avatar management UI and functionality

- Fix avatar display in Select Avatar popup to show images for all avatars (generate SVG client-side when URL missing) - Fix Upload Photo functionality with imp...

snadjafinia·11mo ago

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing