Implică org-ul țintă al unui nou abonament la apelantului
O prima achizitie nu are nici un abonament existent pentru a copia tintaOrganizationId de la, și care necesită necondiționat este ceea ce a făcut crearea unul d...
Nu mai revoca accesul unui membru la facturare atunci când le adaugă în altă parte
adăugaţi () şters rândul membrului pe orice alt cont pentru a satisface un unic global care nu mai există. Adăugând pe cineva la un al doilea cont de facturare ...
Cumpăraţi un bloc atunci când un org optat rămâne fără spaţiu
Rulează la scurt timp după matura instantaneu noapte, pentru că este ceea ce produce cifra de utilizare se decide cu privire la extinderea față de numărul de ie...
Lasă o modificare de preț catalog de fapt ajunge la Stripe
Preţurile la dungi sunt imuabile, iar cartografierea conţine un rând pe (org, tip, cod, ciclu) în spatele unei chei unice, astfel încât odată ce un preț a exist...
Capacitatea de raportare alături de utilizare
Panoul de stocare a raportat octeți stocate împotriva nimic, la toate nici un procent, nici bani fie că a fost confortabil sau pe cale de a opri încărcarea lo...
Faceți un prim plan purchasable, și returnați prețurile reale plan
Două lucruri au oprit o organizaţie să cumpere un prim abonament. Lista de planuri a fost accesibil numai prin sub.marketId pe un abonament org deja a avut loc...
Lasă un suborg să ajungă la contul care îi plăteşte
ContAbonare în mod deliberat separă plătitorul de organizația a cărei membrii consumă locurile, iar conturile autoprovocate se află la nivel superior KamoCRM or...
Factură pe unitate adăugată de unități cumpărate, nu prin numărătoare
Filează noua cantitate adăugată prin crearea și actualizarea: o completare FLAT acum ia cantitatea de dungi din ceea ce a cumpărat de fapt, astfel încât patru 1...
Încărcați ceea ce catalogul spune, o dată, pentru cantitatea potrivită
Cinci defecte care toate mutat bani reali, plus IDOR sub-resursa sub ele. Cicluri de facturare. Preţurile anuale au fost trimise lui Stripe la rata de stocare ...
Verifica modul Dumnezeu împotriva bazei de date, nu un antet falsificat
AccountOrgScopeInterceptor scurtcircuitat fiecare org și membru verifica pe X-God-Mode-Active Header brut, și kamo-internal de facturare proxy copii care header...
CockroachDB-doar SQL care PostgreSQL respinge
CockroachDB scrie tipul de text STRING; PostgreSQL și YugabyteDB folosesc TEXT. 25 de mulaje de-a lungul interogărilor native încă emiteau CAST (x AS STRING) și...
Reconstruiește împotriva librarului comun @Lob LONGVARCHAR fix
Dialectul Hibernate PostgreSQL citește @Lob String coloanele ca OID prin getLong(). Afectează notele, contactele, calendarul, jetoanele Oauth, parolele IMAP, ca...
Punct la YugabyteDB și utilizați PostgreSQLDialect
CockroachDB a fost înlocuit de YugabyteDB. Conexiunea se mișcă din gandac-public:26257 to yb-tserver-service:5433, and the Hibernate dialect De la *************...
Citiți utilizarea imaginii dintr-o trecere deduplicată
Urmează modificarea în comun-bibliotecă la o taxă per fișier distinct per organizaţie. Atât rezumatul cât şi scriitorul de fotografii de zi cu zi iau un singur ...
Reconstructie pentru domeniul previzualizărilor generate
Picks up shared-Library schimba faptul că facturile miniaturi și piese la organizare și citește bytes derivat de la img dat derivate.
Reconstructie pentru domeniile de branding si docs-workspace
Picks up the shared-library change that reading both from object story days.
Reconstruiește pentru domeniul atașament mesaj text
Preia schimbarea de librarie comună care măsoară atașamentele MMS din date: URI stocate în linie în VOIP Mesages.
Reconstrucția împotriva domeniilor de stocare per categorie
Picks up the shared-library change that splits imgs into one domain per ImageAssocType, deci inregistrari de apel, mesaje vocale, chat atasamente, resurse HR și...
Înregistrați semantica cutia poștală corectată
EMAIL măsoară acum e-mail Kamo de fapt gazde, atribuit pe cutie poștală la organizaţie care deţine, mai degrabă decât sumar un index de căutare care ambele rata...
Să o platformă admin rulați scanarea instantanee la cerere
Matura este ceea ce face absorbții de perioadă și totaluri de viață pentru domenii greu-eliminate raspunzator la toate, asa ca zilele pierdute la o pana sunt pi...
Oferă fiecărei organizații o limită reală de tranzacție
StocareSnapshotSweep.catchUp efectuat @Transactional (REQUIRES NEW) și a fost numit de la matura() pe aceeași fasole. Primăvara se aplică @Transacţional printr-...
Raportează ce depozitează o organizaţie
Fila de statistici a contului a spus întotdeauna "Nu există date de utilizare disponibile pentru această perioadă," pentru fiecare organizație, deoarece obțineC...
Forţează-te pe cont propriu, nu doar pe graniţa org
Urmărirea porții de inter-org, acum că regula este decisă: în interiorul unei organizații puteți gestiona propriul cont de facturare, și un proprietar de organi...
Opriți o organizație ajunge la o altă organizație facturare
/api/bilaring/conturi domeniul său de aplicare listarea sa de antetul X-Org-Id, dar fiecare rută de dedesubt / {accountuid} a luat ID-ul direct de la calea și n...
Retrimetrie clădirea comun-library, care UPlink LAN păstrează corupere
Trei clădiri au murit astăzi pe "Tag nepotrivire" trăgând un borcan ajutor, deoarece kbservice, mcpgatewayservice și ragservice lovit eroarea identică împotriv...
Răspunsul "este acest sellable" din catalogul aplicației, nu enum
Availability a devenit operator-editable la runtime, astfel încât derivă din ServiceType.getStage () înseamnă publicarea MLOS în aplicații și caracteristici lăs...
Oglindă Maven Central prin Google GCS copie
Build 19 nu a reușit să aducă tomcat-embed-core de la repo.maven.apache.org cu 'Tag necore' transfer corupt, nu o eroare de cod: aceeași comitere construiește ...
Validarea codurilor adiționale înainte ca acestea să poată acorda o aplicație
codul activ addon coduri a fost scris direct din organismul de cerere. Asta a fost inofensiv în timp ce nimic nu a citit coloana, dar este acum o intrare de aut...
Ascunde aplicațiile neeliberate din catalogul Plans & Billing
****************************************************************************************************************************************************************...
Păstrează prefixul pe numele de fir al platformeiAccountSummary
Același Lombok/Jackson hazard ca PlatformOrgRow: isTopNovel() își pierde poziția de pe serializarea, astfel încât DTO a pus Frontend declarat PlatformAccountTi...
Păstrează prefixul pe fir pentru isTopLevel/isPlatformProduct
Lombok generează esteTopNivel() pentru o isTop benzi prefixul În timp ce clientul citește - Nu. ă Clientul ar fi citit nedefinit: Insignele Platformei și Prod...
Declară în mod explicit meciuri de securitate astfel încât serviciul să poată începe
Serviciul nu a mai fost implementat de la 2026-07-03; fiecare capsulă de la prăbuşire înainte de contextul încărcat: Această metodă nu poate decide dacă aceste...
Serveşte directorul org ca o pagină filtrată, sortate, paginată
GET /orgs ia pagina / dimensiunea / q / sort / dir plus şapte filtre şi returnează casa Pagină plic cu agregate la nivel de proprietate. GET /orgs / {orgid} ser...
Hidratare de pagini la un număr constant de interogare
Titlurile-mamă, domeniul primar, planul/piața din spatele dreptului și steagul abonaților-catalog sunt fiecare dintre cele câte un lot IN (:ids) pe întreaga pag...
Director rând/pagină DTO și depozitul de interogări nativ
Platform OrgRow poartă cele două faţete separat: dreptul (submarinele de intrare) care vizează orga -- ce o guvernează) şi facturarea deţinută (contele org deţi...
Org director SQL cu CTE per-facet
Conturi deținute, abonamente de intrare, membri, licențiați și copii fiecare agregate în propria CTE înainte de a fi unite cu orgi. Alăturându-se lor într-o sin...
Cerere de director org validată, prinsă
Cleme de dimensiuni la [1,100] și un fel nerecunoscut cade înapoi la titlu, astfel încât o URL-ul manual nu poate solicita întreaga proprietate și nu poate ajun...
Modul de îndreptăţire a derivei printr-un singur remix comun, determinist
TrialAdminService și-a ales abonamentul la proces cu findFirst() peste lista necomandată, astfel încât un org deține atât un proces în așteptare, cât și un proc...
Harden download kubectl împotriva egress fulg [skip ci]
dL.k8s.io peste ieşirea alergătorului scade intermitent la mijlocul transferului: curl: (56) OpenSSL SSL read: decriptare eșuată sau înregistrare proastă mac ca...
Serializa ID-uri lungi ca siruri de caractere pentru a opri pierderea de precizie org-id
Id-uri Org sunt CockroachDB unic rowid () valori care depășesc JS Max safe integer. BillingService a fost serializarea-le ca JSON brut numerele, deci JSON.parse...
Expune trialExpiresAt on platforma org rezumat pentru admin trials UI
Abonamentul plătit elimină termenul limită de încercare (plătit înlocuiește procesul)
Se aplică/extinde/se completează criteriile finale de evaluare a studiului + DTO trialExpiresAt
Programul de maturare reverts teste expirate pentru a gratuit cu cache-bust
Migrate to k1m1 (clone+registry+kubeconfig from k1m1, drop k2m1, simple kubectl install)
Înregistrează repertoriile pentru linia de depunere a contorului
EsignMeterSubmissionService needs EsignUsageRecordRepository, but @EnableJpaRepositorii nu au scanat com.kamo.z.shared.esign.repos, astfel încât contextul nu a ...
Contorizarea consumului de e-sign + verificarea de către consumatori a autoservirii
#4 contorizare: - EsignMeterSubmissionService (@Scheduled per zi): agregate de origine API EsignUsageRecords per org+ period; primul 40/perioadă inclusă, restul...
Ca ceea ce vezi de transport maritim?
Fiecare dintre aceste actualizări aterizează automat în spațiul de lucru. Începe gratuit și urmăriți-l crească săptămână după săptămână.