# v2.0.0-alpha.0 — Artifact schema migration checks This alpha opens the v2.0 stability line. relay-baton stays local-first, subprocess-only, and deterministic; v2.0 work hardens the contracts and the desktop workflow. First item: read-only upgrade/migration detection for `.ai-session` artifacts. ## Added - **Artifact schema registry** — `ARTIFACT_SCHEMA_VERSIONS` is the single source of truth for the current on-disk schema version of each versioned artifact (`session.json`, `checkpoints.jsonl`). - **Migration checks** — `relay-baton migrate [--check] [--json]` reports each versioned artifact's schema status: `ok`, `outdated` (older than current), `ahead` (written by a newer CLI), `legacy` (no `schemaVersion` field — treated as v1), or `unreadable`, with guidance. - **`doctor --deep` integration** — extended diagnostics now include a `schema:` line per artifact plus a migration hint when anything is migratable. ## Constraints - Read-only this release: detection and guidance only. In-place migration apply is intentionally deferred to the first real schema-version bump, when a migrator plugs into the registry — so no artifact is ever rewritten yet. - Deterministic, no model calls. ## Next in v2.0 - Stable artifact schema v2 (bump + migrators). - Stable desktop contract with i18n parity. - Installer/update story finalized, public docs pass, hard constraints reaffirmed.