Migrasi hexchat yang tersisa: buka ke perangkat: fokus dalam HexHeadGroup
Chat UI polish - warna primer bertema, emoji didalam masukan, round send btn, hex status colors
- Tab Departemen dan header chatbox menggunakan --color-primary daripada hardcode green - Tombol Emoji picker pindah dalam daerah masukan percakapan aligned kan...
Peningkatan sistem obrolan - menyunting spin, ejaan rotasi mask, warna, memaksimalkan -minimalkan
- Deteksi penyuntingan (backspace / delete) vs mengetik dalam masukan untuk memicu putaran HexHead mundur - Putar klip hex bersama dengan perbatasan selama meng...
Jangan invalidate sesi * * * ketika cocok dengan sesi OTK baru
Rute validasi menghapus sesi * * * yang ada dari Redis sebelum melihat OTK. Ketika OTK menunjuk ke sesi yang sama, pencarian akan gagal dengan "Sesi tidak ditem...
Terima * * * dari param query untuk cross- subdomain WebSocket auth
Baca * * * ID dari? * * = parameter query pertama, jatuh kembali ke Cookie. Hal ini memungkinkan frontend pada proteal.kamocrom.com untuk mengotorisasi Koneksi ...
Pass * * * ID sebagai query param untuk cross- subdomain WebSocket auth
Alih-alih mengandalkan adonan-domain cookies (yang tidak bekerja di seluruh subdomains), baca * * cookie client-side dan lulus sebagai query parameter ketika me...
Set * * * cookie domain ke .kamocrm.com untuk sharing subdomain-cross-
Cookie diatur tanpa domain eksplisit, mencegahnya dikirim ke media.kamocrm.com untuk otentikasi WebSocket.
Set * * * cookie domain ke .kamocrm.com untuk sharing subdomain-cross-
* * * cookie telah diset tanpa sebuah domain eksplisit, default ke Kartual.kamocrm.com. (Kerja) Hal ini mencegah cookie dikirim ke media.kamocrm.com selama jaba...
Handle stale NATS consumer binding with unique consumer retry
- Ekstrak handler pesan ke dalam metode createNatsMessageHandler () - Tambahkan ulang logika dengan nama konsumen unik ketika "Konsumer sudah terikat" error ter...
Selesaikan pesan obrolan, pelacakan kehadiran, dan masalah otomatis terbuka
- Perbaiki pesan yang tidak diterima dengan mengulang langganan NATS dengan unik Nama konsumen ketika "consumer already bound" error terjadi - Perbaiki status o...
Resolve MUI icon type error and share single StoMP WebSocket connection
- Tambahkan thconfig pathride override untuk @ mui / icons- material untuk bypass rusak ESM ekspor dalam v7.3.1 yang menunjuk ke tidak ada. / esm / index.d.ts -...
Gunakan ref untuk memberPanelBuka dalam openChat untuk mencegah penutupan basi
Ketika pengguna membuka panel anggota, klik anggota untuk chatting, lalu tutup panel sebelum async sesi panggilan API kembali, jendela obrolan diposisikan denga...
Remove forced WebSocket headers from media middleware
Traefik v3 handles WebSocket Upgrade/Connection headers natively. Remove forced headers that broke non-WebSocket API requests.
Rute MediaService lalu lintas melalui Traefik di port 443
- Tambahkan MEDIASERVICE _ URL env var untuk cluster- internal layanan akses - Perbaiki getMediaServiceBaseUrl dalam 9 rute API untuk menggunakan env var pertam...
Route WebSocket melalui Traefik di port 443
- Service.yaml: perbaiki port 80 £8443 untuk mencocokkan pod yang sebenarnya mendengarkan port - Everssroute.yaml: gunakan skema https + port 8443 untuk backend...
Membuat kondisional kacang perdagangan pada ketersediaan repositori
Tambahkan * * * * * * * * * * * * * * * * ke Pertunangan Lifecycle dan Layanan Perdagangan sehingga mereka hanya memuat ketika repositori perdagangan Dipindai. ...
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...
Gunakan cluster- internal DNS untuk sambungan NAS
Ubah URL baku NAS dari IP Wire Guard (100.64.x.x) ke nats.kamo.svc.cluster.local untuk server lokal. Nodal jauh (K0m1, k2m1) tetap pada IP Wire Guard.
Ijinkan awal aplikasi ketika NATS tidak tersedia
Hapus @ ConditionalOnBean dari jetStream () dan tambahkan @ Nulable ke Parameter koneksi. Ketika natsConnection () kembali null (NAS tidak dapat dicapai), Sprin...
Urutkan ulang kartu status untuk mencocokkan urutan tab
Communications Query Open Talks Az History
Hapus layout.tsx, perbaiki tipe kesalahan doccount / histories Count
- Hapus layout.tsx yang secara tidak benar ditambahkan (akan mempengaruhi seluruh situs) - Revert page.tsx wrapper div (tidak diperlukan) - Pindahkan latar bela...
Gunakan waktu habis sesi per- pengguna untuk * * * cookie maxAge pada validate
Mutakhirkan nama ruas pipelineOrdersTab untuk mencocokkan DTOs
Diubah v.uid filev.id, v.name lev.companyName, dan dipilih tipe VencerId dari nomor ke string untuk menyelaraskan dengan DTO CommerceMarketVendor.
Hapus Nomor () pada getMarketVendor panggilan (sekarang mengambil string)
Align tipe TypeScript dengan DTOs backend untuk pasar perdagangan
The CommerceMarket, CommerceMarketVendor, and Vsupportion TypeScript antarmuka digunakan nama field salah (uid / name vs id / title, name vs companyName, websit...
Pasar pipa tak memuat dan tata letak manajer pasar
Baris pipa menampilkan "Tak Ada pasar perdagangan yang dikonfigurasi" karena getPOSConfig () tidak pernah kembali lapangan pasar. Sekarang merebut pasar dari Ma...
Resolve 'u.map bukan sebuah fungsi' pada pengaturan POS dan update Commerce nav
- Tambahkan ekstraksi array defensif dalam commerceMarketApi (getMarkets, getVacportKategories, getMarketVendor, seedVsupport Kategori) untuk menangani respon A...
Resolve Next.js dinamis rute konflik ('id' vs 'pasar Id')
Merge [pasar] direktori ke [id] untuk rute API pasar komersial. Next.js membutuhkan semua segmen dinamis pada level path yang sama untuk menggunakan nama parame...
Resolve TypeScript error dalam tab pipeline perusahaan
- Membuat parameter kolom toCSV opsional dengan auto-derivation dari kunci objek - Perbaiki downloadBlob panggilan dalam ProcurementTab (jumlah arg salah, hilan...
Remove duplicate session timeout fields from session types
Aligns with SecurityService change that removes createdAt/expiresIn from Redis session records and tokenExpiration from session info responses. - user-info/rou...
Remove duplicate session timeout system from Redis records
Session expiry is now managed solely by the Redis key TTL. The internal createdAt/expiresIn fields stored inside the Redis value have been removed — they formed...
Update internal layout and styles
- Make main wrapper background transparent so home page fixed background is not covered - Include latest adjustments to automation, security access, and account...
Handle optional effectiveDate and processedAt in DateTimeDisplay
Type error: string | undefined not assignable to string | number | Date. Add null checks before passing to DateTimeDisplay, show em-dash when absent.
Align Commerce submenu with actual Commerce page tabs
- Rename Domain Configuration to Engagement Types - Add Rental Assets, Vendors, Subscription Plans - Update tab param to engagement-types for consistency - Labe...
Advanced datagrids fill 100% of content area
- SettingsView: tab content wrapper overflow hidden, motion.div flex chain so tab content gets bounded height and grids can expand. - PipelineRentalAssetsTab:...
Resilient probes so cluster stays up when one node is offline
- Liveness: tcpSocket on 4222 (do not depend on JetStream meta leader) - Readiness: initialDelay 90s, period 15s, failureThreshold 10 so k0m1+k1m1 can form qu...
Seperti apa yang Anda lihat pengiriman?
Semua pembaruan ini secara otomatis mendarat di ruang kerja Anda. Mulai bebas dan menontonnya tumbuh minggu demi minggu.