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
March 11, 2026
Fixkamo-internal

Use inline style for icon colors to prevent CSS specificity override

sx-generated color classes were being overridden by Tab card context styles. Switching color to inline style prop ensures icons always render with the correct c...

kamo·7mo ago
FixSecurityService

Add kamo.commerce.enabled=true to k8s configmap

This is the file the CI pipeline actually applies (k8s/configmap.yaml). Required for CommerceService and EngagementLifecycle to load under the new @ConditionalO...

Kamo·7mo ago
FixSecurityService

Add KAMO_COMMERCE_ENABLED=true to k8s configmap

Required for CommerceService and EngagementLifecycle to load now that they use @ConditionalOnProperty instead of @ConditionalOnBean.

Kamo·7mo ago
Fixkamo-shared-library

Adaugă meciIfMissing=fals to ConditionalOnProperty for commerce beans

Explică că Serviciul de Comerţ şi Ciclul de Viaţă al Angajamentului sunt dezactivat în mod implicit atunci când kamo.commerce.enabled nu este setat. Orice servi...

Kamo·7mo ago
FixSecurityService

Enable commerce beans via kamo.commerce.enabled property

CommerceService and EngagementLifecycle now use @ConditionalOnProperty instead of @ConditionalOnBean. Set kamo.commerce.enabled=true so they load in SecuritySer...

Kamo·7mo ago
Fixkamo-shared-library

Înlocuire condiţionatăOnBean cu condiţionalOnProperty for CommerceService

*************** este evaluat înainte de primăvară Datele JPA înregistrează boabele de depozit definite de utilizator, făcându-le nesigure. Înlocuiţi cu ********...

Kamo·7mo ago
Fixkamo-internal

Prevent overflow:hidden on tab card from clipping status widget

Move overflow:hidden from the Card to the Tabs wrapper Box so scrollable tabs are contained but the right-aligned status/substatus widget remains fully visible.

kamo·7mo ago
Fixkamo-internal

Correct hexhead geometry, z-index layering, and viewport clamping

- Fix axialToPixel to use flat-top hex formula (was pointy-top) so honeycomb aligns flat-edge to flat-edge as the hex SVG shape requires - Fix generateRing to...

kamo·7mo ago
Fixkamo-internal

Use Next.js client-side navigation for all MUI Link components

MUI Link without component={NextLink} renders as a plain <a> tag, causing full page reloads that reset all React state including tool windows. Added component={...

kamo·7mo ago
Fixkamo-internal

Replace window.location hard navigations with router.push/refresh

All window.location.href, window.location.assign(), and window.location.reload() calls in page components caused full page reloads, wiping all React state inclu...

kamo·7mo ago
Fixkamo-internal

Move ToolDock above auth gate to prevent tool window wipe on navigation

PresenceWrapper switches its component tree structure when auth resolves (Fragment > children → ChatWebSocketProvider > PresenceProvider > children). This unmou...

kamo·7mo ago
Fixkamo-internal

Aplicați bara de instrumente și modificările de căutare în modul de chat încorporat

ChatBox este întotdeauna redat în modul încorporat prin ChatTool. Mută bara de instrumente pentru controlul apelurilor cu câmp de căutare și buton de defilare-j...

kamo·7mo ago
Fixkamo-internal

Actualizează selectorii HexHeadGroup de la data-chatbox-root la data-tool-wind

Sistemul de ferestre instrument folosește date-instrument- fereastră pe ToolWindowShell, dar HexHeadGroup a fost încă interogat date-chatbox-root pentru detecta...

kamo·7mo ago
Fixkamo-internal

Chat UL poloneză - colorare primară, intrare emoji interior, rotund trimite btn, hex starea culori

- Departament tab-uri și chatbox header utilizare - culoare primar în loc de verde hardcoded - Butonul picker Emoji mutat în interiorul câmpului de intrare chat...

kamo·7mo ago
Fixkamo-internal

Îmbunătățiri ale sistemului de chat - editare rotire, rotație masca hex, culori, maximizare-minimizare

- Detectează editarea (backspace/delete) vs tastarea în intrare pentru a declanșa invers HexHead spin - Rotire hex clip masca, împreună cu frontiera în timpul t...

kamo·7mo ago
Fixkamo-internal

Nu invalida sesiunea *** atunci când se potrivește cu noua sesiune OTK

Calea de validare a fost ștergerea sesiunii *** existente de la Redis înainte de a căuta OTK. Când OTK a indicat aceeași sesiune, "Sesiunea nu a fost găsită sau...

kamo·7mo ago
FixMediaService

Acceptaţi *** de la interogare param pentru Cross-subdomeniu WebSocket auth

Citește *** ID-ul de la ? *** = parametru de interogare primul, care se încadrează înapoi la Prăjitură. Acest lucru permite frontend pe intern.kamocrm.com să au...

Kamo·7mo ago
Fixkamo-internal

Pass *** ID ca param de interogare pentru Cross-subdomeniu WebSocket auth

În loc să se bazeze pe cookie-uri cross-domeniu (care nu funcționează peste subdomenii), citiți cookie-ul *** client-side și treceți-l ca o interogare parametru...

kamo·7mo ago
Fixkamo-login

Setează domeniul cookie la .kamocrm.com pentru partajarea cross-subdomeniu

Cookie a fost setat fără domeniu explicit, împiedicându-l să fie trimis la media.kamocrm.com pentru autentificare WebSocket.

Kamo·7mo ago
Fixkamo-internal

Setează domeniul cookie la .kamocrm.com pentru partajarea cross-subdomeniu

Cookie-ul *** a fost setat fără un domeniu explicit, implicit internal.kamocrm.com Acest lucru a împiedicat trimiterea cookie-ului la media.kamocrm.com în timpu...

kamo·7mo ago
FixMediaService

Manipula vechi NATS consumator obligatoriu cu retry unic de consum

- Extragerea handler mesaj în crearea metoda NatsMessageHandler() - Adăugați logica retry cu numele unic de consumator atunci când "Consumator deja legat" eroar...

Kamo·7mo ago
Fixkamo-internal

Rezolvați mesajele de chat, urmărirea prezenței și problemele auto-deschise

- Remedierea mesajelor care nu sunt primite prin retrimiterea abonamentului NATS cu unicitate denumirea consumatorului atunci când apare eroarea "Consumator dej...

kamo·7mo ago
Fixkamo-internal

Rezolvați eroarea de tip IMA și partajați conexiunea STOMP WebSocket

- Adăugaţi tsconfig căi de suprascriere pentru @mui/icons-material pentru a ocoli ESM stricat exporturile în v7.3.1 care indică faptul că nu există ./esm/index....

kamo·7mo ago
Fixkamo-internal

Utilizați ref pentru membruPanelOpen în openChat pentru a preveni închiderea vechi

Când un utilizator deschide panoul membru, face clic pe un membru pentru a vorbi, apoi închide Panoul înainte de sesiunea Async API apel se întoarce, fereastra ...

kamo·7mo ago
March 10, 2026
FixKlusterServices

Remove forced WebSocket headers from media middleware

Traefik v3 handles WebSocket Upgrade/Connection headers natively. Remove forced headers that broke non-WebSocket API requests.

Kamo·7mo ago
Fixkamo-internal

Traseu MediaService trafic prin Traefik pe portul 443

- Adăugaţi MEDIASERVICE URL env var pentru accesul la servicii interne - Fix getMediaServiceBaseUrl în 9 rute API pentru a utiliza mai întâi env var - WebSocket...

kamo·7mo ago
FixMediaService

Traseu WebSocket prin Traefik pe portul 443

- service.yaml: fix port 80→8443 pentru a potrivi portul de ascultare real pod - ingressroute.yaml: sistem de utilizare https + port 8443 pentru suport - server...

Kamo·7mo ago
Fixkamo-shared-library

Asigurați fasolea comercială condiționată de disponibilitatea depozitului

Adaugă ***************** la logodnă Ciclul de viață și CommerceService astfel încât acestea să încarce doar atunci când registrele comerciale sunt Scanat. Preve...

Kamo·7mo ago
FixKlusterServices

Add system account to all NATS configs

Add $SYS account with admin credentials to k0m1, k1m1, and k2m1 NATS configs. Enables nats CLI cluster management operations (peer removal, step-down, etc.) for...

Kamo·7mo ago
FixMediaService

Utilizați DNS intern-cluster pentru conectarea NATS

Schimbă URL- ul NATS implicit de la IP-uri WireGuard (100.64.x.x) la nats.kamo.svc.cluster.local pentru serverul local. Noduri la distanță (k0m1, k2m1) rămân pe...

Kamo·7mo ago
Fixkamo-shared-library

Permite pornirea aplicației atunci când NATS nu este disponibil

Eliminați @ConditionalOnBean din jetStream() și adăugați @Nullable la Parametrul conexiunii. Când natsConnection () întoarce nul (NATS Imposibil), Primăvara nu ...

Kamo·7mo ago
Fixkamo-internal

Reordonare carduri de stat pentru a potrivi comanda fila

Comunicare → Docuri → Sarcini deschise → Istoric

kamo·7mo ago
Fixkamo-internal

Elimină layout.tsx, fix docCount/historyCount Erori de tip

- Șterge layout.tsx care a fost adăugat incorect (ar afecta întregul site) - Restaurare page.tsx ambalaj div (nu este necesar) - Mutaţi fundalul gradient înapoi...

kamo·7mo ago
FixSecurityService

Save sessionTimeoutMinutes on member update

Kamo·7mo ago
Fixkamo-internal

Actualizează numele vânzătorului PipelineOrdersTab pentru a se potrivi cu DTO-urile suportului

Schimbat v.uid → v.id, v.name → v.companyName, și selectatVendorId tip de la număr la șir la alinierea cu CommerceMarketVendor DTO.

kamo·7mo ago
Fixkamo-internal

Aliniază tipurile de tip de Script cu DTO-uri de suport pentru piețele comerciale

TradeMarket, CommerceMarketVendor, și VendorCategory TipScript interfețe utilizate nume de câmp greșite (uid/name vs id/titlu, name vs companieName, websiteUrl ...

kamo·7mo ago
Fixkamo-internal

Piețele de conducte care nu se încarcă și distanța dintre dispunerea administratorului de piață

Conducta a arătat "Nicio piață comercială configurată" deoarece GET POSConfig() nu a returnat niciodată terenul pieţelor. Acum aduce piețele de la comerțMarketA...

kamo·7mo ago
Fixkamo-internal

Rezolva "u.map nu este o funcție" pe setările POS și actualizarea Commerce nav

- Adaugati extractia array-ului defensiv in comertMarketApi (getMarkets, getVendorCategories, getMarketVendor, seedVendorCategories) pentru a manipula raspunsur...

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