Google GCS 사본을 통해 Mirror Maven Central
Repo.maven.apache.org의 repo.maven.apache.org에서 tomcat-embed-core를 태칭하지 못했습니다. 손상된 전송, 코드 오류: 동일한 커밋은 로컬로 깨끗하게 구축, 그래서 공유 -lib 그것의 근원의 신선한 복제에서. 각 도커 단계는 감기에서 시...
유효한 추가 코드 전에 그들은 응용 프로그램을 부여 할 수
active addon codes는 요청 몸에서 직선으로 작성되었습니다. 그것은 아무것도 읽지 않은 동안 무해했다 열, 그러나 그것은 이제 권한화 입력입니다 : 앱의 ServiceType 보조금에 바인딩, 그리고 기업 협상적인 원고 모듈을 위해, 그들은이기 때문에, ONLY 보조 경로입...
Plans & Billing 카탈로그에서 공개되지 않은 앱 숨기기
**************** 고객이 구독하는 것을 선택하는 탭을 다시, 그래서 그것은 아직 사용할 수없는 목록에서 제품을 제공하지 않아야합니다. 동일한 규칙은 공개 가격 카탈로그는 다음과 같습니다. App-bound 계획 기능 및 서비스 유형이 COMPLETED에 도달하지 않은 추가 ...
PlatformAccountSummary의 철사 이름에 is-prefix를 너무 지키십시오
PlatformOrgRow와 같은 Lombok/Jackson 위험: isTopLevel()은 `is`를 잃습니다. 일련화, 그래서 DTO는 철사에 `topLevel`/`platformProduct`를 두고 frontend의 선언 된 PlatformAccountSummary 유형은 Top...
IsTopLevel/isPlatformProduct를 위한 철사에 is-prefix를 지킵니다
Lombok 생성 isTopLevel() 의 `boolean isTopLevel` 필드와 잭슨 `is` prefix를 구부리고, 라이브 엔드포인트는 `topLevel`을 일관화하고 `platformProduct` 클라이언트가 읽는 동안 ****** *********************...
Declare security matchers 명시적으로 그래서 서비스는 시작할 수 있습니다
이 서비스는 2026-07-03 이후 배포되지 않았습니다. 모든 팟은 추락되었습니다. 해결하기 전에: 이 방법은 이러한 패턴이 봄 MVC 패턴 또는인지 결정할 수 없습니다. not ... servlet context에 1 개 이상의 mappable servlet이 있습니다. {Disp...
Org 디렉토리를 필터링, 정렬, paginated 페이지
GET /orgs takes 페이지/size/q/sort/dir plus 7 필터 과 반환 집 ページを選択 GET /orgs/{orgId}는 전체 세부 정보를 제공합니다. 콘솔의 드릴 인 서랍의 경우, per-account fan-out이 미세하기 때문에 그것은 하나의 org에 바인딩됩...
일정한 쿼리 수에 Batched 페이지 수화
학부모 제목, 기본 도메인, 제목 뒤에 계획 / 시장 구독 catalog 플래그는 전체 페이지에 각각 배치 된 (:ids), 그래서 100-row 페이지는 1-row 페이지와 동일한 6개의 문이 있습니다. 테스트 asserts that equality direct -- 이 구현은 점수를...
디렉토리 행/페이지 DTO 및 기본 쿼리 저장소
PlatformOrgRow는 두 개의 페이스트를 별도로 운반합니다. 제목 (inbound subs) org를 대상으로 -- 어떤 통치자) 및 청구가 개최 (org가 소유합니다. -- 플랫폼 org 및 리셀러에만 비 zero. Aggregates 설명 전체 필터 세트, 페이지가 아닌, 그...
Org 디렉토리 SQL 와 per-facet CTEs
계정, 인바운드 구독, 회원, 라이센스 및 어린이 각각 orgs에 합류하기 전에 자신의 CTE에 집계. 그들에 게 패스는 행을 곱하고 모든 SUM을 팽창합니다. 순수하고 단위 테스트 (26 테스트) : 없음 '::'캐스팅, 모든 값 경계, 정렬 키 OrgSort를 통해 화이트리스트. ...
Validated, Clamped org 디렉토리 요청
크기 [1,100]에 클램프와 인식되지 않은 분류는 제목으로 돌아갑니다, 그래서 손 편집 된 URL은 전체 재산을 요청하거나 SQL에 도달 할 수 없습니다 무료 텍스트. OrgSort의 백리스트입니다.
하나의 공유를 통해 Derive entitlement 모드, deterministic resolver
TrialAdminService는 findFirst()를 통해 평가판 구독을 선택했습니다. 주문되지 않은 목록, 그래서 org는 두 권총을 들고 활성 재판은 할 수 로그인 곧 조직 디렉토리에는 정렬 및 필터가 있습니다. 이 상태, 그리고 쿼리는 불쾌한 규칙을 재현 할 수 없습니다. 지...
Flaky egress에 대한 kubectl 다운로드를 Harden [skip ci]
dl.k8s.io 런너의 egress 간에 실수로 중간 전송을 삭제: 컬: (56) OpenSSL SSL read: 해독 실패 또는 나쁜 기록 맥 그렇지 않으면 녹색 빌드에 배포되지 않습니다. 반복적으로 관찰 kamo-signer-monorepo 및 카모 번역 사전. 추가 --retr...
긴 ids를 문자열로 직렬화하여 org-id 정밀도 손실을 중지합니다
Org ids는 CockroachDB unique rowid() 값입니다. MAX SAFE INTEGER의 장점 BillingService는 JSON으로 직렬화되었습니다. 숫자, 그래서 kamo-internal의 JSON.parse 조용히 둥근 e.g. 118875662457526682...
K1m1 (clone+registry+kubeconfig from k1m1, 드롭 k2m1, 간단한 kubectl install)에 마이그레이션
미터 제출 콩에 대한 esign 저장소 등록
EsignMeterSubmissionService는 EsignUsageRecordRepository를 필요로 합니다. @EnableJpaRepositories는 com.kamo.z.shared.esign.repos를 검사하지 않았으므로 컨텍스트 시작하기 패키지 추가 (이제는 @Entit...
E-sign 사용법 미터로 재기 + 소비자 셀프 서비스 체크 아웃
#4 미터링: - EsignMeterSubmissionService (@Scheduled daily) : API-origin의 집계 EsignUsageRecords per org+period; 처음 40/period 포함, 나머지 제출 Stripe MeterEvents로. 보고를 통해 ...
Back metered add-on 가격과 빌링 미터
Stripe (>= 2025-03-31.basil)는 레거시 use type+scalee usage를 거부합니다. 미터로 재는 모형 (미터 가격은 미터에 의해 역행되어야 합니다), 그래서 USAGE BASED add-on 가격 생성 실패 — 사용 기반 청구를 끊기 (예 : sign.pi...
Platform → Orgs에서 Organization.isPlatformProduct 관리
PlatformAccountSummary 노출 isPlatformProduct + hasSubscription 시장; 새로운 퓨트 **************** (platform-admin 게이트) 플래그를 설정하고 org의 회원의 제목을 유효화 (their products) 뿌리, 따...
Scope concurrency to build jobs, not Kubernetes deploys
Workflow-level concurrency serialized the whole pipeline (including kubectl rollouts). Move the group to the build job only so deploy jobs from different runs c...
Boolean DTO 필드에 @JsonProperty 추가
Lombok 생성 isXxx() isXxx라는 boolean 필드에 대한 getters입니다. Jackson strips 주요한 'is' 부터 is-getters 과 serializes 그들 as 'xxx' 오히려 'isXxx', 그래서 isAccountManager가 'accountM...
Org 목록에서 구독 추적 계정 포함
listForOrg 이제는 구독 대상이 되는 계정을 반환합니다. 요청된 org — 계정이 직접 소유하지 않습니다. 멀티-org에서 지불 계정은 KamoCRM 최고 수준의 org에 살고 있습니다. 구독 대상 하위 파일; 이 KamoClub org 소유자없이 0 계정을보고 "지불 계정"메시...
Sub-org를 대상으로 합니다. per-sub 회원은 계정 관리자에서 나뉩니다
구독은 TargetOrganizationId가 필요합니다. — (계정, 시장, target org) 트리플은 새로운 고유의 열쇠입니다. AccountBillingMember서비스는 AccountMemberService로 나눕니다. SubscriptionMemberService (sub-...
AccountMember를 통해 Account.members를 사용; 이름은GroupPlanManager -> isAccountManager
계정은 이제 그룹이므로 이전의 모든 참조 accountBillingMember entity 가 새로운 generic 에 지적 *************** 이름 * "group plan manager" 권한 플래그는 전체로 이름을 변경 "account manager" ( 역할은 동일합니다...
계정 기반 entities에 BillingService를 씁니다
BillingService는 현재 계정 중심입니다. 회원 중심의 흐름 (e.g. "카드 추가", "플랜 구독" 이제 계정으로 이동 아직 존재하지 않을 때 회원을위한 자동 생성; 계정 Stripe 고객 ID, 하나 이상의 카드, 구독, 라이센스를 보유하고 있습니다. 청구서 및 청구서 구성...
사용 *********** primitive 겟터
isOrganizationOwner는 TeamMember에 원시 불린이므로 Lombok- 생성된 accessor isOrganizationOwner() getIsOrganizationOwner()입니다. BillingGroupMemberService 및 LicenseService에서 컴...
BillingGroups 주변 청구서 작성
Org-level의 삭제 *********** 관제사, 서비스 및 DTOs. 소개 : - BillingGroupController 장착 그룹, 회원, 구독, 라이센스, /api/billing/groups의 결제 방법 및 송장. - BillingGroupService (라이프 사이클 +...
GET /subscriptions/current에서 상업 구독 노출
Stripe 미러 행이 존재하지 않을 때, org active commerce를 해결 SubscriptionRecord (예를들면 COMP 보조금)은 PaymentMethod 및 계획 기능. 무료 계획을위한 앱 설정 수정.
Kamo-shared-library 업데이트에 대한 재건 (remove OrganizationType, add isTopLevel)
Kamo-shared-library 업데이트에 대한 재건 (remove OrganizationType, add isTopLevel)
PlatformAdmin Controller + 서비스 추가
- PlatformAdminController at /api/billing/platform (클래스 레벨 @PlatformAdminOnly) - GET /orgs, GET /orgs / {orgId} - POST /org/{orgId}/grants, PATCH|DELETE /orgs/{...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (appConfig upsert-only fix)
Pulls the hardened **************** that no longer deletes appConfig rows whose service types are absent from the caller's payload — prevents silent data loss w...
Rebuild for kamo-shared-library update (effective-feature resolver)
Picks up the new AppliedModelEnforcementService methods (computeAvailabilitiesMap, isAppEffectivelyEnabled, getEffectivelyEnabledAppTypes, computeEffectiveFeatu...
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 enforc...
