KamoCRM

Live Change Log

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

15,120
Total Changes
5,169
Features
4,935
Fixes
30
Projects
Filter by project
All Projects15,120AIService197APIService161BillingService143ConversionService107DaemonService129DocsService215ESigService88EmailService518InitializerService318KBService105KlusterServices697MCPGatewayService85MediaService546RAGService71SecurityService1,658TranslateService55VOIPService205VectorService11kamo-apps25kamo-asterisk-support24kamo-capcha17kamo-capcha-widget4kamo-internal6,937kamo-login330kamo-marketing625kamo-nowww20kamo-register213kamo-shared-library1,455kamo-signer-monorepo53kamolos108
Filter by type
All TypesBuild11CI523Chore738Docs2,167Feature5,169Fix4,935Other986Performance157Refactor274Revert23Style42Test94Upgrade1
November 25, 2025
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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo ago
FeatureSecurityService

Include avatar URLs in member profile response

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

snadjafinia·10mo 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·10mo ago
Otherkamo-internal

Fix duplicate React import causing build error

snadjafinia·10mo ago
Otherkamo-internal

Fix Grid component API usage to match MUI v7 Grid API

snadjafinia·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo 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·10mo ago
FixSecurityService

Ensure theme domain URL includes https:// protocol

snadjafinia·10mo ago
FixSecurityService

Remove transformAvatarUrl - use URLs directly from backend

snadjafinia·10mo 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