KamoCRM

Live Change Log

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

17,500
Total Changes
5,986
Features
5,284
Fixes
30
Projects
Filter by project
All Projects17,500AIService251APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService576InitializerService329KBService151KlusterServices740MCPGatewayService251MediaService602RAGService79SecurityService1,847TranslateService62VOIPService249VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,349kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,657kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore774Docs3,254Feature5,986Fix5,284Other994Performance165Refactor278Revert23Style42Test160Upgrade1
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
April 16, 2026
FixSecurityService

Injectaţi secretele de serviciu în pod env

Kamo·6mo ago
RefactorSecurityService

Eliminați configurația traduce din aplicație.yml

Kamo·6mo ago
CISecurityService

Adăugați grupul de convailități pentru a preveni fluxurile de lucru duplicate

Atunci când o apăsare declanşează un flux de lucru şi fluxul de lucru display este, de asemenea, concediat (sau două împingeri sosesc în succesiune rapidă), amb...

Kamo·6mo ago
FeatureSecurityService

Adaugă TranslateService la lista de proiecte

Kamo·6mo ago
FeatureSecurityService

Adăugați managementul aportului de plumb și publicul primește controlere

Adaugă două controlere pentru sistemul automat de admisie a plumbului: - LeadIntakeController: CRUD autentificat pentru criteriile finale de administrare, domen...

Kamo·6mo ago
FixSecurityService

Correct security level column reference in login SQL

security level este pe masa membrilor (m), nu membru echipă membru (e). Numele greşit e.Securitate nivel a determinat întregul SQL să eşueze în tăcere, așa că m...

Kamo·6mo ago
FeatureSecurityService

Stocare membruType în sesiune Redis la autentificare

Adaugă cazul în care E.D. nu este NULL, atunci "TEAM MINTIȚI-VĂ" autentificarea SQL interogare și trece rezultatul prin creareaSesssion în Redis; astfel încât f...

Kamo·6mo ago
April 12, 2026
RefactorSecurityService

Elimina ImagingController și fasole/imagine mutat la Transformareservice și DocsService

Încarcă criteriile de evaluare în direct în TransformationService la /api/conversion/imaging/*. Toate obiectivele de management și de descărcare trăiesc acum în...

Kamo·6mo ago
RefactorSecurityService

Generație de miniatură delegată la ConversieServicii, elimina dependența de PDFBox

generați șiStoreThumbnails POSTs acum PDF convertit la serviciul de conversie - Nu. Unzips răspunsul, stochează fiecare Degetul mare p {n}.png în MinIO, și publ...

Kamo·6mo ago
FeatureSecurityService

Generație sincronă per pagină miniatură în timpul uploadului șablonului cu progres granular WS

- Adăugați dependență PDFBox la pom.xml - După stocarea PDF convertit, redați toate paginile prin PDFRenderer și încărcați fiecare ca {id} thumb p{n}.png - Even...

Kamo·6mo ago
April 11, 2026
ChoreSecurityService

Adaugă ESigService la lista de proiecte publice

Kamo·6mo ago
ChoreSecurityService

Elimină scripturile de backfill

Kamo·6mo ago
FeatureSecurityService

Adăugați validarea secretă a webhook pentru a modifica obiectivul jurnal

Apărare în profunzime: validează *** antetul pe SecurityService în plus față de validarea APIService gateway.

Kamo·6mo ago
FeatureSecurityService

Adaugă nivelul de acces al membrilor și criteriile de evaluare a statutului proprietarului

Adaugă GET and PACTCH *************** obiective pentru citirea și actualizarea nivelurilor de acces cu aplicarea deplină a permisiunii. Actualizați crearea orga...

Kamo·6mo ago
FeatureSecurityService

Adăugați etape de proces de conversie granulare cu 8 actualizări distincte WebSocket

Etape: descărcare (0-15%) → pregătire (15-20%) → conversie (20-65%) → verificare (65-75%) → depozitare (75-90%) → finalizarea (90-100%) → completă

Kamo·6mo ago
OtherSecurityService

Adăugați logare extinsă la fluxul de conversie sincron, fixați căutarea găleată

Utilizați img.getAssocId() pentru găleată în loc de variabila assocType locale. Adăugați pas cu pas logare pentru descărcare, apel de conversie, și rezultatul.

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