connectbase-client 3.9.0 → 3.10.0

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,41 @@
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
+ ## [3.10.0] - 2026-05-10
7
+
8
+ ### Fixed — `/v1/auth/re-issue` 일시 실패에 강제 로그아웃 (platform-issue 019e11cf)
9
+
10
+ `HttpClient.refreshAccessToken()` 가 모든 실패에 즉시 토큰을 폐기해, 5xx / 네트워크 hiccup
11
+ 한 번에 활동 중인 사용자가 강제 로그아웃되던 문제를 수정. OAuth 클라이언트 표준
12
+ (Auth0 SPA SDK / MSAL / Amplify) 에 맞춰 실패를 분류한다.
13
+
14
+ | 응답 | 분류 | 토큰 처리 | 호출되는 콜백 |
15
+ |---|---|---|---|
16
+ | `5xx` / 네트워크 / abort / 손상된 200 | transient | **보존** (다음 호출에서 backoff 후 재시도) | `onTransientRefreshFailure`, `onAuthError` |
17
+ | `401` / `403` / `400 invalid_grant` / `400 invalid_token` | permanent | 폐기 | `onTokenExpired`, `onAuthError` |
18
+ | 그 외 4xx (예: `400 invalid_request`) | client_bug | **보존** (재시도 무의미, 패치 배포로 회복) | `onAuthError` |
19
+
20
+ ### Added — `onTransientRefreshFailure` 콜백
21
+
22
+ 일시적 refresh 실패 시 호출되는 새 콜백. 토큰은 살아있으므로 강제 로그아웃 없이
23
+ "연결이 잠시 불안정합니다" 같은 비파괴 알림을 띄울 때 사용:
24
+
25
+ ```typescript
26
+ const cb = new ConnectBase({
27
+ publicKey: '...',
28
+ onTransientRefreshFailure: () =>
29
+ toast.warn('연결이 잠시 불안정합니다. 잠시 후 자동 복구됩니다.'),
30
+ onTokenExpired: () => { window.location.href = '/login' },
31
+ })
32
+ ```
33
+
34
+ ### Behavior change (semver minor 로 분류한 이유)
35
+
36
+ `onTokenExpired` 의 호출 시점이 **refresh token 자체가 무효화된 경우로 한정**된다.
37
+ 이전 버전에서는 transient 실패에도 호출됐기에, 그 콜백을 "임의 refresh 실패 알림" 으로
38
+ 사용하던 앱은 동작 변화가 있다. transient 알림은 새 `onTransientRefreshFailure` 로 분리.
39
+ `onAuthError` 는 모든 실패에서 호출되는 점은 동일.
40
+
6
41
  ## [3.9.0] - 2026-05-10
7
42
 
8
43
  ### Added — Support API (end-user issue reporting)