Skip to content

Changelog

No releases yet.

This page is regenerated by scripts/generate-changelog.ts from release entries pushed by the SDK repository’s release workflow. When v0.1.0 ships, the entries below will be populated automatically — there’s no manual editing of this file in normal operation.

Pending the next minor bump (will be regenerated into a numbered release section by the workflow):

  • Package consolidation. @trackbridge/core, @trackbridge/browser, and @trackbridge/server are consolidated into a single @trackbridge/sdk with subpath exports (/browser, /server, /core, /next, /next/server). Public API and runtime behavior are unchanged — only import paths change. Migration: pnpm add @trackbridge/sdk and update imports to @trackbridge/sdk/browser, @trackbridge/sdk/server, etc. See ADR-012 for the reasoning behind reversing ADR-001 / ADR-002.
  • Semantic helpers. Five typed methods on browser and server trackers — trackPurchase, trackBeginCheckout, trackAddToCart, trackSignUp, trackRefund. They fan out to Ads conversions (when a label is configured via the new conversionLabels config) and GA4 events in a single call, sharing one transactionId for dedup. New TrackbridgeItem type lifts the GA4 items[] array out of untyped params. Server returns a structured ServerHelperResult with per-destination success/error/skipped status. Refund Ads adjustments (uploadConversionAdjustments) are intentionally out of scope; trackRefund is GA4-only in this release. See Semantic helpers.
  • Context envelope. tracker.exportContext() (browser) produces a serializable TrackbridgeContext envelope; serverTracker.fromContext(envelope) (server) hydrates it into a tracker pre-bound to the captured clientId, click identifiers, consent, and userData. Enables delayed conversions where the server-side fire happens hours after the user’s session ended. See The context envelope.
  • Next.js framework adapter. New @trackbridge/sdk/next (TrackbridgeProvider, TrackbridgePageViews, useTracker) and @trackbridge/sdk/next/server (defineServerTracker, readEnvelopeFromRequest) subpaths. Removes the boilerplate every Next.js integration writes: 'use client' provider, gtag-loading order, page-view subscription, module-level singleton wrapper. See the Next.js App Router setup guide.
  • Browser API surface backfill. New methods now documented and supported: getClientId, getSessionId, getConsent, identifyUser / clearUser, trackPageView, setDebug. New browser config options: debugUrlParam, generateTransactionId, now.