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
July 2, 2026
ChoreEmailService

Wire mlos-intern-auth (INTERN AUTH SECRET) în desfășurare [skip ci]

Emailservice's InternalAuthFilter guards /api/email/templels/send + /seed-org on Intern.auth.secret, care a fost nesetat (inchis 503). Partajează-le pe cele exi...

Sage·3mo ago
July 1, 2026
FixEmailService

Returnare 422 (nu 500) atunci când membrul nu are cutie poștală

dosare listă și alte criterii de evaluare citită aruncat stat ilegal Excepție de la MailContext.to MailCredentials() atunci când un membru nu a avut acreditări ...

Sage·3mo ago
June 26, 2026
June 16, 2026
FixEmailService

Nu salva tranzacțiile NoReply trimite într-un dosar trimis

NoReply este o adresă numai-trimite fără căsuță poștală, dar fiecare tranzacție trimite încă încercat un apendice IMAP la dosarul trimis, producând o gălăgie Av...

Kamo·4mo ago
June 15, 2026
FeatureEmailService

Conturi de căsuță poștală autovindecată din aplicația DB (recuperare în derivă)

Aplicația DB este sursa adevărului pentru care cutiile poștale ar trebui să existe; KamoMail conturi în direct în utilizatorii virtuali ai serverului de poștă. ...

Kamo·4mo ago
FixEmailService

Lista de căsuţe poştale API se întoarce în formă de UI ***********

GET /api/email/boxes returnat entitatea brută (prestatorStatus, lastSyncedAt, fără număr de membri). Setările UI citesc ******************* deci statutul a fost...

Kamo·4mo ago
FixEmailService

Autorizați accesul cutie poștală pe bază de privilegiu pentru citire + trimitere

remitForMailbox a acordat acces doar printr-o misiune directă MemberMailbox, Aşa că cutiile poştale au ieşit la suprafaţă. drepturi aruncat NoSuchElementExcepti...

Kamo·4mo ago
June 13, 2026
June 10, 2026
ChoreEmailService

Reconstruiește pentru actualizare kamo-shared-library (semnează șabloane e-mail)

Preia noul model canonic esign.signer verification + Esign.signer invita astfel încât sămânţa ForOrg le poate însămânţa la prima trimitere.

Kamo·4mo ago
May 16, 2026
May 10, 2026
FeatureEmailService

Wire DomainManager și MailboxProvisioner pentru toți furnizorii de cloud

Înlocuiți cioburile de operare nesusținute Excepție în fiecare furnizor de cloud cu apeluri HTTP reale împotriva API admin fiecărui backend: - Microsoft 365 → ...

Kamo·5mo ago
May 9, 2026
FeatureEmailService

IMAP/SMTP-backed send, folder, and search for cloud stubs

Extragerea modelului de delegare IMAP/SMTP în RezumatImapBacked CloudProvider și au Zoho, IceWarp, Exchange, Google Workspace, și Microsoft 365 extinde Ea. Clas...

Kamo·5mo ago
FeatureEmailService

MailReader cu suport IMAP pentru cotoare

Zoho, IceWarp, Exchange, Google Workspace, și Microsoft 365 toate expune IMAP, așa că sârmă fiecare cloud-furnizor mailReader metode prin EmailImapService în lo...

Kamo·5mo ago
FeatureEmailService

Se serveste inline imagini piese MIME și metadate de conținut-ID

Render <img src="cid:... [62] în mesajele UI prin expunerea părților liniare că referinţele corpului HTML. - AtașamentInfo câștigă conținutId (fără paranteze u...

Kamo·5mo ago
FixEmailService

Păstrați numele original și tipul de conținut la descărcarea atașamentului

Criteriile de evaluare (ambele personale) și controlorii de căsuță poștală comună) emiteau conținut-Dispoziție: atașament fără parametru de nume de fișier și ti...

Kamo·5mo ago
April 29, 2026
CIEmailService

Conexiuni în domeniul de aplicare pentru a construi locuri de muncă, nu Kubernetes pune în aplicare

Conexiuni la nivel de flux de lucru serializate intreaga conducta (inclusiv kubectl Rulouri). Mutați grupul la locul de muncă construi doar astfel implementa lo...

Kamo·6mo ago
April 28, 2026
FixEmailService

Sincronizează membrii.email atunci când căsuţa poştală primară este atribuită, modificată sau eliminată

Atunci când o cutie poștală a fost atribuită unui membru într-un org KAMO MAIL, membrii.email nu a fost niciodată actualizat, provocând EmailCredentialService s...

Kamo·6mo ago
April 27, 2026
April 26, 2026
FixEmailService

Mark-as-read for shared and member mailboxes

EmailController.setFlags now accepts an optional mailboxId query param and routes through resolveProviderWithMailbox so member-mailbox flags are set against the...

Kamo·6mo ago
FixEmailService

Handle IMAPInputStream in getMessage pentru a preveni ClassCastException

JavaMail poate returna un IMAPInputStream în loc de un string decodat de la part.getContent() atunci când conținutul mesajului nu a fost pre-inventat. ă mulaje ...

Kamo·6mo ago
April 25, 2026
FixEmailService

Utilizați getAstachments () pentru a se potrivi cu tipul de ambalaj boolean

***************** este un ambalaj Boolean, deci Lombok generează getHasAttachments() not isHasAttachments(). Doar acesta din urmă există pentru boolean primitiv...

Kamo·6mo ago
FixEmailService

Reset stale hasAttachments on sync and accumulate correctly

- Reset has_attachments=false at start of bulk sync so stale true values from old false-positive MIME detection are cleared before re-indexing - Accumulate ha...

Kamo·6mo ago
FixEmailService

Suport de la @ info: whatsthis

Adaugă FromAddressRequest to EmailSendRequest so the frontend can specification din care se poate trimite adresa de e-mail/împărtășit/cutie. SmtpOnlyProvider ac...

Kamo·6mo ago
FixEmailService

Fix attachment parsing and hasAttachment false positives

Three fixes to EmailImapService: 1. toEnvelope: narrow multipart check to multipart/mixed only — plain HTML+text emails (multipart/alternative) no longer sh...

Kamo·6mo ago
April 24, 2026
FixEmailService

Add com.kamo.z.shared.commerce to EnableJpaRepositories scan

**************** (required by **************** in the shared library) lives under com.kamo.z.shared.commerce but was not included in the JPA repository scan, ca...

Kamo·6mo ago
FixEmailService

Numele și tipul de câmp corecte în răspuns de la Adders

Platforma trimitea cheia 'e-mail' dar frontend se aştepta la 'adresă' şi a trimis tip "împărtășit mailbox" atunci când frontend se aștepta la "împărțit." De ase...

Kamo·6mo ago
April 21, 2026
FixEmailService

Retrageți-vă la org domenii atunci când niciun set implicit de e-mail prestator domenii

KamoMailDomainValidator a fost greu-failing cu 403 pentru orgi care au un DNS-verificat domeniu în org domenii dar niciodată adăugat la e-mail registrul de dome...

Kamo·6mo ago
April 20, 2026
FixEmailService

Filtru de stare sârmă și șabloane auto-semințe necesare pe listă

- EmailTemplateController.list() acceptă acum ?status= param și filtre folosind interogarea depozitului existent ByOrgIdAndStatus - Seminte auto necesare modele...

Kamo·6mo ago
FeatureEmailService

Adaugă validator domeniu KamoMail pentru a bloca adresele de email cross-tenant

Introduce KamoMailDomainValidator componentă care verifică, la nivelul de serviciu, dacă domeniul de e-mail transmis corespunde domeniului implicit verificat al...

Kamo·6mo ago
April 19, 2026
ChoreEmailService

Reconstruiește pentru actualizarea kamo-shared-library (CREATE CHILD ORG dreapta + aplica-la steaguri)

Trage noul RolRightType.CREATE CHILD ORG (id 131), cele trei aplică-la steaguri pe ChildOrgSecurityModel, cele două supraîncărcari de servicii de 13 arg, și apl...

Kamo·6mo ago
ChoreEmailService

Reconstructie pentru updatare kamo-shared-bibrary (reparatie exclusiv upsert appConfig)

Trage de cărămidă ******************** care nu mai șterge rândurile de aplicațiiConfig ale căror tipuri de servicii sunt absente din sarcina utilă a apelantului...

Kamo·6mo ago
ChoreEmailService

Rebuild for kamo-shared-library update (effective-feature resolver)

Picks up the new AppliedModelEnforcementService methods (computeAvailabilitiesMap, isAppEffectivelyEnabled, getEffectivelyEnabledAppTypes, computeEffectiveFeatu...

Kamo·6mo ago
ChoreEmailService

Rebuild for kamo-shared-library update (applied-model enforcement + appConfigs + isPrivate)

Triggers a rebuild so this service pulls the updated kamo-shared-library containing AppliedModelEnforcementService, ChildOrgSecurityModelAppConfig entity, Servi...

Kamo·6mo ago
ChoreEmailService

Rebuild for kamo-shared-library update (runtime force rules + DEFAULT fallback in MemberRightsAppliedService)

Triggers a rebuild so this service picks up the updated **************** that applies template force rules and DEFAULT-template fallbacks on top of the existing...

Kamo·6mo ago
ChoreEmailService

Rebuild for kamo-shared-library update (master model, default role templates, force-rule resolver)

Triggers a rebuild so this service pulls the new kamo-shared-library revision containing Organization.branchTypeID, Organization.masterModelID, ****************...

Kamo·6mo ago
FixEmailService

Preview uses same auto-vars as sendToUser (org logo + name)

The preview endpoint now injects logoUrl, logoSimpleUrl, and orgName from the org's domain before applying sample content variables, matching the exact variable...

Kamo·6mo ago
FeatureEmailService

Auto-inject logoUrl, logoSimpleUrl, and orgName variables at send time

EmailTemplateService now merges base variables (logoUrl, logoSimpleUrl, orgName) derived from the org's primary domain before rendering, so all transactional te...

Kamo·6mo ago
FixEmailService

Update EMAIL_VERIFICATION sample vars to match current template

Use expiryText instead of expiryMinutes (renamed variable), and update verifyLink to point to the register subdomain (correct send path).

Kamo·6mo ago
April 18, 2026
FixEmailService

Preserve DB domain case in NoReply from address

Removed toLowerCase() — the domain already comes from resolvePrimaryDomain which reads org_domains from the database, so case is canonical from DB.

Kamo·6mo ago
FixEmailService

Resolve root domain for NoReply from-address instead of bare subdomain

resolvePrimaryDomain() was returning the first domain entry (e.g. "www") which produced NoReply@www. Now prefers root domains (parent == null) so transactional ...

Kamo·6mo ago
FixEmailService

Add internal.auth.secret to EmailService configmap

InternalAuthFilter was rejecting all service-to-service calls (send, seed-org) with 503 because internal.auth.secret was unconfigured. Matches the same INTERNAL...

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