버전 · 변경이력
ADMap 은 세 버전 축이 독립적으로 움직인다 — API 표면 · SDK 패키지 · 데이터 스냅샷. 문서는 SDK major 에 고정되고, 기능 업데이트는 changeset 이 버전 · 변경이력 · 마이그레이션 노트로 전파한다.
세 버전 축 — 독립
URL 경로 /api/v1/*. breaking 변경 시에만 v2 를 신설하고 v1 은 하위호환으로 유지 — 기존
컨슈머 무중단.
react · map-sdk · @admap/api 는 fixed lockstep — 항상 같은 버전으로 동시 bump. changeset
으로 semver 관리.
style.json 은 불변(immutable) 핀. 미지정 시 latest 체인을 따른다. 재현성이 필요한 컨슈머만
vN 을 고정한다.
앱 릴리즈 자체는 GET /api/health/version({ version, releasedAt })으로 확인한다 — 컨슈머
호환 체크용이며 SDK semver 와 별개 축이다.
문서 버전 핀
이 가이드는 SDK major(1.x) 에 고정된다. 1.0.0 이 첫 정식(GA), 1.2.0 이 현재
릴리즈다 — 상단 v1.2.0 ▾ 셀렉터는 1.x major 라인을 가리키고(minor 는 같은 문서 안에서
갱신), 이후 새 major 릴리즈 시 이전 문서가 읽기 전용 아카이브로 추가돼 오래된 링크가 깨지지
않는다.
- v1.2.0 — 현재 (
current) · 논리 레이어 opacity/filter/visibility family +feature-clicklogicalLayerId - v1.1.0 — buildStyleUrl origin 보존 + style
X-API-Key규약(ADM-150) - v1.0.0 — 첫 정식(GA) baseline
- 이전 내부 반복(구
5.x~7.x)은 GA 전 pre-release 라 1.0.0 에서 버전을 리셋했다.
코드 예제의 @1.2.0 핀은 현재 SDK 버전과 일치한다 — v1 문서의 모든 pnpm add …@1.2.0 은 그
문서가 설명하는 SDK 버전을 정확히 가리킨다. minor(1.x) 는 additive 라 같은 major 문서 안에서
갱신된다.
변경 이력 — changeset 기반
릴리즈마다 changeset(Added / Changed / Removed)이 CHANGELOG + 문서 재생성을 트리거한다. semver 영향은 additive = minor, breaking = major 다.
- ADDAdded — 논리 레이어 opacity multiplier.
AdMap#setLayerOpacity(id, opacity)/ ReactuseLayerOpacity— 파생(__casing/__cluster/__3d) 일괄, 테두리·텍스트 제외. - CHGChanged — logical layer family.
setLayerVisibility가 companion 까지 함께 토글하고,feature-click에logicalLayerId추가. - CHGChanged —
setFilter가 family 전체에 적용(authored baseline 보존 + AND 합성, non-stacking,null=복원).
- CHGChanged —
buildStyleUrl이 절대 baseUrl 의 origin 을 보존한 완전 URL 반환(상대 기본값은 path+search 유지, 하위호환). - CHGChanged — style 요청은
apiKey지정 시 URL host 매칭과 무관하게 항상X-API-Key부착(ADM-150).
- ADDAdded — SDK 클라이언트 축 로깅.
X-Admap-Client(react / map-sdk) 자동 주입으로 사용량 리포팅을 SDK ↔ 직접 API 로 분리(X-API-Key인증 무변경). - ADDAdded — 컨슈머 셀프서브 레이어 write.
useConsumerLayers/ApiClientCRUD(api-key 소유 격리). - ADDAdded — 발행 카탈로그 read + 지도 임베드(
AdMap/<ADMap>) + read 훅. - CHGBaseline — taxonomy
segments트리 · categorypolygon_poi/point_poi· 3D 는 style layermetadata['admap:extrude']플래그로 표현.
1.0.0 은 버전 리셋 후 첫 정식 릴리즈다. GA 이전 내부 반복(구 5.x~7.x)에서 통합검색 · 공간분석 · routing · Impact/three.js 오버레이 표면이 정리됐고, 그 결과가 1.0.0 baseline 이다(제거 표면 상세는 SDK 연동 참조). 이후 릴리즈는 changeset(Added / Changed / Removed, additive = minor · breaking = major)으로 관리한다.
기능 업데이트 → 버전 전파 흐름
기능 PR 하나가 어떻게 버전 · 문서 · 마이그 노트로 퍼지는지의 순서다.
changeset
기능 PR 에 Added / Changed / Removed + semver 영향을 기록한다.
.changeset/*.mdlockstep bump
react · map-sdk · @admap/api 를 같은 버전으로 동시 bump 한다.
fixed versioningrelease
main push 시 release 워크플로가 발행 + 태그한다.
release.ymldocs + 마이그
CHANGELOG 갱신 · 가이드 재생성, major 면 마이그레이션 노트를 동반한다.
/guide · CHANGELOGmajor(breaking) 릴리즈만 마이그레이션 노트를 동반한다 — 제거 · 시그니처 변경 표면을
"걷어낼 참조" 목록으로 명시한다(SDK 연동의 1.0.0 마이그레이션 절이 그 예).