KamoCRM

Live Change Log

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

17,425
Total Changes
5,931
Features
5,266
Fixes
30
Projects
Filter by project
All Projects17,425AIService242APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService568InitializerService329KBService151KlusterServices738MCPGatewayService235MediaService593RAGService79SecurityService1,840TranslateService62VOIPService249VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,337kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,645kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore773Docs3,254Feature5,931Fix5,266Other994Performance165Refactor278Revert23Style42Test159Upgrade1
June 26, 2026
Featurekamo-shared-library

Transactional outbox event backbone (Phase-0 keystone B)

Money/compliance-grade producer path in NEW sibling pkg **************** (never edits donotmodify): MlosEventEnvelope DTO + MlosOutboxEvent outbox entity/repo +...

Kamo·4mo ago
Docskamo-signer-monorepo

Commit project markdown (rescind no-.md policy)

Kamo·4mo ago
DocsKlusterServices

Commit project markdown (rescind no-.md policy)

Kamo·4mo ago
DocsSecurityService

Commit project markdown (rescind no-.md policy)

Kamo·4mo ago
DocsMCPGatewayService

Commit project markdown (rescind no-.md policy)

Kamo·4mo ago
Docskamo-shared-library

Commit project markdown (rescind no-.md policy)

Kamo·4mo ago
DocsInitializerService

Commit project markdown (rescind no-.md policy)

Kamo·4mo ago
June 25, 2026
CIKlusterServices

Drop the decommissioned k2m1 cluster section

k2m1 (10.8.2.1:6443) is decommissioned and unreachable; its steps lived in the same deploy_services job and failed it (missing kubeconfig / no route) even when ...

Sage·4mo ago
FixKlusterServices

Indent heredoc bodies so the startup.sh configmap is valid YAML

The startup.sh block scalar embedded 5 shell heredocs (rtp.conf, http.conf, an SQL block, WebRTC endpoints, freepbx.conf) whose bodies sat at column 0 — less in...

Sage·4mo ago
CIKlusterServices

Don't let a missing kubectl cache dir kill the whole job

The kubectl-install step runs 'set -eo pipefail' then find **************** -name kubectl ... | head -1 When that cache dir is absent (cleared between runner ...

Sage·4mo ago
OtherKlusterServices

Upgrade v3.0 -> v3.3 (fix intermittent WebSocket disconnect)

v3.0.0 intermittently completes the WS 101 upgrade then closes the socket before any frame flows — the recurring 'disconnect on load' in the universe game clien...

Sage·4mo ago
CIkamolos

Clone shared-lib with GIT_CLONE_TOKEN (not registry token)

The registry token authenticates to the k1m1 Docker registry (htpasswd), not to Forgejo git, so the shared-lib clone failed auth. Use the Forgejo git token like...

Kamo·4mo ago
FixDocsService

Point Docs deployment at k1m1 registry

The Docs-online image host was the bogus **************** (Redis DNS, never a registry), so every DocsService deploy re-applied an unpullable image. Point it at...

Kamo·4mo ago
CIkamo-signer-monorepo

Drop dead deploy_k2m1 job, rebuild to k1m1 registry

kamowebsigner ran on a stale cached k0m1:5000 image, never re-pushed to the k1m1 registry after k0m1 retirement; disk-pressure eviction wiped the cache (ImagePu...

Kamo·4mo ago
CIkamo-asterisk-support

Drop offline-k2m1 deploy job + orphaned k2m1 manifests

Service ran on a stale cached k0m1:5000 image, never re-pushed to the k1m1 registry after k0m1 retirement; disk-pressure eviction wiped the cache (ImagePullBack...

Kamo·4mo ago
CIkamolos

Build on k1m1 — clone shared-lib from k1m1, drop k2m1, fix image host

CI cloned kamo-shared-library from the retired k0m1:3000 Forgejo, so the build failed and los-service was never pushed to the k1m1 registry; it survived on a st...

Kamo·4mo ago
Fixkamo-internal

Page reflects superseded edt + road-less transport cells honestly

The Services tab read as incomplete for two stages that are actually done: - edt showed an empty 0% bar though EDT4 (hydro) supersedes the EDT2 base and the p...

Sage·4mo ago
June 23, 2026
Otherkamo-internal

Universe admin: per-shard hosted-region list + plain-message broadcast

#4 Cold-region visibility: the world beacon now carries regions_list, so each shard card in the Live tab lists the exact region addresses it hosts (not just a c...

Sage·4mo ago
Otherkamo-internal

Universe admin: live operator actions (Phase 3)

Actions tab gains a Live operations section that drives the live game's existing gRPC admin surface, each behind a confirm dialog and recorded to a capped Redis...

Sage·4mo ago
Otherkamo-internal

Universe admin: live datastore/gateway health + worldgen run history

Live tab now consumes the new universe.gateway.health and universe.persistence.health beacons alongside universe.world.load: a datastores strip (CockroachDB quo...

Sage·4mo ago
June 22, 2026
Otherkamo-internal

Universe admin: add Live tab — real-time game shards, players & regions

New read-only platform-admin view of the running game (not just the offline worldgen pipeline). Subscribes once per process to the universe.world.load beacon ev...

Sage·4mo ago
Featurekamo-internal

Show per-stage data layers incl. EDT4 ocean mask + TRF2 markings

The worldgen dashboard's stage cards now list the data layers each tile stage bakes, accenting the newly-added ones: the EDT4 ocean (sea-connectivity) mask unde...

Sage·4mo ago
June 21, 2026
CIkamo-capcha

Fix kubectl install step (GITHUB_PATH not active in same step)

The install step verified with 'kubectl version --client' in the same step that appended its dir to GITHUB_PATH — but GITHUB_PATH only applies to later steps, s...

Kamo·4mo ago
CIkamo-capcha

Drop decommissioned k2m1 deploy job

k2m1 is offline/decommissioned; the deploy_k2m1 job only ever failed and marked the whole pipeline red after k1m1 deployed fine. k1m1 is now the sole build+depl...

Kamo·4mo ago
Performancekamo-capcha

Lower PoW difficulty (cost 1000, counter 2000-4000)

Solve cost is the product of CHALLENGE_COST x counter range; both were over-cranked (~37.5M PBKDF2 rounds, ~40-75x a stock Capcha), making the widget slow on lo...

Kamo·4mo ago
June 20, 2026
Featurekamo-internal

Surface tile staleness + targeted "Regenerate N" on the page

The agent snapshot now carries per-recipe staleness (up-to-date / stale / missing); plumb it through the API + SSE to the page: - Services tab shows a freshne...

Sage·4mo ago
Chorekamo-internal

Trigger redeploy of latest build

kamo·4mo ago
Fixkamo-internal

Show the live heartbeat tile count, not the stale per-pass value

Progress read status.have first, which the initial 'running' event sets to 0 — and `0 ?? count` keeps 0, so the live count never showed (and hydro mis-counted a...

Sage·4mo ago
Fixkamo-internal

Add Universe to the settings slide-out (NavPri)

The Universe page was registered on the settings landing cards but not in the SettingsStatusWindow slide-out that NavPri actually opens, so it didn't appear und...

Sage·4mo ago
June 19, 2026
Featurekamo-internal

Universe world-generation admin page

Adds /settings/platform/universe under Platform Administration — its own platform card + three sub-tabs (Overview, Services, Actions) — to start and monitor the...

Sage·4mo ago
June 16, 2026
FixSecurityService

Expose GD (god eligibility) in /user-info for kamo-universe

The session stores the GD flag (KSessionService) but /user-info never returned it, so kamo-universe's KamoIdentity always deserialized is_god=false and the god/...

Kamo·4mo ago
FixEmailService

Don't save transactional NoReply sends to a Sent folder

NoReply is a send-only address with no mailbox, but every transactional send still attempted an IMAP append to its Sent folder, producing a noisy AUTHENTICATION...

Kamo·4mo ago
FixSecurityService

Case-insensitive email lookup so reset emails send

Password recovery lowercased the input but findByEmailEmail does a case-sensitive match against the stored email (e.g. Sage@KamoCRM.com), so the user was never ...

Kamo·4mo ago
Featurekamo-shared-library

Add case-insensitive findByEmailEmailIgnoreCase

Emails are stored with inconsistent case (e.g. Sage@KamoCRM.com) and CockroachDB string equality is case-sensitive, so findByEmailEmail misses on case alone. Ne...

Kamo·4mo ago
June 15, 2026
Fixkamo-login

Proxy password-reset to SecurityService internal DNS

The /api/recover proxy defaulted to api.kamocrm.com, which Traefik routes to APIService (no recover controller) → 404 → "Something went wrong" on /reset-passwor...

Kamo·4mo ago
FixKlusterServices

Move Dovecot maildirs to a local-path PVC (off rclone/MinIO FUSE)

Maildirs were on hostPath /mnt/shared-files/email/mail — the rclone FUSE mount backed by MinIO object storage, which can't safely host a maildir (no atomic rena...

Kamo·4mo ago
Otherkamo-internal

Update project files

kamo·4mo ago
FeatureEmailService

Self-heal mailbox accounts from app DB (drift recovery)

The app DB is the source of truth for which mailboxes should exist; KamoMail accounts live in the mail server's virtual_users. If the mail DB loses data, mailbo...

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