# v2.0.0-alpha.1 — Schema migrator (apply path) Builds on the v2.0 schema detection (`v2.0.0-alpha.0`) with a safe, opt-in migration apply path. Deterministic, confirmation-first, no model calls. ## Added - **Schema migrator** — `relay-baton migrate --apply [--dry-run]` applies safe migrations to `.ai-session` artifacts. Today's migration is **legacy normalization**: artifacts that predate the `schemaVersion` field get the current version stamped on them. - **Safety model** — apply is opt-in (`--apply`); the default and `--check` stay read-only. Each change writes a timestamped `.bak.` backup first, `--apply --dry-run` previews the plan, and the operation is idempotent. - **Forward-compatible** — version-to-version upgrades are reported but skipped until a migrator is registered, which happens with the first real schema version bump. ## Constraints - Deterministic, no model calls. - No silent mutation: apply is explicit and always backs up first. ## Next in v2.0 - Per-artifact schema v2 bumps as breaking changes require them. - Stable desktop contract with i18n parity. - Installer/update story finalized, public docs pass, hard constraints reaffirmed.