SDK versioning and upgrades

  • All `@guidelytech/*` packages share one version (`0.x` while pre-1.0). Within `0.x`, minor releases may

    include breaking changes; patch releases never do. From 1.0, semantic versioning applies.

  • The public SDK API is versioned in the URL (`/api/v1/sdk/*`). The dashboard will keep serving `v1`

    for at least 12 months after a v2 is introduced. The config payload contains configVersion (per environment) and every guide carries its version; the SDK sends sdk.name/sdk.version with every event batch so you can see which versions are in the field (Events → properties).

  • Cached configuration: SDK clients send `If-None-Match` and keep the last good config in

    localStorage. After a publish, clients refresh within configRefreshMs (default 5 min) or on the next page load; old published versions remain readable so a client that cached version N still runs it until it refreshes.

  • Script-tag users load `/sdk/guidely.js`; pin a specific build by serving it from your CDN with a

    versioned path. The embed exposes Guidely.version.

  • Upgrade procedure: bump all `@guidelytech/*` packages together, read the changelog, run your e2e suite

    against the demo apps (pnpm test:e2e) and roll out behind your normal deploy.