connectbase-client 4.3.0 → 4.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,46 @@
3
3
  본 SDK 의 모든 주요 변경사항을 [Keep a Changelog](https://keepachangelog.com/ko/1.1.0/) 형식으로 기록합니다.
4
4
  버전은 [Semantic Versioning](https://semver.org/lang/ko/) 을 따릅니다.
5
5
 
6
+ ## [4.4.1] - 2026-07-26
7
+
8
+ ### Fixed — 로그인·가입 응답의 refresh 쿠키가 저장되지 않아 세션 복구가 항상 실패하던 문제
9
+
10
+ `persistence: 'none'`(권장·기본값) + `autoRestoreSession: true` 조합에서 **새로고침하면 항상
11
+ 로그아웃**되던 버그를 고쳤다 (platform-issue 019f9e23).
12
+
13
+ `fetchCredentialsForPath` 가 `/v1/public/` prefix 전체를 `credentials: 'omit'` 으로 보내고 있었는데,
14
+ 로그인·가입 엔드포인트(`/v1/public/app-members/signin` · `signup`)가 바로 그 아래였다. `omit` 으로
15
+ 보낸 요청은 브라우저가 응답의 `Set-Cookie` 를 **폐기**하므로 멤버 refresh 쿠키가 아예 저장되지
16
+ 않았고, 이후 `/v1/auth/re-issue` 는 쿠키가 없어 401 이 됐다. 즉 "안전한 기본값" 과 "동작하는
17
+ 세션" 중 하나를 포기해야 하는 상태였다.
18
+
19
+ - 쿠키를 주고받는 공개 인증 경로(`signin` / `signup` / `signout`)만 화이트리스트로 `'include'`.
20
+ - 그 밖의 `/v1/public/*` 는 그대로 `'omit'` — `*.web.connectbase.world` 배포 시 부모 도메인
21
+ 콘솔 쿠키가 딸려오는 회귀(019ea60d)는 계속 차단된다.
22
+
23
+ > 서버 측에도 짝이 되는 수정이 함께 배포됐다. `/v1/auth/re-issue` 의 인증 미들웨어가 앱별
24
+ > 쿠키 이름(`cb_member_refresh_token_<appID>`) 대신 legacy 단일 이름만 찾고 있어서, 쿠키가
25
+ > 저장된 뒤에도 401 이 났다. SDK 만 올리면 동작하지 않으므로 두 수정이 모두 필요하다.
26
+
27
+ ## [4.4.0] - 2026-07-25
28
+
29
+ ### Changed — `cb.publicKey.*` 를 service_role 함수에서 호출 가능 (`publickey:read` / `publickey:manage`)
30
+
31
+ 퍼블릭 키 단위 `payment_mode`(4.3.0)가 생긴 뒤에도 **키를 만드는 경로가 콘솔뿐**이라, "QA 빌드에는
32
+ test 결제 키" 를 배포 파이프라인이 자동화할 수 없었다(platform-issue 019f9961). 키 관리 REST 를
33
+ service_role 함수(`ctx.cbAdmin`)에 열고, 최소권한 스코프를 추가했다.
34
+
35
+ - 함수 `management_scopes` 에 `publickey:read`(목록/모드 조회) / `publickey:manage`(생성·수정·삭제)
36
+ 를 opt-in 하면 `ctx.cbAdmin.publicKey.*` 가 동작한다. 스코프가 없으면 403.
37
+ - `cb.publicKey.*` 에 위임 인증 가드 추가 — Public Key(cb_pk_) 단독 인스턴스(브라우저)에서
38
+ 호출하면 즉시 에러를 던진다(키가 자기 자신을 발급/수정하는 경로 차단). 콘솔 JWT 와
39
+ service_role 경로는 그대로 동작한다.
40
+ - `cb_sk_`(시크릿 키) 단독 호출은 여전히 401 — 시크릿을 자동화/AI 컨텍스트로 흘리지 않는 정책 유지.
41
+
42
+ AI 도구를 쓰는 경우 MCP `create_public_key`(`payment_mode` 파라미터 추가) /
43
+ `list_public_keys`(신규) / `update_public_key`(신규) 로 같은 작업을 할 수 있고, 생성 응답과 목록에
44
+ `payment_mode` 가 포함돼 "QA 키가 정말 test 인지" 되읽어 검증할 수 있다.
45
+
6
46
  ## [4.3.0] - 2026-07-25
7
47
 
8
48
  ### Added — 퍼블릭 키 단위 결제 모드 (`payment_mode`)