connectbase-client 3.17.1 → 3.18.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 +40 -0
- package/README.md +5 -0
- package/dist/connect-base.umd.js +4 -4
- package/dist/index.d.mts +43 -1
- package/dist/index.d.ts +43 -1
- package/dist/index.js +58 -8
- package/dist/index.mjs +58 -8
- package/package.json +1 -1
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
|
+
## [3.18.0] - 2026-05-21
|
|
7
|
+
|
|
8
|
+
### Added — Knowledge Base 문서 수정 (`knowledge.updateDocument`)
|
|
9
|
+
|
|
10
|
+
기존 KB 문서를 수정하는 `cb.knowledge.updateDocument(kbID, docID, data)` 메서드를 추가했다.
|
|
11
|
+
`content` / `file_content` / `metadata` 중 하나라도 포함하면 서버가 전체 재색인(기존 청크
|
|
12
|
+
삭제 → 재청킹 → 재색인)을 수행하며, `name` 만 보내면 재색인 없이 문서 라벨만 변경된다.
|
|
13
|
+
재색인 시 서버는 `status='pending'` 으로 즉시 응답하고 색인은 백그라운드로 진행한다
|
|
14
|
+
(`addDocument` 와 동일).
|
|
15
|
+
|
|
16
|
+
- 신규 타입 `UpdateDocumentRequest` export.
|
|
17
|
+
- REST `PUT /v1/public/knowledge-bases/:kbID/documents/:docID` 에 대응.
|
|
18
|
+
|
|
19
|
+
### Note — Knowledge Base 색인 과금
|
|
20
|
+
|
|
21
|
+
서버에서 KB 문서 색인이 사용량 과금 대상이 되었다. 문서 생성·수정(재색인) 시 색인 토큰이,
|
|
22
|
+
색인된 청크 보관 용량이 사용량으로 집계된다. SDK 사용 방식에는 변화가 없으며 BM25 키워드
|
|
23
|
+
검색 자체는 외부 임베딩 API 비용이 없다.
|
|
24
|
+
|
|
25
|
+
## [3.17.2] - 2026-05-20
|
|
26
|
+
|
|
27
|
+
### Fixed — 콘솔 도메인 세션 쿠키 누수로 인한 앱 공개 API 401
|
|
28
|
+
|
|
29
|
+
`*.web.connectbase.world` 서브도메인에 배포된 앱은 콘솔 도메인(`connectbase.world`)의
|
|
30
|
+
세션 쿠키를 `.connectbase.world` 스코프로 공유받는다. 로그인 기능이 없는 앱에서 개발자가
|
|
31
|
+
ConnectBase 콘솔에 로그인된 브라우저로 자기 앱을 열면, `autoRestoreSession` 이 `/v1/auth/re-issue`
|
|
32
|
+
로부터 콘솔 User JWT 를 복구해 앱 공개 API(`/v1/public/*`) 요청의 `Authorization` 헤더에
|
|
33
|
+
첨부했고, 서버가 이를 앱 멤버 토큰으로 검증하려다 실패해 **401** 이 발생했다. 일반 방문자에겐
|
|
34
|
+
재현되지 않고 개발자가 자기 앱을 테스트할 때만 터지는 형태였다 (platform-issue `019e459c`).
|
|
35
|
+
|
|
36
|
+
수정:
|
|
37
|
+
- `/v1/auth/re-issue` 가 콘솔/플랫폼 토큰(`role: User` / `AdminInvite`)을 돌려주면 세션으로
|
|
38
|
+
채택하지 않는다 — 실패가 아닌 "앱 세션 없음" 으로 silent 처리.
|
|
39
|
+
- 메모리의 access token 이 콘솔/플랫폼 토큰이면 `Authorization` 헤더에 첨부하지 않는다 —
|
|
40
|
+
`X-Public-Key` 공개 키 인증으로 폴백.
|
|
41
|
+
- 앱 세션 토큰(`AppMember` / `Guest`)과 디코드 불가한 토큰은 영향 없음 — 콘솔 토큰으로
|
|
42
|
+
확정될 때만 거부하므로 정상 세션을 잘못 폐기하지 않는다.
|
|
43
|
+
|
|
44
|
+
로그인 기능이 없는 앱은 `autoRestoreSession: false` 로 명시하면 이 세션 복구 자체를 건너뛸 수 있다.
|
|
45
|
+
|
|
6
46
|
## [3.17.1] - 2026-05-19
|
|
7
47
|
|
|
8
48
|
### Docs — README 에 Knowledge Base (RAG) 섹션 신설
|
package/README.md
CHANGED
|
@@ -819,6 +819,11 @@ await cb.knowledge.addDocumentFromFile('kb-id', {
|
|
|
819
819
|
const { documents } = await cb.knowledge.listDocuments('kb-id')
|
|
820
820
|
await cb.knowledge.deleteDocument('kb-id', 'doc-id')
|
|
821
821
|
|
|
822
|
+
// 문서 수정 — content/file_content/metadata 변경 시 전체 재색인, name 만 보내면 라벨만 변경
|
|
823
|
+
await cb.knowledge.updateDocument('kb-id', 'doc-id', {
|
|
824
|
+
content: '환불은 구매 후 14일 이내에 가능합니다...',
|
|
825
|
+
})
|
|
826
|
+
|
|
822
827
|
// 키워드 검색 (BM25)
|
|
823
828
|
const results = await cb.knowledge.search('kb-id', {
|
|
824
829
|
query: '환불 정책이 어떻게 되나요?',
|