İçeriye geçin
KAMOUniverse

Değişiklik Günlüğü

Yeni ne var?

Gemideki her iyileştirme.

  1. · kamo-internal

    Gizle boş bölümler, statüsü filtreyi Rehbere taşıyın

    - Artık üyeleri olmayan bölümler. The by-department endpoint Boş olanlar da dahil olmak üzere her bölüm döndürür, bu yüzden roster oldu Kimseyi asla içeremeyecek bölümleri göster. per-department "hayır üyeler” yer sahibi onlarla birlikte gider, ulaşılamaz hale gelir. - The All/Online/Offline filtre, panelin altındaki üst sıralardan yukarı doğru hareket eder sekme şerit, bu yüzden Directory'nin kendi bölgesinde roster ile oturuyor Tüm paneli filtrelemek yerine filtreler ( asla uygulanmaz Chats veya Mobile Access). - Boş devlet yalnızca arama / filtrelemeyi tek zaman ayarlamayı önerir Aslında uygulanır; hiçbir üye olmayan bir org ayarlamaya sahip değildir.

  2. · kamo-internal

    Rebuild the slideout as one continuous surface

    Member rows now form the department body directly — no card-on-card nesting — and departments run full-bleed with sticky bands, reclaiming ~30px of row width and cutting the chrome before the first member from 228px to ~170px. Layout - Delete the card-in-card stack: rows are flat, hairline-separated, full width. - Sticky department band (ink on an 8% primary tint, never white-on-primary) carrying the disclosure chevron, a live presence meter, an online/total fraction and a Select toggle. Drops the identical per-department Group icon. - One background instead of three stacked gradients; one scroll-edge cue. - Status is carried by a dot on the avatar plus a word only when it adds information, replacing five per-row encodings of the same value. Behavior - Row click opens the 1:1 chat. It previously did nothing: MemberList never passed onClick, so a fully-styled clickable row was inert. - Restore the All/Online/Offline filter, which only existed inside MemberList's header — a branch the live panel never rendered (showHeader={false}), leaving statusFilter pinned to 'all'. Lifted into NavTopPanel beside the search field. - Multi-select gains real affordances: a Select toggle per band, ctrl/cmd-click, and touch long-press; a selection bar rises from the first selection. - One hoisted MeetingDialog instead of one mounted per row, and ownMemberId is threaded down instead of every row fetching /api/user-info. Motion - MotionConfig reducedMotion="user", plus prefers-reduced-motion guards on the CSS keyframes it cannot reach. - Staggered section entrance, framer height-collapse with a rotating chevron, layout-spring row reflow, odometer counts, unread pop, directional tab slides. Accessibility - Real disclosure semantics, ul/li rows, one stretched row button with sibling (not nested) actions, focus trap with focus restore, arrow-key navigation, a polite live region for selection, and >=24px targets. - The panel openers in NavTop were non-focusable Boxes; they are buttons now. - Chats rows were click-only divs with no keyboard path; they are list items with real buttons and accessible names. Theming - New --on-primary token so white text on a light tenant primary is fixable. - Shared availability palette ends the NavTop/MemberItem hue drift, and the hairlines stop referencing --color-primary-rgb, a variable never defined. - Relative timestamps go through Intl on the app locale instead of emitting hardcoded English, and last-active labels tick again via one shared 30s clock.

  3. · SecurityService

    Rekor erişim denetim izi üzerinde algılama ve uyarı

    phi access log hiç kimsenin bakmadığı kanıtları iptal ediyor. Bu satisfies §164.312 (b) - iz var - ve ilgili hiçbir şey yapmamak §164.308(a)(1) (ii)(D), bu, gözden geçirme, veya §164.400-414, saat saati kimin saati Birisi fark edene kadar başlayabilir. Bu, fark eden şeydir. Kapalı saat boyunca beş dedektörleri, oyuncu başına: BULK EXPORT 250 farklı kayıt ihraç / baskı / MASS READ 200 farklı kayıt oku REPEATED DENIALS 10 reddedilen girişimler (events – bir red names not record) OFF HOURS ACCESS TENANT'nin kendi haftası dışında 20 ayrı kayıt PLATFORM STAFF ACCESS 1 - kaplı bir varlık, gerekçenin ne olursa olsun söylenir Sayılar DISTINCT kayıtlarıdır, olaylar değildir: PhiAccessAuditor bir LIST sırasını yayıyor Kafe satır başına, bu yüzden bir üye aynı sayfayı kırk kez yeniden yükleniyor 2000 olay 50 kişi – ve "bir çok kişi" bir ihlal sayıdır Değerlendirme yapılır. Her varsayılan için Orannale PhiDetectionSettings üzerindedir; Bunların hepsi yapılandırılabilir, çünkü sürekli yangınlar sürekli yangınların bir demettir. Muted ve çamurlu bir demet hala kapsama olarak okur. Off-hours, mevcut OFF HOURS ACCESS aracılığıyla onant'ın bölgesinde yargılanıyor. Kural (iş saatleri Güvenlik ekranı zaten toplanıyor) geri dönüyor Organizasyon.timezone. ► at UTC, so a UTC-anchored check would page Bir Sydney her çalışan sabaha ve asla New York'a bir sayfa. Var olan şeyleri tekrarlayın: E-TemplateServiceClient -> EmailService Yeni PHI ACCESS ALERT canonical anahtarla yeni PHI ACCESS ALERT canonical key ile birlikte /api/email/templates/send with the new PHI ACCESS ALERT canonical key, to the to the new PHI org zaten org suspicious detection rules .notification emails. yapılandırılan onant herhangi biri inceleme logunu alır ve Başka bir şey yok - tahmin edilen bir adrese posta İşgücü üyesi şüphe altındadır. Her bulgu, adanmış bir şekilde girişilir PHI-DETECTION logger; sadece bildirim, dektör/tenant/h başına (6h) aktör, Redis'de giriş-anomaly kuralları zaten kullanır). Uyarılar taşır tanımlayıcılar ve saylar, asla bir kayıt. İki kasıtlı yapısal seçimler: - EntityManager aracılığıyla yapılan agresyonlar, Spring Data @Query değil. Bahar Bahar Bahar Data, repository bottrap'ta yaratarak ilan edilen bir sorguyu doğruluyor, bu yüzden bir Hata yok context startup – ve olmayacak bir Güvenlik Hizmeti Her girişini 2026-08-03'te olduğu gibi almaya başlayın. İşte en kötü durum bir şeydir O logları süpürüyor ve bir saat sonra tekrarlıyor. Aynı zamanda bu paketi de ortadan kaldırır. @EnableJpaRepositories tamamen soruluyor: Hiçbir repository bean, hiçbir şey Unutmayın. PhiDetectionQueryTest, her mülk yolunu yansıtan olarak kontrol eder. Bu hizmette test bir bağlamı kaldıramaz. - Her sorgu ilk önce organizasyon tarafından kısıtlanır. phi access log'un sadece Kullanılabilir indeks (ORGANIZATION ID, OCCURRED AT); zamanında sadece filtreleme Tam-scans sadece her zaman büyüyen bir append-sadece masa. Scheduling: Bu görevScheduler (4 iplikler, sched-), yedi süpürücü Zaten paylaş. Çeviri yürütmesine dokunmaz - 3.read/500-queue @Async havuzu doygun gözlemledi - ve hiçbir executor'a gönder. Saat, Onant toplu beş grup halinde, taramanın içinde ağ I/O yok ve Bir reentrancy latch so a slow run ats the next tick rather than stacking Bunun arkasında ve paylaştığı havuzu aç. Hiçbir varlık veya sütun eklendi veya değiştirildi.

  4. · EmailService

    PHI ACCESS ALERT

    ÖrnekVariables kol olmadan, admin Email Şablonları önizleme her şeyi döndürür yer sahibi boş, bu yüzden kim bir güvenlik kelimesini onaylaması istenir Uyarı boş bir masa görür. Örnek modeller sadece tanımlayıcılar ve sayıyor - Gerçek uyarının aynı şekli taşır, çünkü gerçek uyarı asla taşımaz kayıt.

  5. · kamo-shared-library

    PHI ACCESS ALERT canonical şablon

    GüvenlikHizmetinin saatli phi access log'un saatlik bir incelemesi, göndermek için bir yere ihtiyaç duyar Ne bulur. Bir kanalı icat etmek yerine mevcut mevcut olanı kullanır Bir kanonik anahtar anlamına gelen işlem-posta demiryolu: kanonik olmayan bir anahtar anlamına gelir: CANONICAL KEYS bir şablon asla tohumlanamaz, asla kendi kendine ait değildir ve her şey Kalıcı 404 döndürür - kapsama gibi görünen bir uyarı kontrolü Ve hiçbir şey sunma. Şablon tanımlayıcılar, sayılar ve sadece bir zaman penceresi taşır. Bir algılama Tanımlananın PHI'yi bir kutuya taşıdığını ortaya koyan sanatlar Hiçbir saklama politikası olmadan, bu yüzden kasıtlı olarak bir yer sahibi yoktur kayıt. PhiAccessAlertTemplateTest bunu pins ve iki sessiz başarısızlığı pimler modlar: bir yer sahibi hiçbir malzeme sadece bir boş bir dize olarak verir WARN ve former HTML kaçmıyor, bu yüzden vücuda ulaşan her şey Kaçmış ikiz kullanır. E-posta hizmeti, Güvenlik Hizmeti başlamadan önce bu paylaşılan-lib ile yeniden işlenmelidir. Gönder; o zamana kadar gönderi yakalanır ve bulgu sadece bir inceleme-log kalır.

  6. · kamo-internal

    Ayna, müşteri üzerindeki minimum gereksiz maske (§164.502 (b))

    Güvenlik Güvenliği Servis şimdi bir çağrıcıdan gelen özel-form cevaplara sahip, kim değil lead's bee (and, in a handlesPhi onant, even from a owner of right 161). Bu maske uygulamadır; bu değil. İki yol hala onu atlıyor: - LeadRealtimePublisher bir FULL'ı koyar, önemsiz bir LeadDTO on Güvenlik.leads.rt.{orgId} - bir maaş yükü herre abone olmak için dışarı çıktı org, per-recipient projeksiyonu mümkün değildir. Bu olay taşıdığına kadar Tanımlar sadece ve müşteri refetches, app/lib/leads/leadFieldMask.ts is is is is is ism. Bir meslektaşın alımı cevapları ve her açık yol pane Onant'ta. LeadViewClient şimdi onun aracılığıyla gelen gerçek zamanlı maaş yüklerini çalıştırıyor Her şeyden önce devlete ulaşır. - Rendering: Tanık bir form ve asla tamamlanmamış bir kişinin aramasını Aynı şekilde, kararın yeniden kabul edilmesi gerekiyor, değil. Özel-formasyon pane, yanıtları kısıtlandığında Edit'i karşı tutar - boş bir tasarruf form PUT {} gerçek cevaplar üzerinde, sunucunun şimdi 403'ü her neyse. Organizasyon.handlesPhi mevcut sütunda teslim edilir -> DTO -> OrgContext Yol (veya varlık zaten onu seriliyor; zod şeması ve JSON'dan gelen organizasyon eksik bağlantılardı, ikinci bir kanal değil. Yeni kullanıcı odaklı bir kopya yok: explanatory "restricted" etiketinin anahtara ihtiyacı var Çeviri repo ve bu değişiklik için kasıtlı olarak bırakılır.

  7. · SecurityService

    Lider özel-form yanıtlarının minimum gereksiz maskesi (§164.502 (b)

    Platform'un tek alanı maskesi, ******** uygulandı Başkonsoloslar.getLeadById to a caller who is ne God ne de ata ve Başarısızlık yok LEAD CONTACT INFO OTHERS (161). E-posta, telefonlar, tarih kapsar Doğum ve posta/property adreslerinin sokak parçaları - ve başka bir şey. ÖzelFormData doğrudan bununla birlikte, bu platformda bir yer olan bir yer Sağlık kiracısı aslında alım ve semptom soruları koyacaktır. LeadFieldMask şimdi karara ve projeksiyona sahiptir: - herhangi bir org: temas maskesi ile özel-form cevaplar. Görmüyorsan Liderin e-postası, neyin cevaplandığını göremeyebilirsiniz. -Phi kiracıları idare edin: Liderden gelen cevaplar atanmıyor Sağ 161'e bile. Bu doğru, kendi adı tarafından, temasa geçmek için Bilgi; bir semptom cevabı iletişim bilgileri değildir. Form unvanı gider Ayrıca - "Diabetes Intake Questionnaire" durumu kendi başına açıklar. Form girişi sadece boş tutmak için maske hayatta kalır, bu yüzden UI söyleyebilir boş bir anket yapmak yerine "restricted". Yüklenmeyecek bir org PHI-handling olarak tedavi edildi, PhiTenantStatus'un UNKNOWN-denies duruşu. PUT /leads/{id} symmetric yaz kapısını kazanır. Form editörü bütünü PUTs AlanValues haritası, bu yüzden bir üye olmadan baskı yapan boş bir anket gösterdi. Kaydet, gerçek cevapları {} ile değiştirirdi - okuma maskesi olurdu Sessiz bir silme haline gelir. Statik fayda, hiçbir stereotip ve hiçbir repository: karar saf ve caller zaten org tutuyor.

  8. · kamo-internal

    PHI access denetim viewer - org review and per-record muhasebe

    Yol yazılırdı ve hiçbir şey bunu okuyabiliyordu. Bu ekran yarısı: Ayarlar altında bir org-tüm erişim incelemesi → Güvenlik ve buna erişen bir “buna erişen Kayıt" dialog, liderlikten açıldı, bu bir §164.528 Muhasebe talebi aslında içeri girer - dosyalarından bir birey, Küresel bir günlük filtrelemek için zaman olan biri değil. Buradaki üç şey kozmetik değildir. Timestamps mutlak ve her zaman içinde verdikleri bölgeyi adlandırıyor, Bir tıkla UTC'ye geçer. Bu kanıt aylar sonra kim olan biri tarafından okunur Mevcut değil; başka bir bölgeden çıplak bir duvar saati sessizce yanlış bir şekilde okunur Saatlerce erişim, "Değişme" ve "at 3am" arasındaki fark. Relative süreleri dışlanır - her seferinde sayfa açılır. Denied girişimler ve platform enstaff erişim satırda işaretlenir (t, sol kural, Lider ikon) göz atları bir sütunda kalmak yerine, çünkü bir uyumluluk Memur orada olmamalıdır olan kişi için yüzlerce sırayı tarar. Sıradan Okumalar kasıtlı olarak düzdür: Her şeyi dekore etmek aynı şeydir Hiçbir şey. Bir satırın her ikisi de olduğu zaman bir platform-staff çıktı – Kamo personeli de reddedildi, ekranın gösterebileceği en ilginç çizgidir. İhracat EXPORT ACCESS LOGS'de, sağdan ve 503'ten ayrı olarak kapılandı. Upstream'den sonra, "hiçbir şey açıklanmadı" gibi pürüzsüz bir şekilde yüzeye çıktı. Bir genel hataya. EXPORT başarısız bir denetim türüdür: reddedilme demek demektir Açıklama kaydedilemezdi, bu da doğru bir sonuç. Görmek. Sorgu binası, zamantamp formatlama ve satır sınıflandırması uygulama/lib'de yaşıyor Sihirbaz onlara ulaşabilir; bileşenler bir araya getirilir. 403 asla 403'e düşmez Boş bir ızgara - "bu rekora hiç dokunmadı" en tehlikeli yanlış Bu ekrana cevap verebilir.

  9. · kamo-internal

    Profil, kısa sekme etiketleri için başlık üyesi sayfası, sekme ikonları ekleyin

    Üye ayarları sayfası başlığı "My {memberLabel} Profil" (veya "{memberLabel} Profil" başka bir üye için) ve nav-top bağlantı olur Profilim. Tab etiketleri kısar - Mailbox (s), Telefon, Audio & Video, İzinler, Aktivite - telefon ve roller yardımcı olduğundaTips onları tutar Yeni **************** ile tanımlayıcı başlıklar Anahtarlar. Her sekme şimdi sekme barında bir simge taşır; sekme sorgu-param ids Bu kadar derin bağlantılar çalışmaya devam ediyor.

  10. · kamo-internal

    Tone slider - beyaz renkli to blacked out

    Bir per-member arka planTone ui-preference (0 beyaz / 50 tam renkli / 100 Siyah) hem konsolideliğin hem de konsolideliğin üzerinde bir yıkama olarak sunuldu slideshow katmanı ve editörün WYSIWYG aşaması. Slider Sahnede yaşıyor Canlı sürüklenme ile medya kromu, merkezi snap ve devam eden sürüm.

  11. · kamo-internal

    Launcher kartları ve kahraman per-module aksanları yerine org'un marka rengini kullanır

    Ev lansmanıpad'in seçenek kartları, sürüklenme ve şimdi ilk-org kahramanı Onların aksanı var(-color-primary) (veyag’in dinamik olarak setleri tema rengi) sabit multi-color yerine -accent-* aile haritası.

  12. · kamo-internal

    Break-cam tanrı modu - neden hızlı, sayım, ayakta gösterge

    Tanrı modu, kamo-internal'te hiç bir UI yoktu: bir yerelStorage boolean Etki aynaya dönüştü - her yeni sekmede sonsuza dek tekrar alıntı yaptı. Bunu yaptı Platform personelinin yüksek olup olmadığı konusunda tarayıcı, yükseltildi Hiç olmaya karar vermeden içinde olabileceğiniz bir şey. - GodModeJustificationDialog, BEFORE'nin ele alınmasının nedeni için uyarır. Bir sebep Daha sonra toplanan bir sebep zaten ne yapıldığına uymanın bir nedenidir. kopya Operatörün görmek üzere ne olduğunu açıkça belirtiyor ve onların adı devam ediyor. - GodModeIndicator tam geniş bir alt bar artı tüm çevrede kırmızı bir çerçevedir Viewport, canlı bir sayı ve "Şimdi bit" ile. Onların içinde olduklarını unutan biri Tanrı modu, kontrolün önlenmesi için tam senaryodur, bu yüzden bir şey değil İnce kötüge - ama noktalayıcı-events: barın dışında biri ve dışarıda oturur Yerleşim akışı, bu yüzden asla bir tıklamayı veya bir ekran yeniden akışları engellemez. - Her ikisi de bir kez kök düzeninde, bir sonraki OtomatikLogoff'a monte edilir, bu yüzden gösterge, operatörün ekranlarda yerine bittiği yerde mevcuttur. Birisi hatırladı. Oturum tanrı-ELIGIBLE olmadıkça hiçbir şey yapmaz. - Sunucunun durumu vardır. app/lib/godMode tek bir kömür deposu tutuyor; Müşteri sadece expiry SecurityService damgasını okur ve asla uzatamaz Bu, TanrıMode'nin gittiğini varsayıyor - elevating bir gerekçe alıyor, bu yüzden olamaz Setter. - Durum anketi dayanıklı açık olarak ikiye katlanır: GET /session/god-mode nerede. Güvenlik Hizmeti, Redis'in hizmetlerinden bir elapd yükseklik yazıyor Oturumu doğrudan okuyun. usePlatformAdminGuard şimdi tanrısal seanslar için Tanrı statüsü için bekler. YerelStorage'dan okunabilir senkronizasyon için kullanılan erişim; bekleme olmadan Açık bir pencere ile operatör, boşlukta / işaretlere atılacaktır. Strings, ************************ (İlk önce, Yapının klon emrine göre). npxsmitht koşmak: 329 geçti (32 dosyaları), 17 tanesi yeni. npx tsc -noEmit: Temiz.

  13. · SecurityService

    PHI erişim yolunu okuyun - §164.528 muhasebe ve aktivite incelemesi

    Yol bir süredir yazılmıştır ve hiçbir şey onu okuyamadı, ikisini terk etti. Sorumluluklar: Bir bireyin kaydı için bir açıklama muhasebesi (§164.528) ve periyodik bilgi sistemi etkinliği incelemesi (§164.308(a)(1) (ii)(D)). Her ikisi de sorgular. Bu, sorgu yüzeyi ekliyor. Yazarizasyon özelliktir, ızgara değil. Organizasyondan alınır Oturum ve başka bir yerden - herhangi bir veyagId parametresi yoktur handler ve Phi RegulartQueryService, onantant’ı ekleyen tek bir choke noktasıdır. Daha önce filtreye bile danışır. Four sibling sorgu yöntemleri, Bunu unutmak için dört şans oldu. Scoping, bir WHERE koşuludur, yerine Post-filter, çünkü geri dönen bir sayfa filtre toplamElements terk edecek Hatları saymak çağrıcı göremeyebilir. Okuma tarafı kendi depo arayüzü alır. Paylaşılan PhiAccessLogRepository Finders kasıtlı olarak haçlı - bir platform aracı için doğru, bir açıklama Bir müşteri ekrana teslim edilirse - bu nedenle ekran sadece giriş yapan bir arayüz alır nokta bir düzeltme alır. com.kamo altında yaşıyor. Güvenlik Hizmeti, hangi Mevcut @EnableJpaRepositories girişi zaten kapsar, bu yüzden tarama değişikliği gerekli değildir. Ve hiçbir şey unutulamaz. Haklar İD ACCESS LOGS (22) ve EXPORT ACCESS LOGS (32) - çifti bu çift Zaten doğrulama logunu açıyor, bu yüzden bugün güvenlik uygulayan herkes Bunu bir gün kullanabilir. Yeni bir doğru id ekran ölüleri sevk ederdi: KamoInitializer koşmak ve herhangi bir üyeden önce bir hibeye ihtiyaç duyar. İzyi okumak, bir okuma ve okuma için REPORT/SEARCH olarak kaydedilir. Başarısız girişimler de dahil olmak üzere bir kopya için REPORT/EXPORT. Arama kriterleri şunlardır: Kayıt değil – bir filtre üye ve kayıt ids taşır ve mağazaların depoladığı bir iz Korumak için var olan tanımlayıcıları bir araya getirmek için ne aradı. Her şey bağlıdır: Sayfa büyüklüğü 200'e kadar, 10.000 sıraya ihracat kapakları. Altı yıllık bir iz milyonlarca sıra ve yakalama katmanı bir satır yazıyor Yük başına ağ satırları, bu yüzden beklenmedik bir boyut, bir erişilebilir bir OOM değil, bir erişilebilir bir OOM Teorik biri. Timestamps açık UTC anlık olarak ayrılıyor. sütun bölgesiz duvar saattir, Ve bu kanıt aylar sonra orada olmayan biri tarafından okunur.

  14. · kamo-internal

    MFA kayıt ekranı ve tanrı-mode PHI sınır kontrolü

    Yok olan arka uçlar için iki ayar yüzeyleri. MFA kaydı (örneğin, profilim → Sign-in Security, ben sadece). GüvenlikService's /api/security/mfa endpoints tamamlandı ve tamamen ve tamamen tamamen ulaşılamaz, bu yüzden MFA var ve platformda kimse onu döndüremezdi. The The The The The The The The sekme kendi kendine özgü çünkü bu uç noktaları kullanıcının çağrıcının kendi kendine ait olduğunu çözüyor Oturum ve hiçbir kullanıcı parametresi al - başka birinin profili açma Bu ekranda kendi gerçekleyicilerini kaydetmek olacaktır. QR kodu qrcode.react, zaten bir bağımlılık kullanır; hiçbir paket eklendi. The The The The The The The The Sır, ne olursa olsun bir sonraki gösterilir, çünkü aynı zamanda gerçek biratör uygulaması Tarayıcının kapağını taramadığı gibi cihaz. İki başarısızlık yolu, genel bir hatadan ziyade birinci sınıf bir işlem alır. A 409 Doğrulanmış bir faktör zaten var ve bunu söylüyor (an) Yönetici reset) - kullanıcının onları tekrar göndermesini söyleyin Başarılı olamaz bir eylem. Yanlış bir onay kodu, beklemeyi tutar Kayıt: Gizli bir kez görüntüleniyor, bu yüzden silme anlamına gelir Gerçekçi giriş ve tekrarlama ve sunucunun bekleme süresi Hala orada olacaktı, bu yüzden retry 409 geri dönecek ve onları şekillendirecektir. Kurtarma kodları bir kez gösterilir ve yeniden yazılamaz. Diyalog olamaz Kaçarak, arkadan veya yakın bir düğmeye yemin ederim; Done sadece sonra açılıyor Kodlar kopyalandı veya indirildi ve uyarı kabul edildi. Her ikisi de Gerekli: Tek başına bir çek kutusu reflekse tıkılır ve tek başına bir klip Bir sonraki kopya tarafından yazıldı - ve kullanıcı güne kadar hiçbir şey yanlış görünmüyor Telefonlarını kaybeder. PHI sınırı (yalnızca garanti edilemez) sekmedir. Tanrıya uygun operatörlerin ve içerideki kontrolün Tanrı modunda görünür Aslında, GüvenlikHizmetinin yeniden kontrol ettiği, sadece uygunluk yalnızca değildir. Aktivasyon. Çalışmayı durduran modülleri ilk listelemeden asla değişmez - bu liste sunucudan geliyor, PhiModule'den PhiModule'den elde edilen PhiTenantGuard, bu yüzden ne uygulandığından uzaklaşamaz. 503 bir yüzeyde "Değişme uygulanmadı çünkü kayıt olamazdı", çünkü bu Ne oldu. Karar mantığı, uygulama/lib/güvenlik içinde yaşar, bu nedenle, bileşenlere ulaşabilir; Sadece tutun. Doğrulanmış: npxhawkt koşmak - 329 test, 32 dosya, hepsi geçer (onları yeni). npx tsc -noEmit, sadece 3 hatasını ******************** Bu ağaçtaki başka bir seanstan takip edilmemiş bir dosya, buradaki dosyaların hiçbiri.

  15. · SecurityService

    Bir organizasyonun HIPAA sınırını okumak ve taşımak için son nokta

    Organizasyon.handlesPhi onu ayarlamak için bir sütun olarak var olmuştur, bu yüzden PhiTenantGuard, kimsenin geri dönemeyeceği bir bayrak için olmuştur. İşte bu, Yarısı eksik: GET/PUT /api/güvenlik/phi/tenant. Otorite Tanrı uygunluk ve aktif bir tanrıModeActive toggle, asla kimse değildir. Yalnız fark, platformun tanrı kapılarını 2026-07-22'ye kadar terk eden şeydir; Burada, herhangi bir tanrıya uygun bir operatörün canlı onant modüllerinden geçiş yapmasına izin verecekti. Bir işaretsiz tıklama ile. Hedef her zaman çağrıcının kendi oturumu veyag - Hiçbir organizasyonId parametresi yoktur, bu yüzden hiçbir zanaatkâr istek bir şeye ulaşabilir onant the caller zaten içeride değil. phiEffectiveDate ilk etkinleştirilir ve asla yeniden yazılmamıştır. Daha sonra devre dışı / kullanılabilir. Bu, ihlal ve saklama pencerelerini kapsar, Bu yüzden ileriye doğru ilerlemek, dönemi sessizce gözden geçirmek ve bir denetim Uygulamanın önceden geçebileceği tarih kanıt değildir. Denetim satırları BEFORE bayrağın hareket ettiği ve CONFIGURE'in kapatılması başarısız oldu, bu yüzden bir Yazılan iz değişikliği reddeder ve 503'ü geri döndürür. Ne zaman kayıt olmadan hareket eden bir sınır bırakarak. Denied girişimlerdir Ayrıca kaydedildi. Her satır sadece tanımlayıcılar ve geçiş taşır, asla İçerik. blockedModules PhiTenantGuard aracılığıyla PhiTenantGuard'dan elde edilir Listelendi, bu yüzden UI şovları, muhafızın ne uyguladığından uzaklaşamaz. Yeni havuz paketi yok: OrganizasyonRepository zaten bu hizmette. @EnableJpaRepositories listesi, bu bean ile birlikte eklemek için hiçbir şey yoktur. Onaylandı: 298 test, 1 hata - **************************** EntityManager NPE, bu önceden gelişmekte olan (yaklaşık 7968a21: 281 test, aynı zamanda 281 test, aynı test 1 hata). RepositoryScanCoverageTest ve ************ hem geçiş.

  16. · kamo-internal

    Öneri formunu yönlendirilen bir akış olarak yeniden inşa edin, bir çıkış önizlemesini ekleyin

    Detaylar sekmesi, her alanda aynı şeyi veren düz bir kutuydu ağırlık, bu yüzden hangi girdilerin aslında müşterinin ne gördüğünü değiştirdiklerini gösteren hiçbir sinyal vermedi. Bu Şimdi bir alıntının yapıldığı dört karar olarak okur - bunun ne olduğu, ne olduğu satıldı, nasıl ayarlanır, müşteri okur - her biri bir satır nedeni ile Önemli olan ve çalışan toplam altta gömülmek yerine bir yapışkan demiryolunda oturur. Hareket, dekorasyondan ziyade anlam taşır: bölümler sıraya gelir, koşullu alan, ortaya çıkan kontrolden genişliyor, fiyatlandırma alanı Şekil değişiklikleri olduğunda çapraz-fades ve yeni değeri tamamen yanlış bir şekilde sayılıyor Birim fiyatı sessiz bir şekilde absorbe edilmesi yerine fark edilir. Hepsi saygı gösterir Tercih edilen duygusallığı tercih eder. Yeni Preview eylemi son belgeyi oluşturur - mektup, seçenekler veya masa, Toplamlar, terimler - ve kendi başına yazdırın. CURRENT editörü devleti projeliyor, değil Kurtarılan kayıt, çünkü son alıntıyı görmeye ihtiyacınız olan an, karar verirken Bunu göndermenin olsun. Markalama, sunucunun kendi kararından geliyor, böylece önizleme harf başı müşteri alır ve seçenek arithmetic'den ithal edilir editör tekrardan ziyade.

  17. · kamo-shared-library

    Uyum sınırının kendisi için bir değişiklik için Denetim Kelimesi

    PhiKaynakType.ORGANIZATION ve PhiAccessKind.CONFIGURE so bu şekilde dönüyor Organizasyon.handlesPhi, ne olduğu gibi kayıt edilebilir. Mevcut her kaynak türü bir kişinin kaydı olarak adlandırılır. Bir değişiklik yapmak Onant'ın aralarındaki uyum duruşu, §164.528'de bir yalan koyacaktır. Açıklamaların muhasebesi ve “Bu onant ne zaman kaplı bir varlık haline geldi İş ortağı", iznin geri kalanının karşı olduğu sorudur - Kendi sıra şekline ihtiyaç duyar, ödünç alınmaz. CONFIGURE, toplu türlerden farklı bir sebepten dolayı kapalı değildir: hiçbir şey değildir Açıklayın, bu yüzden operatörü yeniden deneme masraflarını reddediyor, hareket eden bir sınır olsa da Devlet ne zaman bir §164.402 değerlendirme yeniden inşa edilemez. Hiçbir şema yok. phi access log.RESOURCE TYPE ve ACCESS KIND açık Phi AccessLogTableMigration tarafından yaratılan VARCHARs, bu yüzden beyaz liste RA ile değil, bu yüzden Ne sürekli bir KamoInitializer eklenmeden önce çalışır ve hayır varlık veya @Column dokundu. Gerçekleştirilmiş hiçbir yorucu geçiş ya da enum Herhangi bir hizmette var.

  18. · SecurityService

    Tanıtım için müşteriye dönük bakış

    GET /{uid}/pauer aynı PublicQuoteView the share link hizmet eder, from the from the Aynı Sözcük kararı, bu yüzden bir önbellekli mektuptan farklı olamaz Biri. Bu kasıtlı olarak bir token değil, bir görüntü sayın veya bir olayı kaydetmeyin - bakmak Kendi taslağınızda müşteri nişanı değildir ve aktivite izine izin vermek Bakış sayacı bir sinyal olarak işe yaramaz hale getirecekti.

  19. · ConversionService

    Scan, ingest (§164.308 (a)(2)(ii)(B)

    Belge, herhangi bir yazılım tarama ile keyfi yüklemeleri kabul etti Platformda her yerde ve çok niyetli - bir dosya bir veyag yüklemeleri bir dosya Başka bir org kullanıcıları tarafından görüntüleyici, WOPI editörü ve the binder. INSTREAM üzerinde ClamAV, doğrudan clamd (müşteri kütüphanesi değil; protokol bir soket ve uzun bir ektir). Kapıda çalışır GörüntülemeUploadler /upload ve /templates / the, üyeden önce Arama ve herhangi bir bytes MinIO'ya ulaşmadan önce - depolamadan sonra tarama Yarışın genişliği için nesne yeniden kullanılabilir. Tarayıcı erişilebilir davranış varsayılan olarak FAIL AC ve bu bir karar Bir kazadan ziyade. clamd henüz dağıtılmadı: Bu uygulama uygulama uygulama Yarı ve dağıtım ayrı bir operasyonel eylemdir (KlusterHizmetler San-applies on push and is not this change's to touch. Nakliye başarısız Görüntü ruloları için her onant için belge yüklenecekti, Bu, yakalanamayacak olan hiçbir şey yok. Burada başarısızlığa uğramak, "Hiçbir koruma", son birkaç yılın durumu quo, şimdi giriş ERROR her zaman olur. Her knob – başarısız olduğu dahil – hayatta kamowsconvers- yapılandır, bu yüzden bir kere clamd istikrarlı bir şekilde sıkılaştırıyor Düzenleme ve yeniden başlatma, bir salıverme değil. Bir devre mevcut olmayan bir tarayıcının maliyetine bağlıdır: 3 ardı ardı ardı ardı ardı ardına Güvenlik 60'lar için aramayı durdurur, bu yüzden yüklemeler her ödeme yapmaz Etkili bir şekilde kapatılan bir kontrol için zaman ayırın. Tanımlama: 422 imzayı isimlendirir (bir 5xx değil – yeniden deneme yardım etmeyecektir), Taklitler, düşmeden ziyade özel bir kurantin kovasında muhafaza edilir, Ve reddedilme PhiAccessRecorder aracılığıyla kaydedilir. Denetim satırları taşır Sadece tanımlayıcılar; yüklenen dosya adı bunun dışında kalır çünkü dosya isimleri burada rutin olarak ödünç isimleri içerir. PhiAccessKind'in UPLOAD üyesi yok ve ekliyor Bir @Enumerated (STRING) sütununun paylaşılan kısıtlamasını değiştirir. Kütüphane, bu yüzden DOWNLOAD + izin verilen=false kullanılır ve neden belgelenmiştir Çağrı sitesi. Ayrıca bu hizmetin PHI'sini dayanıklı phi access log yazarına da izler. Eşleştirme com.kamo.z.shared.phi.audit girişi aynı taahhüttedir @EnableJpaRepositories listesi ve PhiWebtRepositoryScanTest, binayı başarısız ederse İki hiç sürüklenme – bu çiftleşme, 2026-08-03'te her girişin ne aldığıdır. Retro-scan (POST ************ süpürücüler belgeleri zaten zaten Karanlığında, onant-skop ve sayfalı. Raporlar ve korumalar, asla bloklar veya silinler: Güvenli olmayan bir nesne yapmak kalıcı bir karantinaya ihtiyaç duyar Bayrak, i.e. bir el-runlu ilkizer tarafından uygulanan ortak bir sütun. Servis CI anaya karşı inşa eder ve yanlış bir pozitifliğe mahkum edilir Bir onant'ın kurtarma ile kaydı. Testler: 36 yeni. Pre-existing ******************** or below 1080 hala temiz bir ağaçta başarısız oluyor; öylece. Tartmayın, kasıtlı olarak: KayıtEngestnetler (internal-auth Asterisk push) ve DocsService's WOPI PutFile, aynı şeyi isteyen ikinci en büyük yollardır. kapı, ancak tarayıcı bu hizmette yaşıyor ve WOPI'nın yok - token token token token tote Bir denetim sırasına sahip olmak. Her ikisi de takip ediyor, gözetim değil.

  20. · SecurityService

    Break-cam tanrı modu - gerekçe + 30 dakikalık zaman-box

    Tanrı modu sessizce aktive etti ve seans olarak uzun sürdü. İşte bu Kapalı bir varlığın güvenlik incelemesini kontrol etmek en zor olanı yapar, çünkü "Your Personel hasta verilerimizi okuyabiliyor" her zaman soruluyor ve haksızlıksız, sınırsız yükseklik buna cevap vermemiştir. - POST /api / güvenlik/session/god-mode şimdi bir tür gerekçe gerektirir UP. Adımlama DOWN asla yapmaz - güvenli eylemlerin kapıların bir kontrol Operatörleri yüksek tutan kontrol. - Her iki kenar da PhiAccessRecorder ile gerekçe ve gerekçe ile kaydedilir. PlatformStaff (gerçek). Identifiers only; the reason is the operator's own Neden hakkında kelimeler, okumak için gittikleri hiçbir şey. - Pencere 30 dakika ve NON-SLIDING. expiry mutlak bir anlık Oturum gövdesi değil, bir TTL değil, bu yüzden kayma seansı uzatamaz, Ve ikinci bir sekmeden alıntı yapmak orijinal expiry'yi geri döndürür, yerine orijinal expiry'yi döndürür Başka bir pencere satın alın. - KSessionService.getSession Maskeleri bir elapd bayrağı, bu yüzden tüm ~ 10 mevcut “Session.get(”godModeActive") kapılarını değiştirmeden zaman kutuyu onurlandırdı. GET /session/god-mode, Redis'e kadar açık yazıyor (kendi içinde bunu Redis’e harcıyor). GetSession yenidencurse) ve sayı için UI anketleri. Deliberately denetim yazlarında açıkça başarısız olur: Tanrı modu düzeltmeleri nasıl destekliyor Üretim ve bir yükseklik reddediyor çünkü phi access log kırıldı daha kötü Bir satırdan daha önce kaydedici zaten yüksek derecede giriş yaptı. Hiçbir varlık veya @Column değişti. PhiKaynakType da sürekli kazanmıyor - bu da sürekli @Enumerated (STRING) with a CREATE TABLE value whitelist that ddl-auto:update Asla genişlemiyor, bu yüzden KamoInisalizere kadar yeni bir sabit başarısız olurdu. El tarafından yönetiliyordu. Yükseliş, operatörün kendi MEMBER'e karşı kaydedilir Bunun yerine bir **************** ek ile kayıt.

  21. · kamo-internal

    Reorder steward sekmeler; Identifiers into a pipeline find-loan popover

    Tab düzeni şimdi Boru hattı, Belgeler, Yazı, Fiyatlar, Capital & Risk, Yönetim, Ingestion, Catalog – Boru varsayılan iniş ekranı haline gelir. The standalone Identifiers sekmesi gitti; Boru hattındaki görünümleri Kompakt Find-loan popover olarak araç çubuğu: kredi UID (default) veya Herhangi bir dış tanımlayıcıyı çöz (MERS MIN, ajans davası #, e-sign zarf, vb.) kredisine, zengin bir sonuç kartıyla, kredinin tanımlayıcısı faal etti. Yaşam döngüsü tarihi ve tek tıkla açık / şov-in-borline.

  22. · kamo-signer-monorepo

    Kamu alıntı sayfasındaki Karşılaştırma seçenekleri

    Seçenekler sıralardan ziyade seçici kartlar olarak yapılır, çünkü onlar seçimlerdir. Ve ek değil. Toplam dönem başlığıdır; aylık eşdeğer Farklı billing şartlarını karşılaştırılabilir kılan rakam olarak yanında oturur, Ve bir tasarruf kötüge sadece farkın adlandırmaya değer olduğu görülüyor. Düz masa ve toplam blok her iki seçenek de seçenekler olduğunda bastırılır Şu anda - karşılıklı özel alternatifler arasında büyük bir toplam bir sayı bir sayıdır Kimse ödeme yapamaz. Baskı kuralları kartları yan yana tutar, böylece basılı bir alıntı hala karşılaştırır.

  23. · kamo-internal

    Yazar editörden çok fazla alıntı alıntı

    Bir alıntı düz bir fiyat sayfası ya da bir dizi alternatiftir, bu yüzden editör Her iki kişinin birden var olmasına izin vermek yerine bir mod toggle sunar - her ikisini de gönder Müşteriyi satın alamayacağı bir fiyat gösterecektir. Seçeneklere geçiş yapmak taşır Mevcut çizgiler, kartpostal tipi çalışma yerine ilk seçeneğe girer. Her seçenek kendi çizgi eşyalarını alır, fatura terimi, taahhüt uzunluğu, indirim süresi ve kurulum ücreti, dönemin canlı bir önizlemesi ile, aylık eşdeğer, Temele karşı sözleşme değeri ve tasarruf. önizleme aynaları QuoteToplantıları; sunucu kurtarma ve figürleri kazanır. Koltuk sayı alıntıda yaşıyor, bu yüzden 40 -> 60 her seçenek bir kere.

  24. · SecurityService

    Kamu alıntı uç noktası üzerinde bir seçenek kabul et

    Multi-option alıntıları kör kabul edilemez - istek şimdi taşır Seçilmiş seçenekUid ve hizmet bir tane olmadan kabul etmeyi reddeder.

  25. · kamo-shared-library

    Per-option karşılaştırması ile çok-option alıntıları toplam

    Bir alıntı şimdi satın almak için çeşitli karşılıklı olarak güncel yolları sunabilir - aylık, Yıllık, üç yıllık - sürüklenen üç ayrı belge zorlamak yerine Şu anda koltuk sayımı değişiklikleri. - Sözcük kendi çizgi öğelerine ve toplamlarına sahiptir; kardeşler asla özetlenmez. - QuoteToplamlar her seçeneği aylık bir eşdeğerliğe normalleştirir, ki bu Farklı fatura terimlerinin karşılaştırılabileceği tek temel, artı bir Bayraklı üssüne karşı toplam ve tasarruf. - Billing terimi ve bağlılık uzunluğu ayrı kalmak: Her yıl ödeme yapmak değil Her yıl üç yıllık bir terim olarak aynı taahhüt. - Alıntı.quantity paylaşılan bir sürücüdür;QuoteQuantity kullanımı ile bir çizgi optimizasyonu Her seçenekte bir kez tekrar fiyatlar. AlıntıToplantıları aynı şekilde onurlandırır Düz çarşaflar böylece bir çizgi içinde ve bir seçenek dışında farklı fiyat veremez. - Çok-option alıntısını kabul etmek seçeneği adlandırmak gerekir; kardeşler yakın şekilde Not SELECTED ve kabul edilenOptionUid seçimi kaydeder. AlıntıToplamlarTest 15, WordToplamlarTest 11, AlıntıShareTokenTest 9 - tüm geçiş.

  26. · kamo-internal

    Teslimat kapsamı, fiyatlandırma işareti-off, büyük-deposit paneller

    Son gelen çipleri değiştirir (Hedge & kapsama, Fiyatlandırma işareti-off, Büyük depolar) canlı panellerle yeni yönlendirmelere yol açtı.

  27. · SecurityService

    Kaplumbağa için Stewardants, pricing sign-off, large-depositosit

    Operatör-gated, oturum-stamped org+member, başarısız mülkiyet (no cross-org) varlığı ya daacle). New endpoints linelined in the unauthenticated-endpoint ratchet.

  28. · kamo-shared-library

    WORM fiyatlandırma işareti-off varlık (mlos pricing signoff)

    Sadece donmuş bir fiyatla ilgili proeward APPROVE/REJECT kararı. @PreUpdate atlar (yeni bir satırdır). Masa + 4 indexes (org, run, run, Sonuç olarak, kredi) KamoInitializer aracılığıyla alevlendi.

  29. · kamo-internal

    Steward konsol 2 - istisna kuyrukları, yönetim, MERS recon

    - Capital + Undergraph: StewardExceptionQueue (shared Panel) gerçekliğe teldi steward-tasks uç noktası – kilit istisnalar **************** kılavuz istisna istisna istisna istisnaları ************ dürüst boş devletler. Yönetim: KalibrasyonReliabilityPanelPanelPanel (bölüm başına gözlemlenen vs) ve PullThroughFunnelPanel (gerçek aşama dağılımı, bir kohort olmayan bir anlık etiketlendi Dönüşüm). Gelen iki çipi değiştirirdi. Belgeler: Gerçek içsel recon okuması üzerinde uzlaşma paneli. Gerçek uç noktaları boyunca; düz ekranlı kopya (i18n takip), tsc -noEmit temiz.

  30. · SecurityService

    Kapılar, kalibrasyon/funnel, MERS uzlaştırma

    god-elect, org server-stamped GET röleleri: ******************************** **************** MlosDocOrchestrasyon **************** (fail-kapılı veyag filtre, ait olmayan paketi azaltır satırlar + boyun eğlendiriciler. Tüm dört temel, kurtarılmamış noktalarda sıçanchet (Dönemli kapı(), kardeşleri gibi).

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