Upgrading

Dawn is pre-1.0. The API surface is still moving, and the safest posture is to pin a version, read what changed, and upgrade deliberately rather than floating on a range. This page is the workflow, not a changelog — the actual list of what changed between any two versions lives on GitHub, not here.

Fixed-group versioning

Every @dawn-ai/* package — cli, core, sdk, ag-ui, sandbox, memory, memory-pgvector, permissions, workspace, sqlite-storage, langchain, langgraph, testing, evals, devkit, vite-plugin, create-dawn-app, and the rest — is released together under one version number via Changesets' fixed-group mode. If @dawn-ai/cli is at 0.8.12, so is every other @dawn-ai/* package in that release. There's no independent versioning between packages to reason about, and no compatibility matrix to check — install matching versions and you're done.

The two Helm charts (dawn-sandbox-infra, dawn-app) track the same package train through their appVersion field, but they're published separately as OCI artifacts, not npm packages — see Deploying on Kubernetes for how to pull a specific chart version.

How to read what changed

Each release is built from the changeset entries merged since the previous one — short, per-change Markdown files that describe what changed and why, written by whoever made the change. Two places to read them:

  • GitHub Releasesgithub.com/cacheplane/dawnai/releases lists every published version with its changeset entries rolled up into release notes. This is the fastest way to scan what changed between two versions.
  • Per-package CHANGELOG.md — each package under packages/*/CHANGELOG.md in the repository carries its own changelog, generated from the same changeset entries but scoped to that package.

Upgrade workflow

  1. 1

    Check the current version

    text
    pnpm why @dawn-ai/cli

    or check the @dawn-ai/* entries in your package.json.

  2. 2

    Read the release notes

    Open GitHub Releases and read every entry between your current version and the target version.

  3. 3

    Bump and reinstall

    Bump every @dawn-ai/* dependency in package.json to the same target version, then reinstall.

  4. 4

    Regenerate and verify

    text
    dawn typegen
    dawn verify
    dawn test

    dawn verify catches app-contract, route-discovery, typegen, and missing-dependency drift in one call; dawn test re-runs your scenario coverage against the new version. See CLI and Testing.

Pinning

Pin exact versions (no ^ or ~ ranges) for @dawn-ai/* packages until the project reaches 1.0 — a floating range means an unreviewed minor bump can land in CI or production without the deliberate read-the-notes step above.

Related