KamoCRM

Live Change Log

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

18,579
Total Changes
6,661
Features
5,581
Fixes
30
Projects
Filter by project
All Projects18,579AIService282APIService179BillingService165ConversionService118DaemonService147DocsService258ESigService99EmailService629InitializerService344KBService162KlusterServices771MCPGatewayService277MediaService622RAGService79SecurityService2,024TranslateService62VOIPService265VectorService11kamo-apps29kamo-asterisk-support28kamo-capcha17kamo-capcha-widget4kamo-internal8,754kamo-login342kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,860kamo-signer-monorepo61kamolos115
Filter by type
All TypesBuild23CI527Chore794Docs3,288Feature6,661Fix5,581Other1,001Performance174Refactor284Revert23Style45Test177Upgrade1
September 4, 2026
StyleKlusterServices

Restore this manifest's CRLF line endings

The previous commit rewrote the file with a script that normalised it to LF, which is a whole-file diff for a change that touched 28 lines. No content change.

Kamo·2mo ago
FixKlusterServices

Stop running the platform's entire edge on one pod

Traefik ran a single replica, so every restart of it — a rollout, an OOM, an eviction — took the whole platform's TLS down. 192.168.4.22:443 has no local endpoi...

Kamo·2mo ago
Fixkamo-nowww

Give the rollout room for the 15s minReadySeconds now costs

progressDeadlineSeconds was 60. That is the window a rollout has to show progress before Kubernetes gives up and marks it failed, and the previous commit added ...

Kamo·2mo ago
Fixkamo-capcha

Give the rollout room for the 15s minReadySeconds now costs

progressDeadlineSeconds was 60. That is the window a rollout has to show progress before Kubernetes gives up and marks it failed, and the previous commit added ...

Kamo·2mo ago
FixAPIService

Give the rollout room for the 15s minReadySeconds now costs

progressDeadlineSeconds was 60. That is the window a rollout has to show progress before Kubernetes gives up and marks it failed, and the previous commit added ...

Kamo·2mo ago
Fixkamo-register

Give the rollout room for the 15s minReadySeconds now costs

progressDeadlineSeconds was 60. That is the window a rollout has to show progress before Kubernetes gives up and marks it failed, and the previous commit added ...

Kamo·2mo ago
Fixkamo-login

Give the rollout room for the 15s minReadySeconds now costs

progressDeadlineSeconds was 60. That is the window a rollout has to show progress before Kubernetes gives up and marks it failed, and the previous commit added ...

Kamo·2mo ago
Featurekamo-internal

"What happened?" fills the window, so maximizing enlarges it

Every other field on the report form is sized by its content. The description is the one somebody is actually writing in, so it now takes whatever height is lef...

Kamo·2mo ago
StyleAPIService

Restore this manifest's CRLF line endings

The previous commit rewrote the file with a script that normalised it to LF, which is a whole-file diff for a change that touched a dozen lines. No content chan...

Kamo·2mo ago
Stylekamo-register

Restore this manifest's CRLF line endings

The previous commit rewrote the file with a script that normalised it to LF, which is a whole-file diff for a change that touched a dozen lines. No content chan...

Kamo·2mo ago
Fixkamo-nowww

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
Fixkamo-capcha

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixTranslateService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixESigService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixMCPGatewayService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
Fixkamolos

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixConversionService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixAIService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixVectorService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixDaemonService

Fail a bad rollout instead of reporting it green

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixMediaService

Stop deleting the only chat pod before starting its replacement

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixAPIService

APIService never shut down gracefully at all

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
Fixkamo-register

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
Fixkamo-internal

Add the preStop hook the drain script was always missing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
Fixkamo-marketing

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
Fixkamo-login

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixRAGService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixVOIPService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixSecurityService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixKBService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixEmailService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixDocsService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
FixBillingService

Let a rollout finish what the old pod was doing

Deploys replaced the only pod of each service with nothing to catch the requests in flight. Three settings, applied across the fleet: - preStop sleeps 10s befo...

Kamo·2mo ago
OtherSecurityService

Merge remote-tracking branch 'origin/main'

Kamo·2mo ago
FeatureSecurityService

Change a personal address by proving it, and administer accounts

Two surfaces on the USER account, which until now had no server of its own — the account's fields were reachable only through MemberController, an endpoint scop...

Kamo·2mo ago
Featurekamo-shared-library

The two reads the platform Users list is built on

A paged, searched finder over USERS, and a batched membership count. The finder is unfiltered by isFake on purpose. Reviewing and clearing that flag is part of...

Kamo·2mo ago
FixEmailService

Open the message, not the mailbox

The app has a route per (folder, uid). Being told about a mail and then landing on a list to hunt for it is the kind of small wrongness that makes a notificatio...

Kamo·2mo ago
FeatureEmailService

Buzz a member's phone when mail arrives

MessageIndexer is already a durable consumer of email.inbox.> and already resolves the mailbox OWNER, so it is where this belongs — one notification per genuine...

Kamo·2mo ago
FeatureMediaService

An EMAIL type, and every push now names its org

EmailService raises the notification off IMAP IDLE and asks MediaService to deliver it through the internal dispatch endpoint that exists for exactly this — eve...

Kamo·2mo ago
OtherEmailService

Merge remote-tracking branch 'origin/main'

Kamo·2mo ago
FeatureEmailService

Preview variables for the two email-change letters

Both new canonical templates render in the console the moment this service is rebuilt onto the shared library that carries them; without a sampleVariables arm t...

Kamo·2mo ago
Featurekamo-shared-library

A right for user accounts, and a parked address for changing one

Three additions, all of them the shared half of work that lands in SecurityService and kamo-internal. PlatformRightType.MANAGE_USERS, appended. A user account ...

Kamo·2mo ago
Featurekamo-internal

Public rides the SEND TO AI row, and arms the hand-off for god

The Publish control was a bordered block of its own further down the form, carrying two lines of hint under the switch. It is now a compact toggle on the headin...

Kamo·2mo ago
Fixkamo-internal

Draw the Publish switch on god eligibility

Reported: "my user has god enabled, yet I still don't see the new publish field." The gate was isGodModeActive(), which is getIsGod() AND an open break-glass wi...

Kamo·2mo ago
FixMediaService

Publish needs GD, not an open god-mode window

The switch was invisible to god-eligible operators. It was gated on **************** — GD plus an opened break-glass window — and holding GD is not the same fac...

Kamo·2mo ago
Featurekamo-shared-library

Gate Publish on god ELIGIBILITY, not an open window

The Publish flag shipped gated on godModeActive — GD plus a deliberately opened 30-minute break-glass window. Every god-eligible operator then found the switch ...

Kamo·2mo ago
FixDocsService

Three self-invoked transactions that were doing nothing

@Transactional and @Async are PROXIES. A call from inside the same bean never reaches one, so all three of these annotations were inert. Found by audit, not by ...

Kamo·2mo ago
Fixkamo-internal

The SPF card had no proxy route, so it never reached the API

The card shipped calling /api/security/domains/{id}/spf, and every request 404'd at Next.js before SecurityService ever saw it — which the card reported as "We ...

kamo·2mo ago
Featurekamo-internal

Ending a terminal takes its window and hexhead with it

Ending a terminal from the Interaction Center killed the shell and left the window behind, showing a red `closed` status over something that no longer exists. T...

Kamo·2mo ago
FeatureSecurityService

Read a domain's live SPF record and say what it actually needs

GET /api/security/domains/{id}/spf, for the SPF step on /setup/dns. The setup page cannot give one set of SPF instructions to everybody, because the right inst...

Kamo·2mo 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