본문으로 건너뛰기

변경 로그

embed SDK와 platform API의 주요 변경 사항입니다. wire contract는 /embed/v1/*/inference-api/b2b/v1/*에서 버전 관리되며, breaking change는 기존 major 옆에 새 major로 배포됩니다(CDN 버전 관리).

2026-09

  • Capability-policy SSOT. Product → scope 및 tier → API-capabilities가 이제 @kaleidr/shared-types 한 곳에만 존재합니다 (B2B_PRODUCT_REQUIRED_SCOPE, B2B_TIER_API_CAPABILITIES). parity test가 포함되며 shared-api(mint / rotate / PATCH clamp), inference-api(session exchange, runtime credentials), docs에서 사용합니다.
  • 유효 capability = 저장된 key × 현재 tier. Session exchange와 모든 runtime credential path는 org의 현재 tier를 기준으로 admission을 다시 계산합니다 — Pro-tier key가 Free로 downgrade되면 그 시점부터 tile session만 생성됩니다. 별도 subcode: tier_capability_not_allowed(기존에는 있었지만 tier가 더 이상 허용하지 않음) vs insufficient_scope(처음부터 없었음).
  • Billing plan 변경은 apikey:* cache를 invalidate합니다. Subscription webhook이 key별 snapshot을 제거해 downgrade/upgrade가 즉시 runtime에 반영됩니다. session이 매 request마다 key의 live policy를 다시 읽기 때문에 downgrade는 이제 이미 발급된 session에도 적용됩니다 — 더 이상 session TTL에 제한되지 않습니다. upgrade는 여전히 새 session이 필요합니다. session은 parent보다 권한을 넓힐 수 없기 때문입니다.
  • Free-tier PATCH 확대 거부. Free-tier key의 scopes / allowed_products를 tier admission보다 넓히는 수정은 403 tier_capability_not_allowed를 반환합니다. 여기에는 empty-products = all인 경우도 포함됩니다.
  • SSE grounding event 제거. Grounding은 여전히 답변 형성에 영향을 주지만, 더 이상 wire에 frame을 보내지 않습니다. 이를 listen하던 client는 단순히 받지 않게 됩니다.

2026-08

  • Basemap access는 key-authorized입니다. tile.kaleidr.com을 제3자가 직접 사용하는 것은 제한됩니다. <kaleidr-map> embed와 Kaleidr-hosted map은 영향을 받지 않습니다. basemap session은 org의 공유 월간 map-loads allowance를 차감합니다 (quota).
  • Session exchange + refresh. Publishable key는 단기 origin-bound session(kld_sess_{env}_…, 15-min TTL)으로 교환되며 session refresh는 SDK가 처리합니다.
  • Place bridge / iframe seam. iframe product와 parent page 사이의 cross-frame Place event용 postMessage seam을 표준화했습니다.
  • Org basemap default. embed가 지정하지 않으면 /sdk/sessions는 org에 저장된 default basemap_style_id를 반환합니다. SDK는 kaleidr-morning으로 fallback하기 전에 이를 적용합니다.
  • Browser에서 server key 거부. SDK는 mount 시 kld_sk_…를 거부합니다 (server key는 server-side 전용).
  • Dev / prod CDN + API bake. 두 environment 모두 version-stable endpoint에서 제공됩니다. viewerBase가 loader base에서 분리되었고, editor tile CDN용 tileBase도 분리되었습니다.
  • Seam v2 route 색상. Route event는 stable contract에서 color / label / alternatives / comparison을 포함합니다.

v1

  • kaleidr.js loader + <kaleidr-map> element — 하나의 façade, 네 개의 product(chat / viewer / editor / tile), 두 개의 doorway.
  • Publishable browser key(kld_pk_)와 server key(kld_sk_), scopes ai | maps | design | vendor; publishable key는 단기 origin-bound session으로 교환됩니다. Legacy kld_live_ key도 계속 작동합니다.
  • /inference-api/b2b/v1/chat/* (SSE) + /design/* route family.

릴리스가 배포될 때마다 이 페이지가 업데이트됩니다.