KamoCRM

Live Change Log

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

18,398
Total Changes
6,533
Features
5,537
Fixes
30
Projects
Filter by project
All Projects18,398AIService276APIService177BillingService161ConversionService117DaemonService146DocsService240ESigService93EmailService621InitializerService344KBService162KlusterServices769MCPGatewayService277MediaService620RAGService79SecurityService1,996TranslateService62VOIPService265VectorService11kamo-apps26kamo-asterisk-support28kamo-capcha17kamo-capcha-widget4kamo-internal8,693kamo-login342kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,826kamo-signer-monorepo57kamolos114
Filter by type
All TypesBuild23CI525Chore794Docs3,286Feature6,533Fix5,537Other1,001Performance174Refactor281Revert23Style45Test175Upgrade1
April 17, 2026
OtherSecurityService

Change to configmap to add kamo-nowww

Kamo·6mo ago
OtherSecurityService

Change to configmap to add kamo-analytics

Kamo·6mo ago
FeatureSecurityService

Redact tokens ≥32 chars in changelog sanitization

Any word (run of non-whitespace) that is 32 characters or longer is replaced with **************** before titles and descriptions are sent to the translation se...

Kamo·6mo ago
FeatureSecurityService

Generate TXT verification token on domain create, check in verify-dns

- createDomain: generate 32-char UUID token and store via setVerificationToken - verifyDns: check _kamo-verify TXT record for kamo-site-verification=<token> - T...

Kamo·6mo ago
FixSecurityService

Bound translation concurrency to 3 threads to prevent DB pool exhaustion

Unbounded @Async (SimpleAsyncTaskExecutor) created 50 threads simultaneously when the retry scheduler fired, each opening a DB transaction and draining HikariCP...

Kamo·6mo ago
FixSecurityService

Three bugs preventing changelog translations from being saved

1. **************** was discarding events because handleWebhook() had no @Transactional — save + publishEvent() ran outside any transaction. Add @Transact...

Kamo·6mo ago
FeatureSecurityService

Add /setup/dns backend — one-domain enforcement, SSL probe, new aliases

- Enforce one custom domain per org in POST /api/security/domains - Add capcha, docs, sign to standard aliases; remove legacy aliases - Update verify-dns to tra...

Kamo·6mo ago
FixSecurityService

Apply word replacement at translation time, not ingestion

Original text is preserved in the DB so that adding a new rule and re-triggering translation is all that is needed to update existing records. Changes: - Chang...

Kamo·6mo ago
FeatureSecurityService

Move changelog word replacement to backend before translation

Text replacements (Docs→Docs, Meet→Meet, etc.) and secret name redaction (K8s secret names→***) were previously applied client-side in ChangelogClient.tsx, mean...

Kamo·6mo ago
FixSecurityService

Check TeamMember.isOrganizationOwner flag for owner detection in my-networks endpoint

The previous check only looked at org.getOwner() (user_id_owner column) which can be null for existing orgs. The authoritative owner flag lives on the TeamMembe...

Kamo·6mo ago
FixSecurityService

Include parent org in /org/domain response

The getOrganizationByDomain endpoint manually builds a response map but never included the parent organization reference. This prevented the frontend from knowi...

Kamo·6mo ago
FixSecurityService

Don't let null translated description hide the English original in changelog

The translation lookup for non-en locales was unconditionally overwriting description with **************** which is null when: - the translation was saved befo...

Kamo·6mo ago
FeatureSecurityService

Add BillingService to changelog public-projects

Kamo·6mo ago
April 16, 2026
FixSecurityService

Inject translate-service-secrets into pod env

Kamo·6mo ago
FixSecurityService

Add translate service config to K8s configmap

Kamo·6mo ago
CISecurityService

Add concurrency group to prevent duplicate workflow runs

When a push triggers a workflow and workflow_dispatch is also fired (or two pushes arrive in quick succession), both runs would execute simultaneously. Adding a...

Kamo·6mo ago
FeatureSecurityService

Add lead intake management and public receive controllers

Adds two controllers for the automated lead intake system: - LeadIntakeController: authenticated CRUD for intake endpoints, field mappings, payload queue mana...

Kamo·6mo ago
FeatureSecurityService

Add GET **************** endpoint using SQL count

Kamo·6mo ago
FixSecurityService

Correct security_level column reference in login SQL

security_level is on the members table (m), not member_team_member (e). The wrong alias e.security_level caused the entire SQL to fail silently, so memberType w...

Kamo·6mo ago
FeatureSecurityService

Store memberType in Redis session at login

Adds CASE WHEN e.id IS NOT NULL THEN 'TEAM_MEMBER' ELSE 'MEMBER' END to the login SQL query and passes the result through createSession into Redis, so frontend ...

Kamo·6mo ago
April 12, 2026
RefactorSecurityService

Remove ImagingController and beans/imaging — moved to ConversionService and DocsService

Upload endpoints now live in ConversionService at /api/conversion/imaging/*. All management and download endpoints now live in DocsService at /api/docs/imaging/...

Kamo·7mo ago
RefactorSecurityService

Delegate thumbnail generation to ConversionService, remove PDFBox dependency

generateAndStoreThumbnails now POSTs the converted PDF to ConversionService **************** unzips the response, stores each thumb_p{n}.png in MinIO, and publi...

Kamo·7mo ago
FeatureSecurityService

Synchronous per-page thumbnail generation during template upload with granular WS progress

- Add PDFBox dependency to pom.xml - After storing converted PDF, render all pages via PDFRenderer and upload each as {id}_thumb_p{n}.png - Publish generating_t...

Kamo·7mo ago
April 11, 2026
ChoreSecurityService

Add ESigService to changelog public projects list

Kamo·7mo ago
ChoreSecurityService

Remove backfill scripts

Kamo·7mo ago
FeatureSecurityService

Add webhook secret validation to changelog endpoint

Defense-in-depth: validates *** header on the SecurityService side in addition to APIService gateway validation.

Kamo·7mo ago
FeatureSecurityService

Add member access level and owner status endpoints

Add GET and PATCH **************** endpoints for reading and updating access levels with full permission enforcement. Update organization creation to use create...

Kamo·7mo ago
FeatureSecurityService

Add granular conversion progress stages with 8 distinct WebSocket updates

Stages: downloading (0-15%) → preparing (15-20%) → converting (20-65%) → verifying (65-75%) → storing (75-90%) → finalizing (90-100%) → complete

Kamo·7mo ago
OtherSecurityService

Add extensive logging to synchronous conversion flow, fix bucket lookup

Use img.getAssocId() for bucket instead of local assocType variable. Add step-by-step logging for download, conversion call, and result.

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