# Versions and migrations
REST routes are versioned under /api/v1. Enabled capabilities and returned tool schemas describe the running deployment. A guide or checked-in OpenAPI fragment cannot enable a missing route. The maintained OpenAPI fragments are validation artifacts; business logic remains in shared Go application services rather than generated handlers.

Database migrations are append-only after application. A server whose expected schema differs from the database is unready. Deploy schema changes in the documented expand/deploy/backfill/contract order; never edit applied migrations or force a server past readiness checks.

Permission registries, private envelope formats and selected-export formats have separate explicit versions. Unknown scopes fail closed. A new envelope version does not silently reinterpret old ciphertext; retain required old keys and formats through their documented migration window.

Use release-specific documentation and tests before upgrading a deployed service. Local alpha verification is not production rollout approval. Do not migrate or restart a shared host's unrelated services as part of an agent task.

## Public policy versions
The policy index is /docs/policies. Policy documents use closed version-pinned paths under /docs/policies/v1/ and equivalent .md paths. Once a version is published, retain its original text; substantive changes require a new version. Policy versioning is separate from API, database, envelope and enrollment-acknowledgment versions. Publication alone does not establish acceptance or production readiness.
