İçeriye geçin
KAMOUniverse

Değişiklik Günlüğü

Yeni ne var?

Gemideki her iyileştirme.

  1. · kamo-marketing

    Add /requests doğrudan nav bağlantıları, ana bölüm ve plan özelliği karşılaştırma satırları

    - Header: Talepler fiyat ve şirket arasındaki üst düzey doğrudan bağlantı olarak eklendi - Footer: İstekler doğrudan görünürlük için Ürün sütununa eklendi - Fiyat sayfası: paketler ve özellik karşılaştırması arasındaki özel çağrı pankart Özellikler sayfası: CTA'dan önce arama isteği - Anasayfa: Fiyat ve SSS arasında yeni özelRequests bölümü plan-tier erişim gösteren JumpToBar: Fiyatlama ve SSS arasında eklenen bağlantı – DB: FEATURE REQUESTS per-plan metin değerleri ile destek kategorisinde tohumlandı (Free: Community oylaması, Start: Oy & istek, İş: Öncelik talepleri, Enterprise: Custom included) - KamoCRMPricingLoader: FEATURE REQUESTS özelliği tanımı ve plan-feature haritaları ile güncellendi

  2. · kamo-internal

    Round-trip appConfigs + yüzey uygulamalı modeller + özel-org toggle

    - BranchSetupManager: haritaBackendModel şimdi devam eden appConfigs Geri dönüş tarafından geri döndü (availability +,TicaretTypes per service Tür) onları yük üzerinde /AVAILABLE için yeniden tanımlamak yerine. Paraloads Kaydet Hem çocuk model hem de master-model akışları uygulamaConfigs'i içerir, böylece per-app accessibility and CRM trade-type constraint round-trip. Master Master Master Master Model editörü yeniden haritaBackendModel bu yüzden aynı şekilde davranır. -UseAppliedModel kanca: genişletilmiş yanıt türü şimdi uygulanıyor Modelin ölçeksel ayarları (allowOwnersViewDiğerOrglar,OwnersPrivateOrgs, izin veriyor Sub childOrgs, yaş aralıkları, kimlikProviderSetting, TakımMemberPayFeesSetting), appConfigs haritası ve orgIsÖzel - bu yüzden herhangi bir şey Gelecekteki editör (başlangıç yöneticisi, OAuth yapılandırılmış, ticaret pazarı) kapı açabilir Tamamen re-fetching olmadan. - Private-org toggle: yeni proxy rotası **************************** (ATCHP) ve bir görünürlük kartı, şube tipi sekmede yüzeylendi, kapıdan alındı. OwnersÖzel Organlara izin verin. etkinleştirildiği zaman, diğer veyag sahipleri bunu göremeyecek Ya da listelerde. Optimistic UI bir sonraki uygulamalı modele karşı uzlaştı yenileme.

  3. · BillingService

    Enforce team-member pay-fees setting at Stripe customer creation

    Bumps kamo-shared-library dependency to 1.5.0 so BillingService can resolve the new AppliedModelEnforcementService, and wires team-member vs org pay-fees enforcement into **************** - teamMemberPayFeesSetting == NOT_AVAILABLE: creating a member-specific billing customer (self-pay) is rejected — the org must cover fees. - teamMemberPayFeesSetting == FORCE_ENABLE: creating an org-level customer that would cover team-member charges is rejected — team members must pay themselves. - OPTIONAL: either flow is permitted. Enforcement is best-effort when the org can't be resolved (tooling contexts, legacy data) — falls through to the legacy behavior instead of blocking.

  4. · SecurityService

    Wire applied-model enforcement across every controller

    Every non-role setting on the applied security model is now enforced at the exact controller boundary it governs, and the scalar settings round-trip cleanly through the master/child model editors so the UI can gate on them. - **************** when branchTypeID is set, look up the branch type to derive the parent org; call assertSubChildOrgAllowed and assertAgeRangeAllowed for both member and team-member age slots before committing. New PATCH /{id}/visibility endpoint lets owners flip Organization.isPrivate, gated by assertCanSetPrivate. getAllOrganizations applies filterVisibleOrgsForViewer so results respect both allowOwnersViewOtherOrgs on the viewer's model and the isPrivate flag on candidates. - **************** call assertAppEnableAllowed / assertAppDisableAllowed so NOT_AVAILABLE apps can't be enabled and FORCE_ENABLED apps can't be disabled. - OAuthConfigController POST/PUT: assertCanManageIdentityProvider blocks provider CRUD when identityProviderSetting == NOT_AVAILABLE. - CommerceMarketController POST/PUT: assertCommerceTypeAllowed rejects a commerce type not listed in the model's appConfig for CRM. - SecurityModelController + MasterModelController: round-trip appConfigs through create/update payloads and the GET responses. New processAppConfigs helper accepts the list form used by the frontend editor. - AppliedModelController: response now includes the full scalar settings block (allowOwnersViewOtherOrgs, allowOwnersPrivateOrgs, allowSubChildOrgs, age ranges, identityProviderSetting, teamMemberPayFeesSetting) and the appConfigs map so frontend editors can gate uniformly. Also surfaces orgIsPrivate so the privacy toggle stays in sync.

  5. · kamo-shared-library

    ÇocukOrgGüvenlik Modeli'nde her non-role ayarı

    Geri kalan ayarlar için bir org'un uygulanması için son uygulama ekleyin. Güvenlik modeli. Daha önce okuyan her ayar sadece okunur (veya geri çekildi) kurtarma) artık kalıcı bir yol var, bir runtime apps helper ve bir UI Onu tüketmek için kanca. Data katmanı: - Organizasyon.isÖzel (boolean sütunu, varsayılan false) - org's own görünürlük bayrağı, yeni MasterModelController-gated PATCH endpoint. HizmetAvailability Tür enum (OPLY DEFAULT ENABLED / OPence DEFAULT DISABLED / NOT AVAILABLE / FORCE ENABLED). - ÇocukOrgGüvenlik ModeliConfig varlık + yenidenpo + hizmet - per-app devam ediyor Kullanılabilirlik (ve CRM’in daha önce tasarrufa izin verdi). - ******************** Yuvarlak tren yeni varlık. Runtime Execution: Uygulamalı ModelEnforcementService callers tarafından kullanılan her çeki konsolide eder: , , , , **************** IdentityProviderRequired, ThinkCanSetPrivate, filtreVisibleOrgsForViewer, TeamMemberCan SelfPayFees,TeamMemberPayFeesForced / Blocked, De ki: , , , , çocuk için enabledAppsFor Kids, iddia edilen, Tüm borçluTicaret Türleri alın. Null-güven: "Uygulamalı model" her şeye izin vermez. - ÇocukOrgTemplateHizmeti ayrıca tohum OrgWork sıralarına uzatıldı Ebeveynlerin uygulamalarıConfig varsayılanleri (FORCE ENABLED ve OPence DEFAULT ENABLED) yeni çocuk orgs, bu yüzden yeni-provisioned orgs Doğru varsayılan yüzeyle gelir.

  6. · kamo-internal

    Kilit zorunlu sistem rolleri üye rol atama UI

    - PublicProvider: gelenin üzerine şubeTypeID/masterModelID itiraf Organizasyon ödeme yükü böylece şube tipi sekme güvenilir bir şekilde kapıyı açabilir "Edit Master Model" düğmesine (muhtemelen Jackson seriizasyonuna dayanıyordu prop type check yoluyla akın). RolsPermissionsTab: Rol çekbox şimdi gerekli sistemi işaret ediyor Rol(s) Üyenin tipi ve sahibi bayrağına bağlı olarak kontrol ve engelli olarak: * Üye kimlikli üyeler: "Members" gereklidir. * Takım-Member-tipli üyeler: "Takım Üyeleri" gereklidir. * Team-Member-typed sahipleri: "Administrator (Full Access)" ek olarak Gerekli. Bir "Required" çip ve açıklayıcı ipucu, kısıtlamaları görünür hale getirir editör. zorunlu bir rol üstlenmeye çalışmak hayır-op; arka uç Üye Güvenlik Kontroller'de uzlaşma her neyse tekrar tekrar tekrar olacaktır.

  7. · SecurityService

    Enforce system-role assignment and auto-admin for team-member owners

    MemberSecurityController now enforces the three assignment invariants defined in the brainstorm spec: - saveMemberSecurity: before persisting the caller's requested roleIds, augments the set with the mandatory system role(s) based on member type: Member-typed members always get roleMemberID; Team-Member-typed members always get roleTeamMemberID; Team-Member owners additionally always get roleAdminID. LinkedHashSet preserves caller ordering while deduping. - updateMemberAccess: when the owner flag toggles, the Administrator role is added or removed on the team-member to keep role assignments in sync with ownership. Rights-applied recalculation runs in the same transaction so downstream reads see the updated effective permissions immediately.

  8. · kamo-shared-library

    Üye haklarına karar vermek için şablon güç kuralları ve DEFAULT geri çekilme

    **************** Şimdi Uygulananlar Modelin mevcut cascade'nin üstünde 4 varsayılan-role şablonları (org rolleri → Bölüm → iş unvanı → üye: - Rol tipine özgü FORCE GRANTED/FORCE NUKE tüm cascade seviyelerini kazanır. Şablon üye türü tarafından seçilir: takım üyeleri kullanır ADMINISTRATÖR, takım üyeleri TEAM MEMBER kullanıyor, sade üyeler MEMBER kullanıyor. - DEFAULT şablon FORCE değerleri, rol tipi şablon şablonunda cascade'yi kazanır Bu doğru için güç kuralı yoktur (per Q7 öncekilik). - DEFAULT güç olmayan değerler (GRANTED/NUKE) son satırın savunması olarak hareket eder Tam cascade'den sonra çözülmeyen haklar. Uygulamalı ModelResolverService @Autowired (required=false) olarak enjekte edilir. Mevcut iki inşaatçı-mandatoryunu inşa eden birim-test kabloları repositories çalışmaya devam ediyor, mirasın hiçbir kuvvet-rules yolu yok.

  9. · kamo-internal

    Master model editörü, rol şablonları ve kuvvet-rule gating

    UI'deki yeni şube tipi güvenlik modeli: - şube tipi sekme bir "Edit Master Model" düğmesine ulaşır (gizli olduğunda sakladı). org'un bir şubeTypeID atanması var) bu model editörü ustada açıyor mod: Hiçbir isim alanı, hiçbir şube tipi çip, hit /master-model kurtar. Model editörü (hem de çocuk-model ve düzenleme-master-model) yeni bir kazanç sağlar "Default Security Roles" bölümü "Allked Apps" sonrasında, sekmelerle Yönetici / Takım Üyesi / Üye / DEFAULT ve 5-değer ayarları (FORCE GRANTED, GRANTED, Not SPECIFIED, FORCE NUKE, NUKE). - Yeni kullanımAppliedModel() kanca getiriyor /api/güvenlik/applied-model bir kez bir kez Ve ortaya çıkanlar editörleri tüketmek içinForced(rightName, roleType)'dır. Güvenlik rolleri, bölümler, iş başlıkları ve per-member roller-permissions sayfalar, geçerli şablonlar tarafından oluşturulan hakları gizler: * güvenlik-roles: sistem rolleri eşleşen şablon + DEFAULT kullanır; Özel roller sadece DEFAULT kullanır (Q11 Cevap A). * Bölümler + iş isimleri: DEFAULT sadece (özel olmayan). * Üye sayfası: üye tipi şablon (TEAM MEMBER vs MEMBER) + DEFAULT (Q8 C, tip-ilk değerlendirme emrine cevap verir). Yeni proxy rotaları: /api / güvenlik/master-model (GET/PUT) /api / güvenlik/applied-model (GET).

  10. · SecurityService

    Master-model + applied-model endpoints and template-aware org seeding

    Adds the controllers that surface the new branch-type security flow: - /api/security/master-model (GET/PUT) manages the current org's master model; only writeable when Organization.branchTypeID is null. - /api/security/applied-model (GET) resolves which model governs this org and returns per-template force-rule maps for frontend gating. - SecurityModelController round-trips the 4 default-role templates as part of its existing create/update payloads. - OrganizationController propagates the new branchTypeID from the request body and seeds the new org's 3 system roles from the applied model's templates via ChildOrgTemplateSeedingService.

  11. · kamo-shared-library

    Master model ekleyin, varsayılan rol şablonları ve uygulamalı model çözmer

    Yeni şube tipi güvenlik modeli akışı için veri katmanını tanıtın: - Organizasyon güvenilmez şubeTypeID ve masterModelID sütunları kazanır. - Yeni RolRightTemplateSetting Type enum with 5 values (FORCE GRANTED, GRANTED, Not SPECIFIED, FORCE NUKE, NUKE) şablon plakalı ayarlar için. Yeni VarsayılanRoleType enum (ADMINISTRAT, TEAM MEMBER, MEMBER, DEFAULT) Her ÇocukOrgu Güvenlik Modeli'ne eklenen 4 rol şablonu için. - Yeni varlıklar ************ ve ************ artı onların repos, hizmeti ve DTOs. - Uygulamalı ModelResolverService, verilen veyag yönetilen modeli çözer (branchType-.ed or master) ve kuvvet aramalarını ortaya çıkarır. - ÇocukOrgTemplateHizmet tohumları yeni çocuk ya dags' 3 sistem rolüne bakın Uygulanan modeldeki GRANTED/NUKE değerleri; güç değerleri kalır Şablonda ve runtime'da uygulanır. End-user OrgRoleRight, 3 değerli RolRightSettingType kullanmaya devam ediyor - Güç değerleri kesinlikle bir şablon katmanlı konsepttir.

  12. · kamo-internal

    Güvenlik model editörü için şube tipi çip-input alanı ekleyin

    - BranchTypeChipField with color dot toggle, edit-on-up etiketi, and X delete - BranchTypeEditDialog for name /description editing - Autocomplete dropdown, GET /api/güvenlik /branch-tips'ten çekilir, mevcut model tiplerini dışlar, çapraz model türleri için kaynak modeli gösterir - RunModel, PUT /POST ödeme yüklerinde şubeTypes ve silinirBranchTypeIds gönderir - Liste masası renkli dot cipsi ile tip sütun alır -Models haritaları geri dönüş yanıtlarından elde edilir

  13. · kamo-login

    MANAGE USERS'i RolRightType

  14. · kamo-register

    MANAGE USERS'i RolRightType

  15. · kamo-internal

    MANAGE USERS hemen tüm ön referanslardan

  16. · kamo-shared-library

    MANAGE USERS haklı (id=19) RolRightType enumdan

  17. · kamo-internal

    Şube tipi güvenlik API rotasını ekleyin

  18. · SecurityService

    Wire branch types into security model CRUD endpoints

  19. · kamo-shared-library

    ÇocukOrgGüvenlik ModeliDTO'yu tam alanlarda ve şubeTypes ile genişletin

  20. · kamo-shared-library

    Add OrgBranchTypeService

  21. · kamo-shared-library

    Add OrgBranchTypeRepository

  22. · kamo-shared-library

    Add OrgBranchTypeDTO

  23. · kamo-shared-library

    Add OrgBranchType entity

  24. · kamo-internal

    Update BranchSetupManager subtitle to reference dynamic şube tipi etiketi

  25. · kamo-internal

    Rename Branch Kurulum sekmesi dinamik {branchLabel} Türler ve URL'yi şube tipine güncelleme

  26. · kamo-login

    Sıfır Capcha - her başarısız giriş denemesinden sonra

    Kullanıcılar her yanlış şifreden sonra insan olduklarını tekrarlamalıdır. Calls widget.reset() ve Capcha Gerçekleştirilmiş/payload state on Her ikisi de belirgin başarısızlıklar ve ağ hataları.

  27. · EmailService

    Auto-inject logoUrl, logoSimpleUrl, and orgName variables at send time

    EmailTemplateService now merges base variables (logoUrl, logoSimpleUrl, orgName) derived from the org's primary domain before rendering, so all transactional templates can reference {{logoUrl}} and {{logoSimpleUrl}} without callers needing to pass them explicitly. Caller-supplied vars still take precedence.

  28. · kamo-internal

    Kullanıcı düzeyindeki alanlarda ve şifre değişim bölümü için izin kapıları ekleyin.AccountTab

  29. · kamo-internal

    Erişim kapısı ve MANAGE MEMBER SECURITY sekmesi üye ayarları sayfasına giriş sayfası

  30. · kamo-internal

    Sonraki.js API rotasını ekleyin

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