KamoCRM

Live Change Log

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

15,120
Total Changes
5,169
Features
4,935
Fixes
30
Projects
Filter by project
All Projects15,120AIService197APIService161BillingService143ConversionService107DaemonService129DocsService215ESigService88EmailService518InitializerService318KBService105KlusterServices697MCPGatewayService85MediaService546RAGService71SecurityService1,658TranslateService55VOIPService205VectorService11kamo-apps25kamo-asterisk-support24kamo-capcha17kamo-capcha-widget4kamo-internal6,937kamo-login330kamo-marketing625kamo-nowww20kamo-register213kamo-shared-library1,455kamo-signer-monorepo53kamolos108
Filter by type
All TypesBuild11CI523Chore738Docs2,167Feature5,169Fix4,935Other986Performance157Refactor274Revert23Style42Test94Upgrade1
September 24, 2026
September 23, 2026
FixRAGService

Pin kamo-shared-library 1.6.1, the only version that exists

The library moved to 1.6.1 and this service still asked for 1.6.0. There is no window in which both resolve: the library is never published to a remote, so the ...

Kamo·5d ago
FixRAGService

RAGService presents the NATS login

NATS mapped every credential-less connection to the KAMO account (no_auth_user), and it listens on the host network of k1m1 — so any pod, the desktop VM or a ma...

Kamo·5d ago
FixRAGService

The session path searches the caller's own org, never the request body

RagSearchController read orgId/memberId/memberType from the JSON body on every path, including requests authenticated by a *** session rather than X-Internal-Au...

Kamo·6d ago
September 13, 2026
FixRAGService

Accept OCI image indexes when resolving the built digest [skip ci]

The images are pushed as OCI image indexes, so asking the registry for a single image manifest only answered 404, the digest came back empty and the check faile...

Kamo·2w ago
FixRAGService

Restart when a same-commit rebuild leaves pods on the old digest [skip ci]

The rollout step tried to detect a same-commit rebuild by comparing the Deployment's image reference before and after `set image`. "Apply manifests" has already...

Kamo·2w ago
September 5, 2026
FixRAGService

Prove the deploy by digest, not by tag

The preceding commit stops `set image` being a silent no-op. This asserts the outcome: after the rollout, the tag is resolved to a digest at the registry and th...

Kamo·3w ago
FixRAGService

A rebuild of the same commit deployed nothing and reported success

The image is tagged with the commit SHA, so rebuilding the same commit produces an identical image reference. `kubectl set image` then changes nothing, the Depl...

Kamo·3w ago
September 4, 2026
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·3w ago
August 28, 2026
FixRAGService

KB audience tiers are cumulative, matching KbReaderScope

The retrieval filter matched a reader's tier exactly: a TEAM_MEMBER had to match aiVisibleToTeamMembers and nothing else. So an article an author had deliberate...

Kamo·4w ago
August 16, 2026
FixRAGService

Size the pod above its own JVM heap ceiling [skip ci]

The image starts the JVM with -XX:MaxRAMPercentage=70 -XX:+AlwaysPreTouch, so the heap alone may take 70% of the container limit and pre-touch keeps every commi...

Kamo·1mo ago
August 3, 2026
FixRAGService

Harden the kubectl download against flaky egress [skip ci]

dl.k8s.io over the runner's egress intermittently drops mid-transfer: curl: (56) OpenSSL SSL_read: decryption failed or bad record mac which fails the deploy ...

Kamo·1mo ago
April 18, 2026
FixRAGService

Bump kamo-shared-library to 1.4.0

Kamo·5mo ago
March 30, 2026
FixRAGService

Lower embedding batch size to 8 to match model backend limit

The TEI backend forces max_batch_requests=8 regardless of client config. Batches of 32 were still failing with connection errors.

Kamo·6mo ago
FixRAGService

Batch embedding requests to respect model's max batch size of 32

The embedding model rejects requests with more than 32 inputs, but articles with large content produce 46-198 chunks. All embedding attempts were failing with 4...

Kamo·6mo ago
March 28, 2026
March 18, 2026
FixRAGService

Add search request/response logging to RagSearchController

Log orgId, query, result count, and full stack traces on error to diagnose 500 responses seen from AIService.

Kamo·6mo ago
FixRAGService

Reduce chunk size to fit all-MiniLM-L6-v2 token limit (256 max)

Chunk target was 2000 chars (~512 tokens) but the embedding model only accepts 256 tokens, causing 413 validation errors. Reduce to 800 chars (~200 tokens) with...

Kamo·6mo ago
FixRAGService

Use integer match filter for Qdrant searches instead of matchKeyword

The orgId and articleId payload fields are stored as integers via value(Long), but search and delete filters used matchKeyword() which only matches string/keywo...

Kamo·6mo ago
FixRAGService

Index KB articles for RAG on creation, not just when published

Previously the RAG pipeline only indexed PUBLISHED articles, requiring the full review/approval cycle before the AI chat could reference them. Now indexes all a...

Kamo·6mo ago
March 17, 2026
FixRAGService

Rename qdrant config properties to avoid K8s env var collision

Kubernetes auto-creates QDRANT_PORT env var from the qdrant Service, which overrides the Spring property with 'tcp://ip:port' instead of an integer. Renamed to ...

Kamo·6mo ago
FixRAGService

Make NATS consumer startup resilient with retry logic

Consumer now retries subscription in a background thread with backoff if KB_EVENTS stream doesn't exist yet. Prevents crash loop when KBService hasn't published...

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