Skip to content

feat(backup): add verified vault backups and restore preflight#42

Merged
kcng0 merged 1 commit into
mainfrom
feat/verified-vault-backups
Jul 22, 2026
Merged

feat(backup): add verified vault backups and restore preflight#42
kcng0 merged 1 commit into
mainfrom
feat/verified-vault-backups

Conversation

@kcng0

@kcng0 kcng0 commented Jul 22, 2026

Copy link
Copy Markdown
Owner

Summary

  • export manifest v5 backups from one stable Drift snapshot with streamed byte-length and SHA-256 verification
  • preflight every manifest, path, organization reference, and payload before restore mutates the vault or database
  • add cancellable progress, retryable typed errors, and localized Settings UI for export and restore
  • preserve v1-v4 restore compatibility with an explicit non-checksum-verified result

Reliability boundaries

  • verified means the manifest and payload bytes matched at one point in time
  • it does not mean encryption, authenticated tamper resistance, or continuous backup health
  • the CodeStable issue remains open for physical-device, low-storage, permission-revocation, and real payload-corruption checks

Verification

  • flutter gen-l10n
  • flutter pub run build_runner build
  • dart format --output=none --set-exit-if-changed lib test (206 files)
  • flutter analyze (0 issues)
  • git diff --check
  • flutter test --reporter failures-only (251 tests)
  • flutter build apk --debug

No Android or iOS physical-device validation has been run yet.

Copilot AI review requested due to automatic review settings July 22, 2026 10:26

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@kcng0
kcng0 merged commit 6d3ed30 into main Jul 22, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants