Automate migration backups and add session rollback on failure
- Replace operator-driven backup requirement with automatic migration engine responsibility - Full DB backup when new migrations are detected, before any step runs - Per-table backup before each migration step affecting that table - Session rollback (or per-table restore) on any migration failure - Update local-first-recovery to reflect automatic backup requirement Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Contract: Local-First Recovery
|
||||
|
||||
Version: 1.1
|
||||
Version: 1.2
|
||||
|
||||
## Purpose
|
||||
|
||||
@@ -53,7 +53,7 @@ For protected user data, destructive reset is forbidden.
|
||||
|
||||
Rules:
|
||||
- Do not drop, truncate, or recreate protected tables as a recovery shortcut.
|
||||
- Backup-before-change is mandatory and must follow the `backup-management` contract.
|
||||
- Backup-before-change is mandatory, must be performed automatically by the migration engine (never by the operator), and must follow the `backup-management` and `go-database` contracts.
|
||||
- Validate-before-migrate is mandatory.
|
||||
- Migration logic must use fail-safe semantics: stop before applying a risky destructive step when invariants are broken or input is invalid.
|
||||
- The application must emit explicit diagnostics that identify the blocked table, migration step, and reason.
|
||||
|
||||
Reference in New Issue
Block a user