Skip to content

Restore .hakobackup and .hakoworld from Finder - #19

Merged
Liis17 merged 4 commits into
mainfrom
feat/backup-file-recovery
Oct 24, 2026
Merged

Liis17 merged 4 commits into
mainfrom
feat/backup-file-recovery

Conversation

@Liis17

@Liis17 Liis17 commented Oct 24, 2026

Copy link
Copy Markdown
Owner

Summary

  • macOS: double-click .hakobackup/.hakoworld opens Hako, validates archives, and shows a restore sheet.
  • Sequential queue suppresses duplicate imports; works cold launch, closed window, and guest mode.
  • Instance restore: replace exact match by UUID, or restore as new instance; pre-change confirmation; rollback on error.
  • World restore: pick target instance, warn on differing Minecraft/loader/Fabric, replace or copy; NBT rename and cache invalidation.
  • Binary types registered in Hako-Info.plist; one-shot UI and background cleanup on cancel.
  • Windows unchanged.

Testing

  • HakoTests pass on isolated data: instance restore, replace, collisions, profile preservation and playtime.
  • World restore, NBT rename, datapacks, wrong-instance warnings.
  • Corrupted ZIP, unsupported schema, missing required files, traversal paths.
  • Cancellation, locked instance, insufficient disk space, SwiftData save rollback.
  • New and legacy manifests, UUID after rename, ambiguous matches.
  • Debug build without signing successful.
  • UI opened via Finder from native window not run — app.control macOS unavailable.
  • Windows CI not run.

@Liis17
Liis17 merged commit 0eabdfc into main Oct 24, 2026
3 checks 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.

1 participant