Changelog

New features, improvements, and fixes in Pack and the Pack SDKs. For upgrade steps, see the implementation guides.

October 2026

@pack/hydrogen 4.0 serves every A/B test a visitor qualifies for, adds personalizations, and honors visitor consent. Pack MCP moves to typed tools.

Improvements

  • Breaking: @pack/hydrogen 4.0.0: a visitor is assigned to every A/B test they're eligible for instead of one chosen at random, and tests apply per query, so a site settings test and a page test can serve on the same page. Two tests that change the same content never serve together, and traffic percentages now apply to visitors instead of page views. If your theme calls useAbTest() or useAbTestVariantHandle() without an argument, pass the test's handle. Upgrade between tests, not during one. See Upgrading to @pack/hydrogen 4.0.
  • Personalizations (@pack/hydrogen 4.0.0): show one variant to everyone in an audience, limited to the pages you choose. See Personalization.
  • Visitor consent (@pack/hydrogen 4.0.0, @pack/react 4.6.0): Pack honors the answer to Shopify's privacy banner, or one you pass with setPackConsent(). Without analytics consent, the Pack visitor ID isn't stored. See Consent Management.
  • A/B test results: a result shows "Not enough data" until the test has run for 14 days and both the variant and control have 100 converting visitors, and "Inconclusive" when the difference isn't significant.
  • Pack MCP: named, typed tools replace pack_operation_*, get, list, publish, and unpublish move to pack_content_* tools that take a contentType, and media access is restored. Every tool accepts a per-call context for an environment, locale, or test. Update any prompts that name removed tools. See Pack MCP.
  • sectionPatch and siteSettingsPatch can patch a section's styles, data source, and title, and the site SEO and favicon. Sections with a metaobject data source can now be patched.
  • Change review in the Customizer: selecting an A/B test variant or a content release lists what it changes, field by field.
  • Activity log: Settings → Activity log shows recorded content, release, A/B test, and schedule changes across all environments.

September 2026

Content Releases get rename, search, and sort in Admin, the Content Management API adds a change feed, and the storefront preview bar is replaced with a movable toolbar.

Improvements

  • Preview toolbar (@pack/react 4.5.0): the preview toast is replaced by a draggable pill that docks to any edge of the viewport and opens a read-only panel showing the active preview link, content release, environment, locale, A/B test, and drafts. Exiting preview now asks for confirmation. If you target the old [data-pack-preview-toast] attributes in CSS or tests, switch to [data-pack-preview-toolbar], [data-pack-preview-toolbar-pill], [data-pack-preview-toolbar-panel], and [data-pack-preview-toolbar-hide]. See Previewing.
  • usePlaybookCart (@pack/react 4.4.0): an opt-in hook that lets Playbook's "Add to cart" button write to the storefront's own Hydrogen cart. See @pack/react.
  • events query: poll a journal of content, release, schedule, and experiment changes from the Content Management API. Events are retained for 30 days.
  • Content Releases: rename, search, filter, and sort releases in Admin.
  • Revision history by plan: revision history retention now follows your plan, with an upgrade prompt when older revisions are outside your window. See Pricing.
  • Fixed the geo_region audience signal on Oxygen (@pack/hydrogen 3.3.1).
  • Customizer content no longer disappears from the preview when a route action revalidates the loader for the same page (@pack/react 4.3.4).

August 2026

Improvements

  • SSR audience targeting (@pack/hydrogen 3.3.0): tests with an audience are only served to visitors who match it, evaluated server-side from request headers, cookies, and the Shopify customer session. Adds the __pack_s session cookie. See Test Implementation.
  • Content Releases: remove an item from a release, rebase a conflicting draft, and open a release in the Customizer from Admin. Pack MCP gains pack_release_* tools.
  • siteSettingsPatch: partial updates to storefront settings, alongside sectionPatch.
  • SEO toggles on product and collection pages now reflect Shopify's seo.hidden metafield. See SEO.
  • The storefront preview bar stays within mobile viewports and shows the preview link or release name (@pack/react 4.3.3).

July 2026

Improvements

  • Pack MCP: connect Claude and other MCP clients to Pack, now with OAuth sign-in. A/B testing tools were added mid-month. See Pack MCP.
  • Scheduling Content Releases: schedule a whole release to publish at a set time, with conflict handling. See Scheduling.
  • Release preview links (experimental feature): shareable preview links can target a content release.
  • sectionPatch: apply JSON-Patch style partial updates to a section with optimistic concurrency via expectedRevisionId.
  • The selected content release now persists while navigating the storefront in the Customizer (@pack/hydrogen 3.2.8, @pack/client 1.0.4 adds the releaseId option).

June 2026

Improvements

  • Content Releases replace page drafts and storefront settings drafts. Group changes across pages, sections, templates, and settings and publish them together. See Content Releases.
  • Breaking: the *CreateDraft, *UpdateDraft, *DeleteDraft, and *PromoteDraft mutations and the siteSettings(draftId) argument were removed from the Content Management API. Use the content release operations instead.
  • The previewed A/B test is exposed through pack.abTest, so code-driven variants render correctly in the Customizer and preview links (@pack/hydrogen 3.2.5).
  • Stable A/B assignments (@pack/hydrogen 3.2.6): a returning visitor keeps their variant after the session expires, as long as the test and variant are still running. Earlier versions could re-bucket visitors and skew results, so upgrading is recommended.
  • @pack/types 0.2.1 warns when a blocks field lists the same key in both sectionTypes and templates.
  • Removed the Pack error tracking integration from @pack/hydrogen (3.2.7) and @pack/react (4.3.2).

May 2026

Improvements

  • Nested sections: blocks fields can accept registered sections through sectionTypes (@pack/types 0.2.0), rendered with the new RenderSection component (@pack/react 4.3.0). See Section Schema API.
  • Preview and A/B tests (@pack/hydrogen 3.2.4): preview mode and forced test URLs no longer store a natural test assignment.
  • Route prefetch requests no longer assign A/B tests (@pack/hydrogen 3.2.3).
  • useSections returns the flat <style> and <section> children again (@pack/react 4.3.1).

April 2026

Improvements

  • Layouts removed: the Layouts feature has been retired. Use sections and templates instead.
  • Shops: new Pack Shops can no longer be created. Existing storefronts are unaffected.
  • Media Manager shows video previews and handles large video uploads more reliably.

March 2026

Improvements

  • Full product sync: run a full or delta product and collection sync from Admin. See Products.
  • Goal library: reuse goals across A/B tests and reorder them. See A/B Testing.
  • Media Manager surfaces upload failures per file.
  • Control impressions are tracked for tests using the element-view trigger (@pack/hydrogen 3.2.1).
  • Fixed stale preview context leaking between local storefront sessions (@pack/hydrogen 3.2.2) and stale homepage sections showing on pages without CMS content (@pack/react 4.2.1).

February 2026

Pack's SDKs move to React Router 7 and Hydrogen 2026.1.

Improvements

  • React Router 7 (@pack/hydrogen 3.0.0, @pack/react 4.0.0): Pack now requires react-router ^7.12.0 and Node 20 or later, and drops the @shopify/remix-oxygen and @remix-run/server-runtime peer dependencies. See the React Router 7 migration guide.
  • Hydrogen 2026.1 (@pack/hydrogen 3.1.0): the @shopify/hydrogen peer dependency is now ^2026.1.0.
  • Impression triggers: count an A/B test impression on page load or only when the tested content scrolls into view. See Test Implementation.
  • window.packDebug (@pack/react 4.2.0): inspect the current test assignment and rules cache from the browser console.
  • Reset to control: reset a variant's section or storefront settings back to the control.
  • Media Manager folders: organize media into subfolders and move files between them. See Media Manager.
  • Schema validation is now non-blocking: unknown keys and invalid fields log a warning instead of preventing a section from registering (@pack/types 0.1.4, @pack/react 3.1.2).

Was this page helpful?