KamoCRM

Live Change Log

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

17,659
Total Changes
6,077
Features
5,341
Fixes
30
Projects
Filter by project
All Projects17,659AIService260APIService174BillingService158ConversionService110DaemonService138DocsService223ESigService91EmailService587InitializerService329KBService151KlusterServices744MCPGatewayService261MediaService604RAGService79SecurityService1,874TranslateService62VOIPService250VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,412kamo-login340kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,681kamo-signer-monorepo57kamolos114
Filter by type
All TypesBuild16CI523Chore776Docs3,257Feature6,077Fix5,341Other998Performance165Refactor278Revert23Style42Test162Upgrade1
November 26, 2025
OtherSecurityService

Clear session data before deleting key to ensure session is unusable

- Set session data to empty JSON ({}) before deleting the key - Ensures session is unusable even if deletion fails or there's replication lag - Add error handli...

snadjafinia·11mo ago
OtherSecurityService

Improve logout cookie clearing - clear cookies across all domain/path combinations

- Clear cookies with base domain (e.g., .kamocrm.com) to cover all subdomains - Clear cookies for current hostname without domain attribute - Clear cookies unre...

snadjafinia·11mo ago
Otherkamo-internal

Clear existing *** cookies before setting new one during validate

- Clear all possible *** cookie variations before setting new cookie - Prevents reusing old session cookies from previous logins - Ensures validate always uses ...

snadjafinia·11mo ago
Otherkamo-login

Xác thực

snadjafinia·11mo ago
Otherkamo-login

Xoá cookie *** đã có trước khi đặt cookie mới trong khi đăng nhập

- Xoá tất cả các biến thể cookie *** ( Miền cơ bản, tên máy, không miền) - Ngăn chặn việc sử dụng lại cookie phiên chạy cũ từ đăng nhập trước - Bảo đảm đăng nhậ...

snadjafinia·11mo ago
Otherkamo-login

Việc đăng xuất sửa: gọi Bảo mậtService logout enpoint đến phiên chạy hoàn toàn không hợp lệ

- Gọi bảo mậtService / api/ Security/logout cho đúng phiên chạy trên hậu phương Java - Bảo đảm phiên chạy này bị xoá, thẻ CSRF bị gỡ bỏ, và phiên chạy được làm ...

snadjafinia·11mo ago
Otherkamo-internal

Fix logout: call SecurityService logout endpoint to fully invalidate session

- Call SecurityService /api/security/logout to properly invalidate session on Java backend - This ensures session is deleted, CSRF tokens are removed, and sessi...

snadjafinia·11mo ago
Otherkamo-login

Sửa dòng chảy đăng xuất: rõ ràng cookie nhưng vẫn thử tự động-login

- Bỏ qua logic tự động (tự động xin lỗi) - Thêm các tham số rõ ràng để đăng xuất chuyển hướng - Trang đăng nhập làm sạch cookie khi rõ ràng cookies=true, sau đó...

snadjafinia·11mo ago
Otherkamo-login

Sửa lỗi đăng xuất:

- Thêm bỏ qua tham số truy vấn tự động để chuyển hướng đăng xuất - Bỏ qua tự động-login kiểm tra khi bỏ qua tự độngLogin = True có mặt - Việc xoá cookie đã tăng...

snadjafinia·11mo ago
Otherkamo-internal

Replace PersonIcon with user avatar in NavTop My Account link

- Fetch member avatar using fetchMemberAvatar utility - Display Avatar component with user's image or initials fallback - Matches design pattern used in other c...

snadjafinia·11mo ago
Otherkamo-shared-library

Thêm trường hình nhân vào thực thể Avatar để kiểm tra kiểu đơn giản

- Thêm cột TYPE để lưu trữ 'photo' hay 'Avatar Creation' - Gỡ bỏ những người tạo ra bản sao đã xung đột với Lombok - Đặt kiểu Avatar khi tạo ra các hình nhân ki...

snadjafinia·11mo ago
OtherSecurityService

Dùng trường kiểu Avatar thay cho phát hiện ủy nhiệm phức tạp

- Kiểm tra trực tiếp trường hình nhân cho đơn giản kiểm tra - Đặt kiểu Avatar khi tạo ra hình nhân mới - Cách tiếp cận đơn giản hơn nhiều

snadjafinia·11mo ago
Otherkamo-shared-library

Thêm trường hình nhân vào thực thể Avatar để kiểm tra kiểu đơn giản

- Thêm cột TYPE để lưu trữ 'photo' hay 'Avatar Creation' - Đặt tự động các máy xây dựng - Tránh cần để ví dụ về ngân phiếu và vấn đề ủy nhiệm

snadjafinia·11mo ago
OtherSecurityService

Dùng bộ lọc đơn giản để kiểm tra xem Avatar là ảnh chụp hay Avatar

- Loại bỏ logic phát hiện ủy nhiệm phức tạp - Đơn giản chỉ cần lọc tìm ById kết quả để kiểm tra nếu đó là Avatar photo - Nếu không chụp ảnh, mặc định là Avatar ...

snadjafinia·11mo ago
OtherSecurityService

Thêm nhật ký chi tiết vào thế hệ URL Avatar để gỡ lỗi

- Bản ghi khi Avatar URL được tạo ra, những gì URL được tạo ra - Bản ghi khi Avatar mất tích hoặc URL là vô giá trị - Điều này sẽ giúp xác định tại sao Avatar k...

snadjafinia·11mo ago
Otherkamo-internal

Fix avatar not displaying on Profile page after refresh

- Ensure avatar URL from member profile is preserved when setting activeAvatar - Update profileData with avatar URL when avatar is loaded - Preserve URL in sync...

snadjafinia·11mo ago
Otherkamo-internal

Add detailed logging for avatar selection debugging

- Log full avatar object when handleSelectAvatar is called - Add validation for avatar.id before processing - Log API URL being called - Better error messages f...

snadjafinia·11mo ago
Otherkamo-internal

Fix TypeScript type error - handle null body in apiProxy

- Convert null to undefined for BodyInit type compatibility - Fixes: Type 'null' is not assignable to type 'BodyInit | undefined'

snadjafinia·11mo ago
Otherkamo-internal

Fix PUT request body handling for set-active endpoint

- Explicitly set body to undefined for PUT requests without body - Improve body handling in apiProxy to gracefully handle empty requests - Prevents body consump...

snadjafinia·11mo ago
Otherkamo-internal

Improve error handling for set-active avatar endpoint

- Forward actual backend error messages instead of generic message - Better error parsing in frontend (handle both JSON and text responses) - Enhanced logging t...

snadjafinia·11mo ago
Otherkamo-internal

Use static imports instead of dynamic imports for avatarUtils

- Replace dynamic imports with static imports at top of file - Avoids module resolution issues with TypeScript moduleResolution node16 - Functions are always ne...

snadjafinia·11mo ago
Otherkamo-internal

Fix path alias - use @/lib/avatarUtils instead of @/app/lib/avatarUtils

- @/ maps to project root, so @/lib/avatarUtils is correct path - @/app/lib/avatarUtils was incorrect (would look for app/app/lib/avatarUtils)

snadjafinia·11mo ago
Otherkamo-internal

Sửa nhập khẩu động - sử dụng bí danh đường dẫn@/app/lib/avatarluils cho độ phân giải web kế tiếp.js

- Thay đổi đường dẫn tương đối tới bí danh đường dẫn@/pp/lib/avatarUlic - Tiếp theo.js webpack không thể giải quyết mở rộng .js cho tập tin nhập khẩu động - Bí ...

snadjafinia·11mo ago
Otherkamo-internal

Fix TypeScript ESM dynamic imports - add .js extension required for node16/nodenext module resolution

- TypeScript with moduleResolution node16/nodenext requires explicit .js extensions in dynamic imports - TypeScript will resolve .js imports to .ts files at bui...

snadjafinia·11mo ago
Otherkamo-internal

Fix remaining .js extension in HexHeadGroup dynamic import

snadjafinia·11mo ago
Otherkamo-internal

Fix TypeScript module resolution - remove .js extension from dynamic imports

- Change dynamic imports from avatarUtils.js to avatarUtils (no extension) - Fixes build error: Module not found: Can't resolve '../../lib/avatarUtils.js' - Typ...

snadjafinia·11mo ago
OtherSecurityService

Add avatar URLs to members by-department endpoint with override mechanism

- Include avatar URL in each member response from **************** - Respect override mechanism: member avatar (if exists) → user avatar (default) - Frontend ...

snadjafinia·11mo ago
Otherkamo-internal

Fix avatar display with override mechanism support

- ProfileTab: Always show USER avatar (no override mechanism) - MembershipPermissionsTab: Always show MEMBER avatar (no override mechanism) - Site-wide displays...

snadjafinia·11mo ago
Otherkamo-internal

Add detailed logging to track avatar state during save

- Log current state (useDefaultUserAvatar, activeAvatar, avatarIdToSend) before save - Log API response after save (memberAvatar, avatar) - Log refreshed profil...

snadjafinia·11mo ago
November 25, 2025
Otherkamo-internal

Thêm nhật ký toàn diện cho việc tìm kiếm miền nhà cung cấp bảo mật

- Đăng nhập mạng lưới và tất cả ID tổ chức - Ghi lại chi tiết so sánh ID của org với SecurityOrgId - Đăng nhập các bước khai thác miền và xây dựng URL - Điều nà...

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