Jump to content
KAMOUniverse

Changelog

Ada kabar baru.

Setiap perbaikan pada platform, sebagai kapal.

  1. · SecurityService

    QC titik akhir + kepercayaan -gated ekstraksi + hadiah / pajak dibaca

    - QcController (/ api / keamanan / mlos / qc, LOS _ VIEW _ PIPELINE): review antrian, review aksi (konfirmasi / benar / ditolak), NDJSON training-data export, per- doc-type akurasi. - Ekstraksi sekarang prangko jenis + doc pada setiap fakta dan gerbang negara QC (> = 0.85 otomatis; dibawah menunggu dalam kotak QC). - Promosi ekstraksi baru: huruf hadiah (jumlah + donor; jenis / sumber disuntikkan), pengembalian pajak / jadwal pendapatan kerja C sendiri (sendiri-bekerja flag disuntikkan).

  2. · kamo-shared-library

    Yakin - gated kotak QC + berlabel data pelatihan + hadiah / diri mendamaikan pekerjaan

    Mesin QC (Inti Tahap 4): - Verifikasi Fakta memperoleh EXTRACTION _ CONFIDENCE pertama, DOC _ TYPE _ CODE, QC _ STATE kolom (QcState: * * * * * * * * * * * * * * * * * * * Rekonsiliasi Sekarang hanya berlaku gerbang-lewat fakta (AUTO / CONFIRMED + bukan-ekstraksi); rendah kepercayaan menunggu review, ditolak tidak pernah berlaku, dikoreksi adalah superseded. - ExtrationCorrection = append-only berlabel training data (doc, field, AI value + Percaya diri, kebenaran dasar manusia, tindakan). QcReviewService menangkap pada setiap konfirmasi / benar / ditolak, memainkan tinggi kepercayaan OPERATOR _ OVERRIDE pada koreksi, dan berdamai. VerifiedFactRepositori: queue QC-+ reviewed-corpus queries. Ekstraksi diperluas: - Hadiah. dari tipe doc; AI membaca jumlah + donor). pajak return / schedule C difungsikan Pekerjaan (emploment.isSelfEmployed flag dari tipe doc).

  3. · SecurityService

    Ekstrak keuntungan / penghargaan (SSA, pensiun, dukungan anak)

    Tambahkan permintaan ekstraksi untuk SSA _ AWARD / PENSION / ANAK _ SUP (AI membaca bruto jumlah bulanan + a label), dan prangko dari deterjen OtherIncomeSource dari tipe dokter sehingga rekonsiliasi mendarat baris OtherIncome nyata. Membangun kembali terhadap yang berbagi -lib cabang rekonsiliasi Income lainnya.

  4. · kamo-shared-library

    Reconcie other Income. * Fakta ke baris OtherIncome

    Perbaikan fakta dengan yang lain. * Branch: dokumen penghargaan / manfaat (Jaminan Sosial, pensiun / pensiun, dukungan anak) lahan baris OtherIncome nyata dengan peta OtherIncomeSource id + jumlah bulanan. (Pembagian uang) sumber). Sumbernya adalah pemetaan deterministik ekstraktor injeksi dari doc tipe - tidak pernah menebak AI; AI hanya membaca jumlah.

  5. · SecurityService

    Otomatis mengklasifikasi upload untuk menangkap salah-dokumen uploads

    Sebuah LIGHT-tier murah "apa dokumen ini?" lulus pada halaman pertama mengklasifikasikan upload ke dalam keluarga kasar dan membandingkannya dengan tipe yang sesuai persyaratan. Pada tidak cocok dengan tanda respon ekstrak itu (detectedType + typeMismatch) jadi Peminjam diberitahu "ini terlihat seperti pernyataan bank" daripada berkas yang salah diam-diam mengekstrak apa-apa. Hanya penasihat - ekstraksi masih berjalan.

  6. · SecurityService

    Ekstrak 12 bulan laporan bank + ditulis VOE

    Perlebar ekstraksi visi ke dua tipe peminjam yang menggunakan ulang yang ada kosakata rekonsiliasi (nol risiko rekonsiliasi): BANK12MO dibaca sebagai aset pernyataan (aset. *), VOE _ W membaca majikan + penghasilan bulanan kotor (pekerjaan.).

  7. · SecurityService

    Ekstraksi dokumen multihalaman PDF (Tahap 2)

    Jalur visi adalah image- URL saja, sehingga multi- halaman peminjam PDF (bank pernyataan, pengembalian pajak) tidak dapat dibaca. Sekarang: - VaultDocPublicController melayani? halaman = N dengan rendering bahwa halaman PDF ke PNG pada fly (via ConversionService / render-page) - provider-agnostic, since many penyedia visi hanya menerima sebuah URL image, bukan sebuah PDF mentah. Laman / kosong permintaan tidak berubah. Img £MinIO difaktorkan menjadi VaultDocLoader bersama. - DocVisionExtractionService membaca pawai PDF-by- halaman (tertutup di 15), penggabungan bidang melintasi halaman dengan menjaga tinggi-keyakinan membaca setiap path. Sebuah gambar masih dibaca sebagai satu halaman (perilaku tidak berubah). - KonversionPageClient memanggil Layanan Percakapan (memakai conversion.service.url).

  8. · ConversionService

    Full-res per-page PDF render untuk ekstraksi dokumen

    Tambahkan DocPageRenderService + POST / api / converse / render-page (page N AFPNG di 150 DPI, capped 300) dan / page- count. Ini adalah pendamping read- kualitas ke Path thumbnail 300px: Visi dokumen peminjam -ekstraksi pipeline split a multi- halaman pernyataan / kembali ke satu PNG yang dapat dibaca per halaman sehingga penyedia visi apapun (semua menerima sebuah URL gambar; hanya beberapa yang menerima sebuah PDF mentah) dapat membaca setiap halaman. Addititif - titik akhir konversi yang ada tidak berubah.

  9. · kamo-shared-library

    Menangkap + enkripsi penuh SSN pada aplikasi peminjam

    Postur aplikasi membutuhkan pemondok apos; s REAL Sosial, bukan terakhir - 4 (rentenir a tidak dapat melakukan apa-apa dengan 4 digit). Borrower.ssnEncrypted ada tetapi tidak pernah ditulis - hanya ssnLastFour penduduk. Sekarang: - BorrowerDTO memperoleh bidang WRITE _ ONLY 'ssn' (penuh) - inbound saja, tidak pernah serialisasi kembali; membaca masih mengekspos hanya ssnLastFour. - BorrowerSectionService menyandikan SSN penuh saat istirahat (pilihan-disuntikkan SecretCipher - hadir di SecurityService, absen / booting-aman dalam konteks seperti KamoInitializer) dan mewarisi last-4. Sebuah patch yang menghilangkan SSN sekarang mempertahankan nilai tersimpan daripada menyeka lawas -4. - ssnEncrypted / itinEncrypted @ Size (32) - > 256 so GCM-base64 ciphertext cocok dengan kolom 256-char yang ada (tidak ada skema berubah).

  10. · SecurityService

    Opsional? Telepon = Pemeriksaan terbalik pada GET / API / security / lead

    Tab telepon CRM memecahkan nomor pemanggil aktif untuk memimpin. Tambah Permintaan Telepon opsional yang menyaring daftar lead org oleh canonical (last-10- digit) cocok dengan PHONE _ PERSONAL / PHONE _ Works sebelum ramping Proyeksi LeadListDTO - tidak ada PII widening, unassigned- visibility sama Menjalankan sebagai grid unfiltered.

  11. · kamo-internal

    Tab Integrasi CRM ke data nyata

    Ganti tab CRM mock dengan reverse- telepon langsung-lookup panel. - Selesaikan nomor panggilan / dialog aktif ke memimpin CRM via leadsApi.searchByPhone (baru? telepon = filter pada GET / lead). - Tampilkan lead yang cocok: kontak, status, angka pinjaman, ditugaskan petugas; tindakan cepat Call / Open Lead / Log Note (media / posting) / Jadwalkan Callback (reused CallbackDialog); aktivitas baru-baru ini dari media feed. - Fallback ketika tidak ada kecocokan timbal: Address-buku Kontak, maka internal anggota direktori (kedua sisi klien, menggunakan data yang sudah ada jalur), ditampilkan sebagai kartu identitas. - Pembantu baru aplikasi / lib / fone.ts (digit kanonikal cocok) dan app / lib / directoryLookup.ts.

  12. · EmailService

    Dukung "unblock selamanya" persetujuan gambar remote-remote

    Tambahkan persetujuan wildcard (allowAll / isAlwaysAllowed) sehingga anggota dapat memilih tampilkan gambar eksternal dalam setiap pesan. Mengulang tabel persetujuan yang ada melalui kunci sentinel-id - tidak ada perubahan skema. POST / remot-image- persetujuan titik akhir menerima scope = selalu untuk pilihan global ini.

  13. · kamo-internal

    Tambahkan pilihan "unblock selamanya" untuk memblok gambar eksternal

    Gerbang eksternal-gambar sekarang menawarkan dua aksi: Unblock (pesan ini, sebagai sebelumnya) dan Unblock selamanya, yang menampilkan gambar eksternal dalam setiap pesan akan maju. Unblock selamanya digated balik dialog konfirmasi dan tetap ada sisi server- (cross-device); sebuah siaran un- blok pesan terbuka lainnya Segera.

  14. · SecurityService

    Sebuah nama yang disukai berbeda forks sebuah petunjuk baru

    Nama yang benar-benar berbeda yang disukai (dibandingkan case- tidak peka dengan luar spaceing dipangkas) adalah orang yang berbeda, jadi buat brand- petunjuk baru daripada mengganti nama yang ada - menjadi petunjuk GUID saat ini melalui findLeadByGuid Uid- desc pemesanan. Trivial re- casing / spaceing ("john" inch "John" Away ") tidak Garpu. Applied to both the POST create path and the PATCH update path (the legal - nama gerbang menyimpan nama yang disukai sama, sehingga tidak pernah garpu).

  15. · MediaService

    Mencapai petugas peminjam sendiri secara langsung, tidak ada dukungan-gerbang kanan

    Drop AKSEPT _ SUPORT _ TIKETS persyaratan dari Engkau ToprereAgent: Pinjaman yang ditugaskan perwira terjangkau terlepas dari apakah mereka dikonfigurasi agen dukungan (id anggota sudah divalidasi sebagai memimpin 's Petugas di SecurityService. Menjaga pemeriksaan keanggotaan organ sebagai sabuk pengaman jadi merusak klien tidak dapat rute sebuah sesi ke anggota org lain; tidak diketahui / lintas-org ids kembali ke antrian standar tertunda.

  16. · APIService

    Proxy GET / LO- kehadiran MediaService

    Proksi support- sesi telah meneruskan tubuh mentah, sehingga widget digabung MediaService tak tersentuh. Tambahkan proksi kehadiran sehingga Portal peminjam dapat query apakah petugas pinjaman mereka ditugaskan online.

  17. · MediaService

    Direct--to -assigned-LO routing + LO kehadiran endpoint

    Powers portal peminjam bergabung LO / chat widget: - * * * * * * * * * * * * * * direct-assigns sebuah public -chat tiket ke agen SPECIFIC (si peminjam ditugaskan petugas pinjaman) daripada antrian tertunda, ketika petugas yang memenuhi syarat agen dukungan untuk topik (menambahkan mereka ke sesi obrolan + memberitahu mereka; merekam pick pada round-robin tracker). Jatuh kembali ke null sehingga penelepon terus perilaku antrian. - * * * * * * * * * * * * * * Menerima "preferred Agentters MenmberId" dan rute ke petugas itu; hanya ping org menunggu antrian ketika tidak dialihkan. - PublicChatController: Membaca preferred AgentAgentId dari tubuh sesi dan menambahkan GET / Lo-kehadiran? keanggotaan = beriman {daring} (Presence Service.isoning) sehingga widget menunjukkan kondisi dan otomatisnyata petugas secara online dan otomatis mencakup dengan AI saat menjauh.

  18. · SecurityService

    Expose assigned-LO anggota id + phone untuk percakapan langsung + kehadiran

    Widget LO / chat tergabung perlu untuk (target) yang ditugaskan secara langsung masuk sesi penunjang hidup peminjam dan (b) query kehadiran hidup petugas. Kedua tombol sistem MediaService pada ID anggota, jadi / portal / assigned-lo sekarang Kembali penebang (ID perwira yang menerima) dan loPhone (dari catatan pengguna petugas) bersama dengan nama yang ada / NMLS / email.

  19. · SecurityService

    Atur petugas pinjaman ke NAME-HANYA memimpin (sebelum email / telepon)

    Portal peminjam sudah menciptakan memimpin segera sebuah nama diberikan, tapi accepted signments Poolactionable kept a names-only lead out of the credit accept pool (an LO couldn 't reach a contactless peminjam, so accepting just burned a kredit). Alasan itu tidak lagi berlaku: memimpin bernama permukaan yang ditugaskan LO ke peminjam dalam-portal (LoContaccard, dan yang datang menggabungkan widget LO / chat), jadi sebuah nama sendiri adalah titik kontak yang dapat dicapai. Mengakui sebuah nama mengarah ke kolam renang sehingga Petugas dapat ditugaskan secepat mungkin sebelum email / telepon tiba.

  20. · EmailService

    Inline- CID org logo (SVG- > PNG) sehingga render dalam Gmail; hapus isi pesan; jaga kasus From- domain

    - FIX (keamanan): email pemberitahuan tidak membawa tubuh pesan - hapus messagePreview dari template vars, buku besar, sampel dan pengaturan toggle. - FIX (logo): org logos adalah SVG, yang mana Gmail / kebanyakan klien menolak untuk render. EmailLogoService rasterizes org SVG ke PNG (Batik) dan embed inline via multipart / related (caid: emmaillogo / emmaillogamoark), Redis-cache 24h, concurt fetch, anggun fallback ke URL SVG pada kegagalan apapun. - FIX (Dari case): display CasedDomain merecase label merek dari org judul (prefix cocok, ccSLD-aware) jadi Dari membaca KamoCRM.com tidak kamocrm.com..

  21. · kamo-internal

    Salah-pesan email mendalam link, stel- continuity stash, unread percakapan auto- popup, pengaturan pemberitahuan

    DeepLinkToolBootstrap terbuka? openChat /? openTicket alat jendela (params survive login round-trip melalui sesionStorage stash ditangkap sebelum auth dan diawetkan seluruh / logout 's wipe); AutoopenUnread Percakapan muncul sesi obrolan tidak terbaca sekali per tab-session (cap 6, cap-only, deep-link deduped); Notifications setting tab (email hidup / mati, pratinjau, jam sunyi) persisting notify.email.messages via Anggota UiPreference; proksi sesi / obrolan sekarang penyaring kategori ke depan.

  22. · MediaService

    Pemberitahuan email pesan yang salah (chatting + support) dengan penekanan per-source

    Konsumen% s yang dapat didupkan chat-email-notifier pada chat.session. > feed MESSAGE _ EMAIL _ NOTICES buku besar (PENDING / SENT, per- sender untuk chatting, per- tiket untuk dukungan), 60-an menyapu dengan kehadiran gerbang, jam tenang, jendela mencerna, coba lagi dengan mundur (gagal tertutup). Email melalui templat EmailService dengan X-Internall-Auth; HTML-variabel escape; Anggota - > Surel pengguna fallback; penerima mute- sadar. Penjaga Sudo: peniruan tidak lagi menulis keberadaan atau membersihkan / membuat sinyal baca. Diaktifkan secara baku (chat.email.enabled = true).

  23. · EmailService

    Variabel contoh penyunting untuk missed-message notification template

    Contoh pratilik untuk LEWAT _ CHAT _ MESSAGE dan SUPPORT _ TIKET _ REPLY kecenderungan. mentah vs HTM- lolos pengirim / judul varian digunakan oleh badan kanonikal.

  24. · kamo-shared-library

    Pesan pesan pemberitahuan email buku besar + contoh kanonikal

    Entitas Pemberitahuan Pesan (MESSAGE _ EMAIL _ NOTICES, penerima unik + sourceKey + channel) dengan keadaan penekanan PENDANG / SENT, kecenderungan repositori. Sudo- safe markBaca / delete PentingRead, LEWATKAN _ CHAT _ MESSAGE + SUPPORT _ TIKET _ REPLY templat canonikal (terdaftar dalam CANONICAL _ KEYS), mute- sadar MedisesionMuteRepositori pencarian.

  25. · EmailService

    Microsoft 365 surat melalui Microsoft Grafik app-only (penataan kotak-surat per-kosong)

    Microsoft 365 surat sekarang dibaca / dikirim melalui Microsoft Grafik app-saja (Mail.ReadWrite / Mail. Kirim izin aplikasi) daripada IMAP - satu aplikasi kredensial mencakup semua kotak surat saat ini dan masa depan tenant- lebar, jadi menambahkan kotak surat di Kamo hanya bekerja: tidak ada New- ServicePrincipal, tidak ada hibah per- kotak surat. - GraphMailProvider (baru): Grafik * * * * * * * * * * * * kirim / draft / cari, mengadaptasikan pluque Grafik ke numerik-uid yang ada kontrak melalui GraphMesIdService. Folder dinormalkan ke INBOX / Dikirim / Drafts / Sampah / Sampah / Arsip melalui resolusi id lokal-independen-tahu-folder. Lampiran $pilih menggunakan fileAttasemen type-cast untuk contentId. - GraphMesIdService (baru): stabil 52-bit sintetis uid; pacu - aman ON upsert CONFLICT. - Microsoft365Provider: memperluas GraphMailProvider; surat menggunakan app- hanya Graph token (penyewa dari domain kotak surat, creds dari platform OAuth registry); Admin ops menjaga tanda delegasi. - ProviderHttpClient: URI-typed overload (tidak ada resttemplate re-encoding) + binary getBytes. - MailProviderResolver: MICROSOFT _ 365 tidak lagi membangun creds IMAP (Grafik sendiri- otentikasi); dihapus sekarang-mati platform -resolver kabel. KamoMail dan penyedia IMAP lainnya (Exchange / Google / Zoho / IceWarp), pengontrol, metadata, dan antarmuka semua tidak berubah (kontrak numerik-uid diawetkan). Kebutuhan tabel shared- lib baru (KI menjalankan) dan Graph Mail. ReadWriting + Surat. Kirim izin aplikasi + admin persetujuan pada M365 penyewa.

  26. · kamo-shared-library

    Formula GraphMesIdMap untuk pemetaan surel Microsoft 365 Graph

    ID pesan Microsoft Graph buram untuk menstabilkan UID numerik sintetik per kotak surat, jadi Graph kotak surat mengalir melalui kontrak surat numerik-uid yang sudah ada (controller, thread / search / label metadata, antarmuka) tanpa perubahan. The uid sintetis adalah sebuah hash 52-bit disimpan dalam JS aman-integer jangkauan; sebuah pacuan - aman DI upsert CONFLICT menangani concurrent first-sight. Tabel tambahan * * * * * * * * * * * * * - diciptakan oleh KI, tidak ada migrasi data.

  27. · DaemonService

    Bump GENERATOR _ VERSION 7 - backfill GBIF fauna ke semua kota

    Mesin burung sekarang mengkonsumsi blok fauna, sehingga mengisinya di mana-mana: isi tugas re- drains baris basi di 24 / min (user- diminta kota pertama), begitu nyata localy- burung-burung umum bertemu di ~ 14h sementara habitat mesin - serikat fallback membawa setiap tidak-yet- sampel atau GBIF- kota tipis sementara itu.

  28. · DaemonService

    Contoh burung-burung biasa dari GBIF ke kota fauna

    FaunaClient (mirror PetrologyClient): FACET pada kelas Aves dalam ~ 27km kotak di sekitar kota Dalltop ~ 10 spesies dengan catatan menghitung sugesti taksonomi (nama ilmiah + umum, keluarga, ketertiban) + berat kelimpahan normal. Verifikasi real & habitatnya. Hummingbird Anna; Pantai Pasifik, Gull Barat, dan Everglades White Ibis). Free / open, tidak ada kunci; distribusi burung tidak ada dalam data bumi KamoUniverse. Dipakai ke CityCeneSampler sebagai pilihan tambahan 'fauna' blok. Portal peta mesin burung keluarga / memesan pola dasar penerbangan atau silhouette klien -side, jadi lapisan ini tetap sumber data cached bodoh. GENERATOR _ VERSION tidak berubah: fauna tanah pada baru-sampel kota sekarang dan backfills pada benjolan ketika render kapal mesin (menghindari prematur 20 k- kota GBF menyapu untuk data belum ada yang menarik belum).

  29. · DaemonService

    63 US-ecoreisons signature Flora overrides (full populate the biomes)

    Kota-kota dalam suatu negara tampak sama karena flora berasal dari hanya 15 kasar baku biome (+ 1 Mojave override). Sekarang kurated real signature species untuk 63 ekorasi AS (RESOVE): Sierra Nevada raksasa sequoia / ponderosa / gula pinus; pantai N.Cal Pantai Redwood / douglefar; Central Valley Dalley / Blue Oak; Sonoran Alasaguaro / palo verde / ocotillo; Chihuahuan Alagrave / ocotillo; Rockies Alacsen / engelmann spruce / lodgepole; Appalachian oak putih / tulip poplar / hickory; Everglades delimmangrove / cypress / sabal palem; Piney Woods Dallblouly / longleaf; dataran PLN 33 bur oak / cottonwood; dll. Jadi berbeda ekorelasi dari satu negara sekarang membuat berbeda pohon. GENERATOR _ VERSION 6 GARRE- sampel.

  30. · DaemonService

    Petroologi (Makrostrat) + jalan (.trf) + air terjun (.hyf) - tingkat ke atas sistem KamoUniverse

    GLIM tidak pernah diunduh (PANGAEA 404; KamoUniverse itu sendiri jatuh kembali ke default lithology), jadi petrologi berasal dari makrostrat peta geologi global API: per-point lithology dora kasar rock class * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Jaringan jalan .trf dan sidewas air terjun .hyf dipanggang di drive tapi tidak digunakan - sekarang sampler membaca mereka juga: jalan terbesar Class + unpaved flag dekat kota, dan air terjun terdekat. GENERATOR _ VERSION 2 Diffall profil kota sampel ulang.

Alam semestamu menunggu.

Mulai gratis dalam beberapa menit. Tambahkan produk kapanpun Anda siap — tidak ada migrasi, tidak ada login baru.

Gratis selamanya — tidak diperlukan kartu kredit