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
December 4, 2025
OtherKlusterServices

Use Dovecot 2.4 with proper configuration

- Use Alpine latest (has Dovecot 2.4) - Add dovecot_config_version = 2.4 as FIRST setting (required) - Fix Dovecot SQL user_query to include mail location - Ver...

snadjafinia·10mo ago
OtherKlusterServices

Add dict block as first setting for Dovecot config

snadjafinia·10mo ago
OtherKlusterServices

Add config version comment to Dovecot config

snadjafinia·10mo ago
OtherKlusterServices

WORKING SOLUTION: Alpine-based Dovecot with MySQL backend

- Use Alpine Linux base image with Dovecot installed from packages - Dovecot config created inline - no Docker image restrictions - Full control over configurat...

snadjafinia·10mo ago
OtherKlusterServices

Add initial accounts to postfix-accounts.cf for docker-mailserver

- docker-mailserver requires at least one account in postfix-accounts.cf - Added sage@, support@, sysadmin@kamocrm.com with hashed passwords - Password hash gen...

snadjafinia·10mo ago
OtherKlusterServices

Replace separate Postfix/Dovecot with docker-mailserver integrated solution

- Deploy docker-mailserver **************** - Integrated Postfix + Dovecot in single proven container - Configure MySQL backend for virtual mailboxes/domains/al...

snadjafinia·10mo ago
OtherKlusterServices

Try older Dovecot Alpine image to avoid strict config requirements

- Switch from dovecot/dovecot:latest to dovecot/dovecot:2.3.21-alpine - Older version may not have strict dovecot_config_version requirement - Keeps all databas...

snadjafinia·10mo ago
OtherKlusterServices

Dovecot config iteration - simplified further

- Removed problematic includes and dict blocks - Simplified to minimal configuration - Note: The official dovecot/dovecot image has strict config requirements

snadjafinia·10mo ago
OtherKlusterServices

Simplify Dovecot config - remove problematic version include

- Remove dovecot-version include that was causing errors - Use simpler configuration with just protocols and protocol includes - Restarted Roundcube pod to trig...

snadjafinia·10mo ago
OtherKlusterServices

Fix Dovecot version requirement and create roundcubemail database

- Dovecot: Add dovecot-version.conf.ext include (required as first setting) - MySQL Job: CREATE DATABASE roundcubemail before granting permissions - Fixes 'The ...

snadjafinia·10mo ago
OtherKlusterServices

Simplify Dovecot config and fix MySQL permissions job

- Dovecot: Use single complete dovecot.conf instead of conf.d fragments - Dovecot: Simplified configuration with minimal working setup - MySQL Job: Use root cre...

snadjafinia·10mo ago
OtherKlusterServices

Fix Dovecot configuration and add permissions job to CI/CD

- Dovecot: Move passdb/userdb config directly into 10-auth.conf - Dovecot: Remove problematic auth-sql.conf.ext include - CI/CD: Add mysql-permissions-job.yaml ...

snadjafinia·10mo ago
OtherKlusterServices

Fix Dovecot auth syntax and Roundcube database permissions

- Dovecot: Fix auth-sql.conf.ext syntax - passdb/userdb need section names - MySQL: Grant ALL PRIVILEGES on roundcubemail database to kamo user - Add mysql-perm...

snadjafinia·10mo ago
OtherKlusterServices

Fix Dovecot and Postfix configurations to resolve CrashLoopBackOff

- Dovecot: Use conf.d structure with official Dovecot image defaults - Dovecot: Split config into individual files (10-auth, 10-mail, 10-master, 10-ssl) - Postf...

snadjafinia·10mo ago
OtherKlusterServices

Trigger deployment after WireGuard fix

snadjafinia·10mo ago
OtherKlusterServices

Fix kubeconfig setup in CI/CD to use Tailscale IPs directly

- Replace sed commands with kubectl config set-cluster for reliable connection - Use 100.64.1.1 for K1M1 and 100.64.2.1 for K2M1 directly - Fixes 'dial tcp 100....

snadjafinia·10mo ago
OtherKlusterServices

Add complete mail server infrastructure with Postfix, Dovecot, Roundcube, and MySQL

- Deploy mail server (MySQL, Postfix, Dovecot, Roundcube) to K1M1 only - Configure HTTPS access via Traefik at https://mail.kamocrm.com - Set up multi-domain su...

snadjafinia·10mo ago
December 1, 2025
November 30, 2025
November 27, 2025
Otherkamo-login

RememberMe の値と型変換用のロギングを追加

- 文字列/boolean/number を扱うために RememberMe の型変換を追加します - ロジックを設定するクッキーをトレースするために詳細なロギングを追加します - ログメモ値と型をデバッグするクッキー設定の問題

snadjafinia·11mo ago
Otherkamo-login

USERNAMEとREMEMBER MEクッキー操作のための包括的なロギングを追加

- ページの読み込みにCookieの読み込みのための詳細なログを追加 - ログイン応答後にクッキーが設定されていることを確認するためにログを追加 - ログインAPIでSet-Cookieヘッダーのロギングを追加 - デバッグのためにページの読み込みにすべてのCookieをログオン

snadjafinia·11mo ago
November 26, 2025
Otherkamo-login

隠れたユーザー名フィールドを更新して、remount 用のフォームキーを使用する

- ログアウト後に強制的なリマウントにキーを追加 - すべてのユーザー名関連のフィールドがログアウト後に完全に新鮮であることを確認

snadjafinia·11mo ago
Otherkamo-login

ブラウザの自動充填を防ぐため、ログアウト後の強制フォーム再マウント

- ログアウト後にコンポーネントのリマウントを強制するformKeyの状態を追加します - フォームキーを含むTextFieldキーを変更する - フォームキーを含むモーション.divキーを変更 - ランダム化されたフィールド名と autocomplete=off と組み合わせて、ブラウザの自動充填を完全に防止 - ロ...

snadjafinia·11mo ago
Otherkamo-login

ブラウザの自動入力認識を防ぐためのランダム化フィールド名を使用する

- 各ページの読み込みのユーザー名フィールド名用のランダムサフィックスを生成する - ブラウザがページ負荷の1つと同じフィールドを認識しないようにする - 古いユーザー名オートフィルを完全に防ぐためにautocomplete=offとstate clearingと結合

snadjafinia·11mo ago
Otherkamo-login

ログアウト後の古いユーザー名の復元からブラウザのオートフィルを防ぐ

- ユーザー名フィールドの「ユーザー名」から「オフ」にオートコンプリートを変更 - フォームの自動補完を「オン」から「オフ」に変更する - ログアウトから来るときのユーザー名とパスワードの状態をクリア - ユーザーが戻ってクリックしたときに、ブラウザが以前のユーザー名の自動入力を防止 - ログアウト後に新しいログインフ...

snadjafinia·11mo ago
Otherkamo-login

ログアウト中にすべてのクッキーを不正に削除する

- kamo-loginのログアウトページ(client-side)上のすべてのCookieを削除 - kamo-login ログアウト API (server-side) のすべてのクッキーを削除します。 - ローカルストレージとセッションをクリア - すべてのドメイン/パスの組み合わせでクッキーを削除 - ログアウ...

snadjafinia·11mo ago
Otherkamo-internal

Delete ALL cookies indiscriminately during logout

- Delete all cookies on kamo-internal logout page (client-side) - Delete all cookies on kamo-internal logout API (server-side) - Clear localStorage and sessionS...

snadjafinia·11mo ago
Otherkamo-internal

Invalidate existing session before validating OTK

- Check for existing *** cookie in validate request - Clear and delete any existing session before validating OTK - Verify session data is not empty JSON (clear...

snadjafinia·11mo ago
OtherSecurityService

Invalidate existing session before creating new one during login

- Check for existing *** cookie in login request - Delete/invalidate existing session before creating new one - Prevents reusing old session cookies when loggin...

snadjafinia·11mo ago
Otherkamo-internal

Disable activity tracking and session extension during logout

- Add disableClientActivityTracker() function to stop activity tracking - Stop session monitor when logout is initiated - Prevent screen movement/activity from ...

snadjafinia·11mo ago
Otherkamo-login

ログアウトエンドポイントでキーを削除する前に、セッションデータを消去

- セッションデータをキーを削除する前にJSONを空にする - 削除が失敗しても、またはレプリケーションの遅れがある場合でも、セッションが利用できないようにする - 削除が失敗した場合、フォールバックでエラー処理を追加 - セッションデータが消去されたかどうかを示すロギングを改善 - getRedisReadClien...

snadjafinia·11mo ago
Otherkamo-internal

Clear session data before deleting key in logout endpoint

- 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 handling wi...

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