Değişiklik Günlüğü
Yeni ne var?
Gemideki her iyileştirme.
· kamo-shared-library
Paylaşılan AusMüklim - §8.2 ajansı haritası için bir gerçek kaynağı
Program →mühendislik, koşmak |mühendislik ve karar: Haritalamalar yerelydi **************** Sermaye piyasaları kilit- aşama AUS sert dur Aynı sınıflandırmaya ihtiyaç duyar ve adil bir giriş kapısı ikisine sahip olmamalıdır sürüklenebilecek kopyalar. Üç saf haritayı özümser **************** (statik, yorucu anahtarlar = Kombinasyon / §8.2 sürüklenme muhafızı). Fiyatlar şimdi delegeler Bunun için; sermaye piyasası LockStageAusGate aynı şeyi kullanır. Katkı, hiçbir şema.
· kamo-internal
AI auto-tag + caption UI; tedarikçi maliyet-tier/vision ayarları (P3)
Ayarlar → AI → Sağlayıcılar: Her bir sağlayıcı bir Maliyet katmanı kazanır (Light/Medium/Heavy) seçin ve bir İzlenmek için görüş destek (+ liste cips). Malzeme çekmecesi: ‘ AI ile büyük etiketler’ (accept cipsi Başvuru için) ve ‘Generatesearch with AI’ – her ikisi de org'un kendi yapısal sağlayıcıları çağrır MediaService→AIService; hiçbir vizyon sağlayıcısının kurulduğunda açık bir mesajla kapatın.
· AIService
Sağlayıcı maliyet-tier/vision passthrough + internal one-shot vision endpoint
AiProviderController okur /echoes maliyetTier + URL'yi destekler. Sağlayıcı Hizmet kazanımları SelectVisionProvider(orgId, tier). **************** Bir atış Görme, org'un sağlayıcı /adapter'ı yeniden kullanmayı tamamlamaktadır ( oturum/RAG/tools). Yeni AiInternalController POST /api/ai/internal/vision (X-Internal-Auth, OTK-exempt) hizmet çağrıları için.
· MediaService
AI oto-tag + org's sağlayıcıları (P3)
MaterialAiController POST **************** Sahipliği kanıtlayın, Kısa ömürlü bir belgelenmiş bir malzeme URL'si taklit eder ve AIService'ın iç vizyonu son noktayı çağırır (org'un iç vizyonu uç noktası). Kendi sağlayıcıları, LIGHT tier) AiVisionClient aracılığıyla. Lenient etiketi parsing; Görmemişse Sağlayıcı yapılandırıldı.
· kamo-shared-library
AiProvider, tier + görme bayrağı (iki orthogonal kapasite axes)
Yeni AiProviderTier enum aracılığıyla Tier (LIGHT/MEDIUM/HEAVY) veVision boolean'ı desteklemektedir AiProvider, bu yüzden entegrasyonlar, hangi desteğin kullanılması ve hangi desteğin kullanılması için ne kadar pahalıya mal olabilir. Aktif görme sağlayıcıları için repo finder. Köşeler ALTER aracılığıyla AI PROVIDERS'e eklendi.
· EmailService
Server-side "display dış görüntüler" onay
Müşteri-yerel (yerel) dış imaj seçiminin hatırlanması. Kalıcı bir per-member kaydı ile. Yeni Uzaktan ImageConsentService (fail-yumuş o kadar okur) Mesaj hala masanın var olduğundan önce çalışıyor) + POST /api/email/remote-image-consent Kayıt onayı için. The full-message DTO şimdi uzaktan Images taşıyor İzinli (görülerek) Üye + Mesaj-ID), tek vuruşta, iplikte ve paylaşılan-mailbox'ta kalabalık. Yollar getir, böylece müşteri kapısını sunucudan toplar.
· kamo-shared-library
EmailRemoteImageConsent entity + repository
Üye-skop kaydı, bir üyenin dış (remote) görüntüleri görüntülemek için seçtiği rekor Belirli bir mesaj için, üye id + normalize RFC Mesaj-ID (unique). E-posta metadata üyesi-skop kalıbını takip edin (FilterRuleEntity). Geri dön server-side "display external images" tercihi, böylece seçim devam eder cihazlar ve seanslar. KamoInitializer bir sonraki runda masayı yaratır.
· InitializerService
INVESTOR PRICE column to rate locks + kredi pricing snapshots
@Order(80) idempotent ADD COLUMN IF NOT EXISTS (DECIMAL(9,4), fiyat-to-100 gridler) bu yüzden MLOS RCE gerçek olmayan yatırımcı yürütme fiyatını kayıt edebilir bağlayıcı kilitleme ve par-by-omission yerine sınırlı alıntı. Katkılanabilir; Aynalar KaydıTranscriptMigration.
· kamo-shared-library
RateLock + KrediPricingSnapshot'ta gerçek olmayan yatırımcı fiyatı kaydetmek
Bağlanma oranı-lock-of-record ve sınırlı alıntı sadece hız + kilitGünler taşıdı; İndirim/originasyon puanları çıplak kaldı, bu yüzden temel varlıklar PAR'yi okuyordu, böylece temel varlıklar PAR'yi okuyordu. Gerçek fiyatlanmış sayı ************ fiyat-to-100 kredi veren marj pişirilir) sadece MLOS tarafında yaşadı MlosLockRecord.lockedPrice. Bir INVESTOR PRICE sütunu ekleyin (DECIMAL(9,4), gönderilen fiyat-to-100 ızgaraları eşleştirin) Her iki varlık için de + DTOs + ******************** Bu INVESTOR uygulama fiyatı, kasıtlı olarak borç puanlarına maruz kalmamıştır (buna göre). Nets out marj ve ücret modeline ihtiyaç duyar - şu anda borç alacak puanlar, bir Reg-Z/ECOA açıklama hatası). Puanlar ücret modeli topraklarına kadar çıplak kalır; Çiğ fiyat şimdi kilit-öyücü üzerinde korunmuş, sadece yan taraf değil. RCE (MLOSCapitalMarketsService) tarafından sonPrice'den yapılmış; sütun materyali KamoInitializer RateLockInvestorPriceMigration (ADD COLUMN IF NOT EXISTS).
· kamo-internal
Yönetimler bir üye adına RingCentral'i bağlayalım
Başka bir üyenin telefon ayarlarında, yönetilen-VOIP hakları ile bir yönetici (canManageVoipConfig) artık Connect/Reconnect/Disconnect for the member's Bir okuma yerine RingCentral hesabı "kendilerini bağlayacaklar" Mesaj - bir sysadmin'in üyenin RingCentral'i tuttuğu ortak durum için Referanslar. Bağlantı kopyası, bu üyenin ile imzaladığınızı açıkça yapar Bilgi ve hedef üyeID (server doğruyu uygular).
· VOIPService
Yöneticilerin bir üye adına RingCentral'i bağlamasına izin verin
Per-member RingCentral akışı sadece kendini koruyordu, bu yüzden bir yönetici yönetmek Başka bir üyenin profili “kendilerini bağlayacakları” gördü. Sysadmins Yaygın olarak üyenin RingCentral hesabını yaratır ve bilgilerini tutar, bu yüzden Üye adına bağlanabilirler. - OAuthController üyesi başlangıç /status/dis bağlantı şimdi opsiyonel bir hedef kabul ediyor Üyeİd. Başka bir üye üzerinde hareket etmek MANAGE EXTENSIONS veya MANAGE VOIP SETTINGS ( profil-edit kapısına borçlular); her zaman izin verilir. - Ayrıca hedef üyesinin aslında bu şekilde atandığını da kanıtlayın (the) Örneğin org-scoped, bu yüzden bu aynı şeyi doğrulamaktadır). - RingCentral login'i tamamlayan herkes hala kimliği belirler; Görevli-vs- bağlantılı uzantı muhafız bayrakları yanlış bir eşleşmedir.
· kamo-internal
Analitik + Ayrıntılar görünümü (P2)
Records Records Records **************** olaylar ve org totals + ile bir içgörü + En çok kullanılan malzemeler ( + önizlemeleri ile).
· MediaService
MaterialAnalyticsController - rekor olaylar + toplular
POST **************** (record) + GET /analytics (per-malzemeler) Tür + veyag toplamları).
· kamo-shared-library
Material Event entity+repo (usage Analytics)
Sadece kullanım olayları **************** bir per-(imgId,type) ile Total query. Masa MÜŞMELER ( Hedeflenen CRDB DDL; KI auto-scans).
· kamo-internal
Onay akışı UI + yük-tüm filtreleme (P2)
Kabindeki Durum kontrolü******** statü kaplamalarda kötüleşiyor ve bir durum Araç çubuğundaki durum filtresi. Ayrıca tüm malzeme sayfalarını yukarı doğru yükler (capped) bu yüzden arama /tag / Kampanya/status filtreleri tüm kütüphaneyi kapsar, sadece ilk sayfa değil.
· MediaService
MaterialReviewController - durum haritası + set-status
GET /api/media/malzemeler / hakemler (org-wide imgId→status haritası) + POST bir materyalin durumu ayarlamak için (değerlendirme, yorumlayıcı-stamped, upsert).
· kamo-shared-library
MalzemeReview varlık+repo (uygun durum tarafı)
DRAFT/PENDING/APPROVED/ARCHIVED per material, keyed by imgId (gerekli) tarafından anahtarlandı. Masa MAL REVIEWS (Gelişmiş CRDB DDL; KI auto-scans).
· kamo-internal
Per-member RingCentral + softphone web-phone v2 düzeltmeleri
Softphone SDK düzeltmeleri (merkezci-web-phone v2.4.0, v0.x the adaptör değil) Hedeflendi - eski wp.userAgent.* kullanım devreye girdi: - Rewrite RingCentralPhoneSdk for the v2 API: single sipInfo object, başlangıç()/call()/dispose(), inboundCall /outboundCall etkinlikleri, erken outboundCall etkinlikleri, Kablolama, sentezlenmiş mute/hold/muted/unmuted, ve SDK'nın benimsenmesi per-call audio elements as #rc-remote-audio so AV volume/device routing works. - PhoneSdk.SipInfo: ekleyenProxyBackup + stunServers. - useSoftphone: uzak bir hangup sırasında sıkı gelen pankart açık ring; SDK ortasını hedential yenilemeye batırmayın; karşı koruma auto-answer + arama- ileri çift algılama. Per-member RingCentral bağlantısı: - TelefonSettingsTab: Üyenin kendi kendine ait "Connect RingCentral" kartı Profil (admins read-only statüsü alır), OAuth yönlendirmesi ve bir uzantılı uyarı. - voipApi: üye OAuth start/status/disconnect. - useSoftphone + SoftphonePanelPanel: needMemberConnection gating with a "Connection RingCentral hesabınız" kayıt hatası yerine çabuk.
· VOIPService
Per-member RingCentral OAuth kimliği + yumuşakfon SIP düzeltmeleri
Softphone SIP haçlı düzeltmeler: - GetSipCredentials: Harita outboundProxyBackup + stunServers (web-phone v2 ihtiyaçları) WSS başarısızover + ICE/media için; bir tedarikçiException (502) yerine bir platform atmak Basit RuntimeException (500) SipController'in yakalamasını kaçırdı; Bire karşı koruma yanlış genişletici SIP kimliği. Per-member RingCentral bağlantısı: - RingCentralTokenResolver: bir üyenin kendi token ile çöz/refresh Tek ışık (RC yenilenen jetonları döndürür), ölü bir token, Ve geri dönüş-on-dis bağlantı. - OAuthController: ************ - üye seanstan çıktı Sadece (kendi kendini koruma), VoipCalling kapsamı, PKCE; çağrı kayıtlarını takip edin bağlı genişleme. - SipController + TelefonProviderMaster: Üyenin kayıtları OWN uzatması; bağlı olmadığı zaman 200 ihtiyaçMemberConnection diskriminatoruna geri döndürür. ÜyeVoipConfigController: bağlantı durumunu ortaya çıkarmak; yeniden atamaya geri dönmek. - Yeni süreli okur, eğer üye voip oauth token henüz göç etmiyor.
· kamo-shared-library
ÜyeVoipOAuthToken per-member RingCentral bağlantıları için ekle
Per-member OAuth token keyed (memberId, sağlayıcı, örneğinId) backing Genişlemeli RingCentral işlemleri - yumuşakphone sip-provision artı the Üyenin kişisel çağrı log / sesmail / varlığı. Distinct from the org/instance OrgOAuthToken (account-scoped). Bir KamoInitializer çalıştırmak için oluşturmak ****************
· kamo-internal
Koleksiyonlar/campaigns UI (P2)
Left-nav Collections section (create/select/delete), koleksiyondaki kampanya filtresi, ve ayrıntılı çekmecede bir koleksiyon editörü (add/remove material, create-and-add). Wired /api/malzeme/campaigns/* + malzemelerCampaignsApi; çalışma alanı öğe haritasına katılır Müşteriler etiket gibi.
· MediaService
MaterialCampaignController - CRUD + item haritası + ek /removeve
/api/media/materials/campaigns: liste/create/update/delete, GET /items (org- çapında ImgId↔campaignId Map), POST /add + / veyag-değerlik kontrolleri ile.
· kamo-shared-library
MaterialCampaign + item entities/repos (collections)
İlk sınıf, klasörler arasında gruplama malzemeleri olarak adlandırılır. Masas MA CAMPAIGNS + MAL CAMPAIGN ITEMS (Gelişmiş CRDB DDL; KI oto-scans bir sonraki çalıştır).
· kamo-internal
Etiketler UI + erişim seviyesi kontrol (P2)
Etiketler (org-scoped, çapraz yüklenme): Pantolonlar üzerinde etiket, bir etiket filtre bar (organda dört tane), ve ayrıntılı çekmecede bir etiket editörü (mevcut/remove mevcut, yarat-ve-assign new). Wired /api/malzemeler/tags/* proxy + malzemelerEtiklerApi. Ayrıca Viability (erişim seviyesinde) de ekliyor Mevcut erişim seviyesi uç noktası kullanarak çekmeceye kontrol edin.
· MediaService
MaterialTagController - CRUD + atama/unassign + atama haritası haritası
/api/media/materys/tags: liste/create/delete tags, GET /assignments (org- çapında imgIdItagId İş alanı müşteri odaklı katılır, POST /assign + /unassign with org- ownership checks.
· kamo-shared-library
MaterialTag + atama varlıkları/repos (org-scoped tags)
Düz, pazarlama malzemeleri için klasörler üzerinde çapraz kesme etiketi. Masas MA TAGS ve MA TAG ASSIGNMENTS (Gelişmiş CRDB DDL aracılığıyla ortaya çıktı; KI oto-scans bir sonraki çalıştır).
· kamo-internal
Yönetilen halk arayüzü (P1) - oluşturmak/expiry/revoke/view-count
Detaylı çekmece bir ‘Kamu bağlantıları’ paneli kazanır (ShareLinkManager): kalıcı bir bağlantı oluşturmak Seçmeli bir etiket ve expiry (1h/1d/7d/30d/never), onu kopyalayın, bakış sayısını görün ve yeniden uyandırın. Yeni MediaService kayıt uç noktaları /api/malzemeler / linkler aracılığıyla geri çekildi. The The The The The The The The Birden hızlı kopya bağlantısı hızlı sosyal / e-posta paylaşımı için kalır.
· MediaService
Yönetilen halk-link endpoints (create/list/revoke) + takip edilen hizmet
POST/GET /api/media/mates/links ve DELETE /links/{id} MaterialShareLink tarafından desteklenen, Ve çözüm ilk önce halk GET'de jetonları yönetti (kolay / genişletildi ve otobüsle kontrol etti). viewCount) mirasına geri dönmeden önce HMAC verifier. Random opaque tokens, org-scoped Sahiplik kontrolleri, TTL <=1y'ye dönüştürülebilir.
· kamo-shared-library
MalzemeShareLink kayıt varlığı + yenidenpo (önemli/bölgeli halk bağlantıları)
Backs Revocable, expiring, pazarlama malzemeleri için tartışmalı halk bağlantıları - devam etti Bu nedenle bağlantılar listelenebilir, iptal edilebilir ve sayılabilir (vs. the stateless HMAC one-shot tokens). KI (@EntityScan com.kamo) ve MediaService tarafından kurtarıldı; bir KI oluşturmak için çalışır OR SHARE LINKS masası.
· kamo-internal
Konuşma satırlarına doğru tıklama / uzun baskı bağlam menüsü ekleyin
Her iki görüş modlarında liste eylemi menüsünü tamamlayın. Konuşma satırları şimdi açık Aynı paylaşılan menü doğru tıkla ve uzun baskıyı ip seviyesindeki eylemlerle dokunur: Cevap / All / Forward ( threadin son mesajına ek olarak, getiriliyor Talep ve aktif posta kutusundan oluşur), Rapor Spam / Not Spam ve Delete (Tüm iplik boyunca çekildi), Mark okudu ve Star / Unstar.

Evreniniz sizi bekliyor.
Birkaç dakika içinde ücretsiz olarak başlatın. Hazır olduğunuzda ürünleri ekleyin - göç yok, yeni girişler yok.
Sonsuza kadar ücretsiz — kredi kartı gerekmiyor