# SCHEMA_DRIFT

**What it means.** Rolling back code only: the database schema changed after the target version.

**What to do.** If the older code fails against the current schema, run rollback again with with_data: true after the owner confirms losing writes since that version's snapshot.

- HTTP status: 422
- Retryable after applying the fix: yes

Every failure from the CLI or an MCP tool has this shape:

```json
{
  "ok": false,
  "code": "SCHEMA_DRIFT",
  "message": "Rolling back code only: the database schema changed after the target version.",
  "fix": "If the older code fails against the current schema, run rollback again with with_data: true after the owner confirms losing writes since that version's snapshot.",
  "file": "<where to edit, when known>",
  "retryable": true,
  "docs": "https://docs.uarpie.app/errors/SCHEMA_DRIFT"
}
```

Apply `fix` (edit `file` when it is given), then run the same command again.
