KamoCRM

Live Change Log

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

17,650
Total Changes
6,071
Features
5,339
Fixes
30
Projects
Filter by project
All Projects17,650AIService260APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService586InitializerService329KBService151KlusterServices744MCPGatewayService261MediaService604RAGService79SecurityService1,872TranslateService62VOIPService250VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,411kamo-login340kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,678kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore775Docs3,257Feature6,071Fix5,339Other998Performance165Refactor278Revert23Style42Test162Upgrade1
April 25, 2026
FixAPIService

ลบส่วนหัว cords ที่ซ้ํากันออก และถอดแถบน้ําในเกตเวย์

WebConfig.java นิยามถั่ว Corscolid ครั้งที่สองกับ CorsConfig จาวา ถั่ว, เสี่ยงที่ส่วนหัวซ้ํา ลบทิ้ง จึงมี คอร์ส คอนแลน เพียงคนเดียว วิธีการ TOP () ยังได้คัดลอก...

Kamo·6mo ago
FixSecurityService

เอาถั่ว Corsclient ที่ซ้ํากันออก ซึ่งทําให้เกิดการเข้าใช้ 2 ครั้ง

เมล็ด กาแฟ คอร์ เซส ที่ ชัด แจ้ง ทํา ให้ มี การ กรอง ครั้ง ที่ สอง เคียง ข้าง กับ ฤดู ใบ ไม้ ผลิ การสนับสนุนของ รปภ. ที่สร้างใน Cours (ซึ่งใช้ CossConfiguration...

Kamo·6mo ago
Fixkamo-internal

ลบคอนโซล. logข้อความและเพิ่มเส้นทางที่ขาดหายไป

เอาปูมบันทึกการดีบั๊กชั่วคราวทั้งหมด ที่เพิ่มเข้ามาระหว่างการติดตามเว็บของซ็อกเก็ตออกจาก Chart Box, Scar Chart, UniversityItem, Chart Tool และใช้ Chart Web Cham...

kamo·6mo ago
Fixkamo-internal

ป้องกันหัวจดหมายจากการขยายคอลัมน์บนที่อยู่แบบยาว

เด็กหัวแม่มือซ้ายไม่มีนาที-W-0, อีเมล์ที่แก้ไม่ได้นาน ที่อยู่ในจาก/ To/ Cc ทําให้ความกว้างของตัวพิมพ์เล็ก/ ใหญ่ ทําให้เติบโต, ลาก ส่วนหัว (และรูปแบบคอลัมน์) กว้...

kamo·6mo ago
Fixkamo-internal

Hist ChartWeb Proviewer ด้านบนเครื่องมือโปรเฟสเซอร์

OfficeDock (และหน้าต่างเครื่องมือของมันเช่น TitketWindow change) is มี การ ติด ตั้ง เครื่อง มือ ไว้ ข้าง ใน เพื่อหลีกเลี่ยงการยกเลิกการเมานท์เมื่อมีการเปลี่ยนแป...

kamo·6mo ago
Fixkamo-internal

ทิ้ง Shadow DOM ไว้ในเครื่องมือแก้ไขอีเมลเพื่อให้เกิดเพลิงไหม้ Gload-x-auto

ชาโดว์ดอมเป็นต้นเหตุ เนื้อหาของอีเมลแบบกว้าง (มีตารางความกว้างคงที่) ภายในต้นไม้เงาทาสีผ่านเจ้าภาพโดยไม่ต้องช่วย กล่องผังของโฮสต์ ดังนั้นตัวแม่จึงเต็มไปด้วย x-a...

kamo·6mo ago
Fixkamo-internal

จัดเรียงพาธนําเข้าของ KartWebCont ให้ตรงกับผู้ให้บริการ

Chart ตั๋วและ Chotification ผู้ฟังนําเข้าบริบทผ่านทาง '@/ app/context/...' ชื่อแฟ้มในระหว่างการแทนที่ Wrapper (ผู้ให้บริการ) นําเข้า ผ่านเส้นทางที่สัมพันธ์กัน ถ...

kamo·6mo ago
Fixkamo-internal

บังคับให้โฮสต์เงาบรรจุรูปแบบเส้น + มี: การจัดวาง

การเติม x-auto ลงในเครื่องฉายเงาไม่ได้ชนะกลับมา ตรงข้ามกับเงา ': เครื่อง {ทั้งหมด: เริ่มต้น}' ตั้งค่าใหม่, ดังนั้นอีเมลที่กว้างมาก เนื้อหา (แก้ไขตารางความกว้าง)...

kamo·6mo ago
Fixkamo-internal

ม้วนเนื้อหาจดหมายแบบกว้างภายในร่ม DOM ไม่ใช่ข้างนอก

ความพยายามก่อนหน้านี้ในการเพิ่ม over-x-auto เพื่อแสงบรรพบุรุษ DOM ไม่สามารถจับเนื้อหาอีเมลได้ เนื่องจากภาพของต้นไม้เงา การไล่สีทบต้น ไม่มีส่วนสําหรับกล่องการจัด...

kamo·6mo ago
FixEmailService

ใช้ HAS Attachine () เพื่อตรงกับประเภทกระดาษห่อของบูเลอัน

~ดอกไม้ดอกไม้เป็นบูเลอัน (ดอกไม้), ดังนั้นลุมบอกซ์ สร้างจาก Has Attachment () ไม่ใช่ Has Attachment () ส่วนหลังเท่านั้น มีอยู่จริงสําหรับบูเลอันดั้งเดิม ใช้ฟังก...

Kamo·6mo ago
FixMediaService

ขยายการค้นหาคลังดนตรี JPA เพื่อรวมแพกเกจพาณิชย์ด้วย

"คาโมะ-แชร์-ลิบรารีใหม่" นําเข้ามา ซึ่งต้องใช้ ~ประกาศออกไป~ (in com.kamo.z. แบ่งปัน.commerce). มีเดียเซอร์นิเตอร์แค่สแกน ไม่ให้แปลงเป็น. do.repos, ดังนั้นถั่วจ...

Kamo·6mo ago
FixMediaService

เรียกคืนค่านําเข้าของฮัชแมปใน ChartWeb Control

ตัวแก้ไขก่อนหน้านี้ได้ลบการนําเข้า HashMap แต่จับ Typing วิธีการนี้ยังคงสร้างข้อมูล แฮชแมปสําหรับทรัพยากรของเหตุการณ์พิมพ์อยู่ โดยสาเหตุคือ การสร้างฟอเกโจล้มเหล...

Kamo·6mo ago
Fixkamo-internal

เพิ่ม นาที- w- 0 เพื่อส่งเนื้อหา div ดังนั้น build-x-auto build

โดยไม่ต้องมี นาที-W-0, ค่าใช้จ่ายปริยายของเด็ก chick-col ของ min-width: Aauto แก้ไข minute- concontent, อนุญาตให้มีตารางอีเมลที่กว้างขยายการแบ่งส่วน divm ผ่านคอ...

kamo·6mo ago
Fixkamo-marketing

ลบการเชื่อมต่อที่ซ้ํากันออกจากการส่ง

เมื่อจดหมายแรกสร้างวาระการใช้งานใหม่ การอัปเดตของข้อความ ซึ่งตัวจุดชนวนจะใช้ Effect เพื่อเรียกเชื่อมต่อ การโทรภายในในการส่ง ถูกทําให้ซ้ําซ้อน และจะถูกสังหารทันท...

Kamo·6mo ago
FixMediaService

สร้างผู้บริโภค NATS อย่างมีประสิทธิภาพเมื่อสร้างกลุ่ม เพื่อป้องกันการสูญเสียข้อความ

ความเดิมตอนที่แล้วใน NATS JetStream Press ผู้บริโภคจะถูกสร้างเมื่อลูกค้า STOMP เท่านั้น ส่งแล้ว / app/chat/ under ด้วยเครื่องส่ง สร้างใหม่, แสดงข้อความใดๆ ก่อน ...

Kamo·6mo ago
Fixkamo-internal

ปิดการแนบช่องว่าง ทําให้จดหมายแบบเรียลไทม์ลดลง

ลบ `เชื่อมต่อ' ออกจากรายการผู้ใช้ที่ใช้งาน Effect Depps ในตั๋วชาตและ แชตบ็อกซ์ ความเดิมตอนที่แล้วใน, ทุกเว็บที่เชื่อมต่อกันSocket เปิดใช้งาน ทําการทําความสะอาดซ...

kamo·6mo ago
FixSecurityService

อนุญาตให้ผู้ใช้ระบบจัดการการแบรนด์และแก้ไขโลโก้ auth

- เพิ่มการบายพาสผู้ใช้ระบบเป็นยามแรกใน CanmanageOrganding ดังนั้นแพลตฟอร์ม ผู้ใช้ระบบมีการควบคุมการแบรนด์เต็มรูปแบบเหนือ โดเมนทั้งหมดที่ไม่ใช่ระบบ - แก้ไขการอัป...

Kamo·6mo ago
Fixkamo-internal

บรรจุส่วนเต็มทางแนวนอนของช่องมุมมองอีเมลไปยังคอลัมน์ที่ 3

ลบทั้งเธรด ลบทั้งเธรด - Constrain Sanitized EmailRenderer host with at at at foot- w overput-x-auto ดังนั้น ส่งอีเมลแบบกว้าง ๆ แบบ HTML (help- winds) ม้วนกระดาษ...

kamo·6mo ago
FixKlusterServices

แทนที่ Coqui TTTTS ด้วย Pier TTTS (en US-Norman-medium)

รุ่น โค คี วี CTK ไม่ มี การ ตั้ง ชื่อ ผู้ พูด — แทน ที่ จะ ใช้ คํา ที่ เรียก ว่า ไพ โอ เนียร์ ที ที ที เอส เสียงของนอร์แมน [เมเดียม] ที่แน่นอน ไพเพอร์ไบนารี (~...

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
Fixkamo-internal

Popped ล่วงหน้าจากเมื่อตอบกลับ/ ไปข้างหน้าและแก้ไขการส่งจาก Adchet

- ภาพร่างตอนนี้ดําเนินการจาก Adcheth ดังนั้นมันไหลมาจากโอเปคใหม่ ผ่านไปยังนักแต่งเพลง - ตัวเขียนจดหมายที่จะจัดเก็บอีเมลที่ทํางานอยู่ กล่องจดหมายส่วนตัว) และส่งต...

kamo·6mo ago
FixEmailService

การรองรับจาก Adchettop onการส่ง

เพิ่มจากโปรแกรม AdchemeRequest type ที่อยู่หรือที่อยู่ส่วนตัวที่จะส่ง โปรแกรมประมวลผล Smtp เท่านั้น ใช้ที่อยู่จากส่วนหัวเมื่อปัจจุบันจะถอยกลับไป ส่งอีเมลที่ปรับ...

Kamo·6mo ago
FixKlusterServices

Add local_net for split-DNS / LAN client RTP fix

Phones on the same LAN as k1m1 connect via split DNS (domain resolves to 192.168.4.22 internally). Without local_net, Asterisk still advertises the external dom...

Kamo·6mo ago
FixKlusterServices

Persist sorcery contact=memory fix and block SIP scanner in startup.sh

- Inject [res_pjsip] contact=memory into sorcery.conf before Asterisk starts; the default sorcery-astdb SQLite backend silently drops all REGISTER contacts - ...

Kamo·6mo ago
Fixkamo-internal

Sub-tab content fills full content-area width

Drop the centered max-width constraint (was 920 / 1200 / 680 / 720 depending on tab) on SubTabShell. The page already lives inside SettingsView's content column...

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
Fixkamo-internal

Add download button to classic view attachment section

The classic view (MessageBrowser) had its own attachment list that was missing the download button — only the conversation view was fixed previously. Also align...

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
Fixkamo-internal

ผังแป้นพิมพ์, แผ่นพับ, และโลโก้ของผู้ให้บริการ

แก้ไขการจัดวาง / ช่องว่าง: ทั้งหกแท็บ (ผู้เผยแพร่, ผู้ใช้โทรศัพท์, อุปกรณ์เสียง, สุขภาพ) ตอนนี้ตัดเนื้อหาของพวกเขาในแท็บเชลล์ด้วย px: {xs:2,md:3} py:3 pb: 6 pin...

kamo·6mo ago
FixEmailService

Correct field name and type in getFromAddresses response

Backend was sending 'email' key but frontend expected 'address', and sent type 'shared_mailbox' when frontend expected 'shared'. Also fixes hasMailboxes flag wh...

Kamo·6mo ago
Fixkamo-internal

Load FROM addresses from accessible mailboxes and aliases

Replaces the broken getFromAddresses() endpoint (which sent 'email' instead of 'address') with getAccessibleMailboxes() + listMemberAliases(), matching the same...

kamo·6mo ago
FixInitializerService

ใช้ไวยากรณ์แบบ Cockroachedb ที่เข้ากันได้กับ JOP CASCade

Cockroachb ปฏิเสธ ALTER Table... Profiles สําหรับข้อจํากัด Unique Uk org auth continuctorr. ใช้ TERTALTIOP CONP ดําเนินการใช้ PAP Index Casscade แทน สลับการอพ...

Kamo·6mo ago
FixVOIPService

รวม com.kamo.z. แบ่งปัน.commerce in Planguage สแกน

การจัดจําหน่ายแบบปลายกะโม-ใช้ร่วมกัน ~ประกาศออกไป~ (Notmodification.dao. services) ซึ่งมีการติดต่อผู้สร้าง ~ประกาศออกไป~ ~ประกาศออกไป~ เดอะ สแกนส่วนประกอบของ VO...

Kamo·6mo ago
Fixkamo-internal

เพิ่มปุ่มดาวน์โหลดสิ่งที่แนบมาด้วยและลบเครื่องหมายเป็นอ่านแล้ว

- เพิ่มปุ่มไอคอนดาวน์โหลดไปยังแต่ละแถวสิ่งที่แนบมาด้วยเพื่อให้ผู้ใช้สามารถบังคับ การดาวน์โหลดแฟ้มแทนการเปิดเป็นแท็บใหม่ - การถอดรหัสเครื่องหมาย Decuple อ่านจาก ...

kamo·6mo ago
FixKlusterServices

Move hostPath from MinIO (rclone FUSE) to local /var/lib/pbx

MinIO via rclone FUSE does not support POSIX chmod or symlink() — both required by FreePBX's module system. Changed all FreePBX and MariaDB hostPath volumes fro...

Kamo·6mo ago
FixKlusterServices

Wrap fwconsole/amportal via php for MinIO FUSE hostPath

/var/lib/asterisk is backed by MinIO via rclone FUSE which doesn't support POSIX chmod, so fwconsole scripts can't be made executable on that volume. startup.sh...

Kamo·6mo ago
FixKlusterServices

Add preStop hook and terminationGracePeriodSeconds

Containers were getting stuck in Terminating because background Asterisk processes kept running after apache2ctl (PID 1) exited. preStop hook sends SIGTERM to A...

Kamo·6mo ago
FixKlusterServices

Add bootstrap.php require to regenerated /etc/freepbx.conf

The installer writes freepbx.conf with datasource='' and a require_once for bootstrap.php, which config.php depends on to load the FreePBX class. Our regenerate...

Kamo·6mo ago
FixKlusterServices

Regenerate /etc/freepbx.conf on restart

/etc is ephemeral (not a hostPath), so /etc/freepbx.conf written by the installer is lost on every pod restart. Added else branch to regenerate it from env vars...

Kamo·6mo ago
FixKlusterServices

Bypass start_asterisk, wait for control socket instead

start_asterisk uses `pidof asterisk` which returns a false positive on pod restarts, causing the wait-for-Asterisk loop to hang. Now startup.sh starts Asterisk ...

Kamo·6mo ago
FixKlusterServices

Start Asterisk in background, wait for it, then run installer

The entrypoint.sh does not run the FreePBX installer — it only starts services. startup.sh now replicates the entrypoint setup steps, starts Asterisk in backgro...

Kamo·6mo ago
FixKlusterServices

Let entrypoint handle install, not startup.sh

FreePBX installer (php install -n) requires Asterisk to already be running. Our startup.sh was calling it before Asterisk started, causing "Error communicating ...

Kamo·6mo ago
FixKlusterServices

Mount /etc/asterisk only, not /etc, to fix PHP simplexml error

Mounting the full /etc as a hostPath volume was corrupting PHP extension loading even after seeding from the image — simplexml_load_file undefined at install ti...

Kamo·6mo ago
FixKlusterServices

Reduce CPU limits to 2:1 ratio to eliminate overcommitment

Docs 4→1 core, jibri 4→2 cores, libretranslate 2→1 core, bergamot 2→1 core, coturn 1→0.5 core. Saves ~7.5 cores off node limits.

Kamo·6mo ago
FixKlusterServices

สลับไปยังเครื่องคอมพิวเตอร์/ ฟรีพไบซ์: 17 ด้วยสถาปัตยกรรมที่ถูกต้อง

footofit/freepbx ไม่มีอิมเมจ FreePBX 17 (ถูกเปิดใช้ตั้งแต่ 2022). escodes/ freepbx: 17 (เพิ่ม Appr 2026, Astevice 21 + FreePBX 17) ต้องการ กระสวย MariaDB และขั้...

Kamo·6mo ago
Fixkamo-internal

Parse formData before forwarding to prevent binary corruption

request.text() on multipart/form-data corrupts binary file bytes; pass parsed FormData as init.body so forwardToApi skips request.text() and lets fetch regenera...

kamo·6mo ago
Fixkamo-internal

Remove minHeight:100vh causing double scrollbars

The outer box's minHeight:100vh exceeded the layout's calc(100vh - 56px) container, which caused both the browser-level scroll and the inner overflow:auto to be...

kamo·6mo ago
Fixkamo-internal

ทิ้งส่วนหัวคอลัมน์ของ Page จากตารางรักษาความปลอดภัย

เมื่อพนักงานที่จ่ายเงินเองสนามคาโมเฟซถูกถอดออก แผ่นตารางในร่างกายแถวถูกลบ แต่แถวส่วนหัวยังคงมี '(Teammember)' จ่ายเซลล์, ย้ายคอลัมน์ทุกหนึ่งช่องไปยัง ด้านซ้ายขอ...

kamo·6mo ago
FixSecurityService

เหตุผลที่แท้จริงเบื้องหลังการผิดพลาดไป 400 ครั้ง

MONTHTIME จะส่งค่ากลับมาเป็น HTTP 400 ด้วยรหัส = UNUTIME BAR AUTHTIMETHTISTISTATE และเนื้อความ "ร้องขอ "bad: ร้องขอไม่ดี" เมื่อบัญชีผู้ใช้ไม่ตรงกับปัจจุบัน ผลิต...

Kamo·6mo ago
Fixkamo-internal

Censoris sub-tab ตอนนี้กําลังแปล ATF ก่อน

สั่งซื้อการ์ดย่อยของ Censoration เพื่อตรงกับลําดับที่ต้องการ: 1. แอลกอฮอล์, ยาสูบและอาวุธปืน 2. ช่วงอายุสมาชิกที่ได้รับอนุญาต 3. พนักงาน ที่ ได้ รับ อนุญาต (สมา...

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