KamoCRM

Live Change Log

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

18,391
Total Changes
6,526
Features
5,537
Fixes
30
Projects
Filter by project
All Projects18,391AIService276APIService177BillingService161ConversionService117DaemonService146DocsService240ESigService93EmailService619InitializerService344KBService162KlusterServices769MCPGatewayService277MediaService620RAGService79SecurityService1,995TranslateService62VOIPService265VectorService11kamo-apps26kamo-asterisk-support28kamo-capcha17kamo-capcha-widget4kamo-internal8,691kamo-login342kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,824kamo-signer-monorepo57kamolos114
Filter by type
All TypesBuild23CI525Chore794Docs3,286Feature6,526Fix5,537Other1,001Performance174Refactor281Revert23Style45Test175Upgrade1
November 11, 2026
FeatureKlusterServices

Apply marketing/ from deploy-services like every other folder

A "Deploy Marketing Sites namespace" step runs marketing/apply.sh (namespace kamomarketing, marketing-ci and site-edge RBAC, Middlewares, secrets created-if-mis...

KamoΒ·12h ago
FixKlusterServices

Record the 2026-10-30 public-IP hand patches so a full reconcile keeps them

coturn, MediaMTX, FreePBX (kamo-meet ACL + fail2ban) and KamoPBX were switched to k1m1's eno1 addresses 76.81.227.154/.155 by hand on 2026-10-30, and dovecot-im...

KamoΒ·12h ago
FeatureKlusterServices

A prepared hand-off can start in a marketing site's checkout, with a WEB-<n> folder

~/Kamo/Marketing/<repo> on first use, through sage's own credential store), cwd (absolute, bounded to the home after resolving links) and workPrefix (BUG defaul...

KamoΒ·12h ago
FixKlusterServices

Only known preview hosts under the wildcard sites.kamouniverse.com zone

*.sites.kamouniverse.com resolves here (wildcard A), and kamouniverse.com is an always-allow apex, so any scanner label or browser-only sibling ****************...

KamoΒ·12h ago
FeatureKlusterServices

Namespace kamomarketing for org marketing sites

- marketing/: namespace, SA marketing-ci (Role limited to kamomarketing, long-lived token), SA site-edge (IngressRoutes only), the edge's middleware chain wit...

KamoΒ·12h ago
FeatureKlusterServices

Svc_site_edge login (subscribe marketing.site.changed); SecurityService may publish it

The marketing sites edge (kamomarketing/site-edge) refreshes its routing table when SecurityService announces a site change. Subscribe-only, publishes nothing; ...

KamoΒ·12h ago
November 10, 2026
November 8, 2026
FeatureKlusterServices

MediaService may hear antivirus.content.settled (held chat attachments clear live)

ConversionService publishes a core event when a held upload's check finishes; MediaService consumes it in a core queue group and fans the new attachment state o...

KamoΒ·3d ago
FeatureKlusterServices

DocsService may hear antivirus.hold.verdict (core queue, held legal uploads)

A requested-document upload held while Antivirus was busy is finished by DocsService the moment its hold is judged. Core subscription only: DocsService keeps Je...

KamoΒ·3d ago
FeatureKlusterServices

Public MLOS vendor webhook routes on the platform API hosts (owner-approved)

POST-only, full-path regexes on api.kamouniverse.com / api.kamocrm.com, straight to their services: **************** -> kamomlosvendor-service and *************...

KamoΒ·3d ago
FeatureKlusterServices

Svc_commission login (publish compliance.event.>), DocsService may hear compliance events

Compliance Requirements (2026-11-07): CommissionService announces commission.credited and **************** on core NATS; DocsService subscribes to compliance.ev...

KamoΒ·3d ago
FeatureKlusterServices

KamoAntivirus mail filter first on inbound smtpd (port 25), tempfail when unreachable

smtpd_milters = { **************** default_action=tempfail }, then rspamd unchanged. Harmful attachments are replaced by a small placeholder part and the messag...

KamoΒ·3d ago
FeatureKlusterServices

Antivirus alerts (scanner down, signatures stale, mirror gate failing, p95, detection spike, hold backlog)

Applied by hand (monitoring/ is not a CI target).

KamoΒ·3d ago
FeatureKlusterServices

Svc_antivirus login + ANTIVIRUS stream; conversion/email may consume antivirus.>

- svc_antivirus: STREAM.INFO/CREATE ANTIVIRUS, publish antivirus.> and rt.org.>, subscribe antivirus.> and _INBOX.> (Secret kamo/nats-user-antivirus, SECRETS....

KamoΒ·3d ago
November 7, 2026
FeatureKlusterServices

Let DocsService reach ocrservice for the legal SI pre-check

Legal & Compliance reads uploaded documents with Kamo OCR to give reviewers suggestions (organizations with the SI app on only). Adds the kamowsdocs pod label t...

KamoΒ·3d ago
November 6, 2026
FeatureKlusterServices

SI infrastructure alerts, and LiveKit alerts page the SI on-call people (SIE1)

**************** (applied by hand, restarts nothing): a blackbox Probe of jicofo, prosody, the meeting ear, FreePBX's console, the Tool Plane, aiservice and kam...

KamoΒ·4d ago
FeatureKlusterServices

Let SecurityService read Forgejo's CI statuses for Live Changes

The Live Changes deployment tracker asks Forgejo (a host process on k1m1, port 3000) where each push is in its pipeline. avatar-resolver-egress allowed only Yug...

KamoΒ·4d ago
November 5, 2026
FeatureKlusterServices

Rke2-unwedge, a watchdog for the rke2 log-pipe deadlock

The 2026-09-28 and 2026-10-25 platform outages were the same deadlock: rke2 loses its lease, its ExecStopPost kills containerd, nobody reads the container log F...

KamoΒ·5d ago
November 4, 2026
FixKlusterServices

Detach k1m1's NFS mount while k3m1 is not serving it

The worldchunks USB drive dropped off k3m1 on 2026-10-30 and has not come back, so nfs-server stopped. k1m1 kept its soft mount on the assumption the server ret...

KamoΒ·1w ago
FeatureKlusterServices

Alert on node link drops and speed fallback, routed to sysadmin email

The LAN switch shared by k1m1 eno49 and k3m1 eno49 has been resetting since 2026-10-29 (hundreds of carrier drops, 66 of 70 drop minutes shared by both nodes, k...

KamoΒ·1w ago
November 1, 2026
FeatureKlusterServices

Live sales floor events reach open screens

svc_voip and svc_daemon may publish rt.org.>, so a call the phone system reports and a lead a job creates reach the board at once. New svc_automation login, cor...

KamoΒ·1w ago
FixKlusterServices

Relay for an org domain whose SPF names us

An org that set up SPF correctly was refused by the relay's sender rule, so its NoReply mail fell back to the platform address. EmailService lists those domains...

KamoΒ·1w ago
October 31, 2026
FixKlusterServices

An alias domain's senders may relay, and drop the dead Mailgun password

EmailService sends over port 25 from mynetworks without signing in, and relay_sender_domains refuses anything but kamocrm.com and kamouniverse.com with a 451. E...

KamoΒ·1w ago
October 28, 2026
FixKlusterServices

V1.13.10, a room reaper and leak watchdog, metrics and alerts, no roll under live calls

livekit-server v1.13.7 kept 202 closed participants of 176 closed rooms alive (their publisher transport's StreamAllocator polled a closed ICE agent every 15 s,...

KamoΒ·2w ago
FixKlusterServices

ICE on k3m1's LAN address only, so SIP legs stop resuming every 15 s

livekit-sip's same-host WebRTC legs to livekit-server failed ICE 15 s after connecting (the server's 10 s disconnected + 5 s failed timeouts) and resumed in a l...

KamoΒ·2w ago
FeatureKlusterServices

Postfix learns alias domains from the mail database

An organization's alias domains (Settings -> Email -> Domains) used to need virtual_alias_domains and a hand-written map edited here. EmailService now keeps an ...

KamoΒ·2w ago
October 27, 2026
FeatureKlusterServices

Every meeting occupant's identity is its own verified session's (mod_kamo_presence_identity)

TPMEETAUTH (owner order 2026-10-26): the SI's ear reads who each endpoint is from its presence identity. The stock presence_identity strips a client's own <iden...

KamoΒ·2w ago
October 22, 2026
PerformanceKlusterServices

Four streams of four threads, and a lane that keeps one free for chat

Measured on the nodes' CPU class with the dictionary sync's own traffic (15-key chunks): one stream of eight threads did 1.5 keys/s, two of eight 1.8, four of f...

KamoΒ·2w ago
FixKlusterServices

Write Romanian with comma-below s and t

The model mixes the legacy cedilla forms into Romanian (6 of 90 such letters in the chat widget's regenerated file) and the dictionary's earlier Romanian did to...

KamoΒ·2w ago
ChoreKlusterServices

Drop the old engines' deploy steps, apply MADLAD's alias Services, update audit and docs

Completes 56b37fa, which removed the manifests: without this the workflow still ran steps for directories that no longer exist. The workflow now applies madlad/...

KamoΒ·2w ago
ChoreKlusterServices

Remove LibreTranslate, Bergamot and IndicTrans; MADLAD serves every pair

TranslateService speaks only to madlad now (translateservice 5c7605b), verified end to end: every Kamo locale including Tamil and Swahili, inbound ru->en and ta...

KamoΒ·2w ago
PerformanceKlusterServices

Beam 4 only for labels, beam 2 up to 64 tokens

Cost is tokens x beam. Measured in the cluster with the old engines still running: one stream 77 chars/s and two 115 chars/s on short strings at beam 4. Sentenc...

KamoΒ·2w ago
FeatureKlusterServices

One translation engine for every pair, MADLAD-400-3B on CPU

Replaces LibreTranslate (Argos), Bergamot and Kamo IndicTrans, whose language sets did not overlap and whose gaps came back as English. MADLAD-400-3B-MT (Apache...

KamoΒ·2w ago
FixKlusterServices

Memory limit 14Gi -> 20Gi, request 10Gi -> 12Gi

Seven-day peak working set was 13.8 and 13.1 GiB against the 14Gi limit, so the kernel reclaimed the mmapped argos models and en->ru on a help article paid cold...

KamoΒ·2w ago
October 21, 2026
FixKlusterServices

Desktop alerts go by e-mail only; the MediaService chat leg is gone

Owner, 2026-10-20 (IoT close-out F12): no chat sender. A chat thread needs a sender member besides the recipient and the platform organization has none by desig...

KamoΒ·3w ago
October 18, 2026
FixKlusterServices

The deploy-safety audit accepts a reasoned 'spread' exemption for a node-pinned Deployment

Every KlusterServices deploy since run #337 ended red on kamoai-voice (3 replicas pinned to k3m1 by nodeSelector, so no hostname spread is possible). The rule h...

KamoΒ·3w ago
FixKlusterServices

Kamo_app is a NOLOGIN group role; services log in as kamo_app_202610

The YugabyteDB application password was exposed (com.zaxxer.hikari DEBUG in ten services' logs, and securityservice's committed diagnose-output.txt), so it was ...

KamoΒ·3w ago
ChoreKlusterServices

Probe only www.kamocrm.com; the platform's surfaces are on kamouniverse.com

kamocrm.com is a marketing site only (owner 2026-10-18). The blackbox prober is now deployed, and apply.kamocrm.com was already failing its probe; the kamocrm.c...

KamoΒ·3w ago
FixKlusterServices

Never seed devices. anywhere under kamocrm.com

ccd50be skipped the devices sibling only when the parent WAS kamocrm.com, so a child-org web alias host **************** seen live) still queued ***************...

KamoΒ·3w ago
FixKlusterServices

The proxy settings live in HA's storage, promoted, not in YAML

Since 2026.10, Home Assistant migrates a YAML `http:` to its storage once, as a PENDING config. It reverts that config and restarts unless an admin promotes it ...

KamoΒ·3w ago
FeatureKlusterServices

A Home Assistant lab instance at home.kamouniverse.com

One Home Assistant 2026.10.2 (digest-pinned) for IoT testing of Kamo's HOME_ASSISTANT connector and for the owner's own use under the HA account sajon. The demo...

KamoΒ·3w ago
ChoreKlusterServices

Set the Google Trust Services EAB key id (IoT SP09 B1)

The gts-prod ClusterIssuer's external account binding names key id **************** from Google Cloud Public CA (project kamocrm-1755458510147). The HMAC key is...

KamoΒ·3w ago
FeatureKlusterServices

The share host is devices.<domain>, and nothing on kamocrm.com

Owner 2026-10-18: "iot" is a technical term, so the customer-facing host alias for kamo-iot is `devices`, and kamocrm.com is a marketing site only. auto-cert do...

KamoΒ·3w ago
FeatureKlusterServices

Iot.relay.> β€” svc_iot publishes, svc_media subscribes (IoT SP10)

The Google Home relay wakes the phone that holds a connection's lease: IoTService publishes a content-free frame on iot.relay.{connectionId} and MediaService fo...

KamoΒ·3w ago
FeatureKlusterServices

Google Trust Services issues the platform login host's certificate (IoT SP09)

Amazon's account linking refuses Let's Encrypt, so login.kamouniverse.com alone moves to a gts-prod ClusterIssuer (ACME with External Account Binding); every ot...

KamoΒ·3w 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