Publishing packages

September 19, 2026 ยท View on GitHub

The repository root and examples workspace are private. Only the four packages under packages/ are published: semantic-assert, semantic-assert-typesafe, semantic-assert-ai-sdk, and semantic-assert-playwright. Version 0.1.0 of each was published on 2026-09-19; releases since are tracked independently with Changesets. The source is licensed under the Apache License, Version 2.0.

Before any release, run pnpm install --frozen-lockfile, pnpm check, pnpm check:packages, and the browser smoke test described in the README.

Subsequent releases

  1. Run pnpm changeset and select only the packages affected by your change.
  2. Commit the resulting changeset with the implementation.
  3. Run pnpm version:packages to apply versions and generate changelogs. Review dependency range updates, then run pnpm install and commit the release changes.
  4. Run pnpm release from a clean checkout after review. It verifies the repository and packed consumers before Changesets publishes unpublished package versions.

Use pnpm for manual packing or publishing. It rewrites workspace:^ dependencies to ordinary semver ranges in the tarball. The TypeSafe, AI SDK, and Playwright packages depend on the separately published core; each tarball contains only its own build, README, changelog, manifest, and license. prepack rebuilds the selected package. Build the workspace first if packing an adapter directly from a clean checkout.

To inspect one package without publishing:

pnpm build
pnpm --filter semantic-assert-playwright pack --pack-destination ../../artifacts