You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit bcc07d1
Browse filesBrowse the repository at this point in the historyBrowse files
Allow users to clear OpenBitFun destination data before retrying migration.
Require directory review and explicit confirmation, protect source and
migrator directories, check active writers, and report partial failures.
Reload migration state after reset and document the recovery workflow.
Copy file name to clipboardExpand all lines: src/apps/data-migrator/README.md
+17-3Lines changed: 17 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -98,9 +98,17 @@ If you have already launched OpenBitFun or run a migration, existing destination
98
98
99
99
If OpenBitFun contains no new data you need to keep, you can clear its destination data and retry:
100
100
101
-
1. Fully quit BitFun, OpenBitFun, and the migrator.
102
-
2. Back up the following directories, then delete them. **This removes existing OpenBitFun settings, sessions, and other local data.**
103
-
3. Run the migrator again, then launch OpenBitFun after migration finishes.
101
+
1. Fully quit BitFun, OpenBitFun, their CLI/background writers, and other migrator instances.
102
+
2. Open Data Migrator and check the destination locations. Under **Reset OpenBitFun data**, select **Review reset directories**.
103
+
3. Save any data and migration logs/backups you need from the listed directories. **Reset permanently removes all their contents, including existing OpenBitFun settings, credentials, assistant workspaces, and sessions.** It does not create a backup.
104
+
4. Type `RESET`, then select **Permanently reset OpenBitFun data**. If a directory cannot be fully removed, close applications using it and retry before migrating.
105
+
5. Scan again and start a new migration. Launch OpenBitFun after migration finishes.
106
+
107
+
The reset preview uses the selected destination locations. For standard locations,
108
+
it also covers platform Skills/SSH parent directories and Desktop WebView/UI data
109
+
under `com.openbitfun.desktop`. It preserves the original BitFun source, the
110
+
migrator's preferences, and ordinary project directories outside the listed roots.
111
+
Unsafe overlaps and linked reset paths are rejected.
104
112
105
113
Windows destination directories:
106
114
@@ -110,6 +118,12 @@ Windows destination directories:
110
118
%LOCALAPPDATA%\OpenBitFun
111
119
```
112
120
121
+
On macOS the standard roots are `~/.openbitfun` and
122
+
`~/Library/Application Support/{openbitfun,OpenBitFun}`. On Linux they are
123
+
`~/.openbitfun`, `~/.config/openbitfun`, and
124
+
`~/.local/share/{openbitfun,OpenBitFun}` (or the corresponding XDG locations).
125
+
Always review the actual paths shown by the tool before confirming.
126
+
113
127
**The issue persists after retrying**
114
128
115
129
Open a report in [GitHub Issues](https://github.com/GCWing/OpenBitFun/issues) or share your feedback in the OpenBitFun user WeChat group. Include:
let protected = reset_protected_directories(&session.settings_path)?;
348
+
let directories = openbitfun_legacy_migration::plan_target_reset(&session.roots,&protected)
349
+
.map_err(|_| CommandError::new("unsafe_reset_locations","Reset refused: a destination overlaps source data, a protected directory, or a linked path. Check the selected locations.",false))?;
returnErr(CommandError::new("reset_writers_running","Close BitFun, OpenBitFun, their CLI/background writers, and other Data Migrator instances, then retry reset.",true));
.map_err(|_| CommandError::new("reset_scope_changed","Reset stopped because the directories failed revalidation. Review the paths again; some data may already have been removed.",true))
420
+
})();
421
+
self.finish_reset(roots, result, blockers);
422
+
}
423
+
424
+
fnfinish_reset(
425
+
&self,
426
+
roots:MigrationRoots,
427
+
result:Result<TargetResetResult,CommandError>,
428
+
blockers:Vec<WriterProcess>,
429
+
){
430
+
letmut session = self.lock();
431
+
// Reload even after failure: a partial deletion invalidates old plans.
432
+
let replacement = Self::bootstrap_with(roots, session.settings_path.clone());
session.error = Some(CommandError::new("reset_incomplete","Some OpenBitFun directories could not be fully removed. Close applications using them, then review and retry reset before migrating.",true));
0 commit comments