Document the archive and manifest format used by Reset Rescue to backup and restore user data and app data ahead of OS resets or migrations.
-
File extension:
.rrarchive -
Container: zip package with LZNT1-compressed payload segments
-
Contents:
manifest.json(required)payload/(files, app data, registry exports)meta/(logs, reports)
-
Integrity: SHA-256 chunked hashes; default chunk size 4 MB stored in the manifest for resume and verification.
-
Modes:
Backup(default) orRestore. -
Parameters:
SourcePaths: Paths to stage (files or directories; supports VSS when-CreateSnapshot).TargetPath: Staging/output directory (default%TEMP%/reset-rescue-staging).RegistryKeys: Optional registry keys to export tometa/registry_*.reg.CreateSnapshot: Best-effort VSS snapshot for locked files (logs warnings if unavailable).RestoreRoot: Required when-Mode Restore; copies staged payload back honoring-Conflict.Conflict:Overwrite|Rename|Skip|BackupExisting(defaultRename).LogPath: Log file (default%TEMP%/reset-rescue.log).
-
Output: emits compact JSON
{ status, copied, skipped, registryExports, snapshotId, logPath, errors }to stdout for the invoker; always appends human-readable lines to the log file. -
Copy semantics:
- Direct copy via
Copy-Item; falls back torobocopy /COPY:DAT /R:2 /W:2 /MTfor locked files. - Snapshot-aware path resolution when VSS succeeds (uses
GLOBALROOTdevice path). - Registry export uses
reg.exe exportwith per-key files.
- Direct copy via
-
Top-level fields:
manifestVersion:1createdUtc: ISO 8601 UTC timestampgenerator: app version + commit hasharchiveFormat:rrarchive|zippolicies: conflict strategy (overwrite|rename|skip|backup), long-path aware flag, oneDrive handling (download|metadata), vssRequired flaghash:algo(SHA256),chunkSizeBytesprofiles: detected user profiles withsid,name,root,knownFoldersapps: inventory items withid,name,type(Win32|MSI|Store|Portable),version,installLocation,dataPaths,registryKeysentries: array of file/data items
Entry fields:
id: stable identifier used for resumetype:file|directory|registrysourcePath: original absolute pathtargetPath: relative path inside archive payloadsizeBytes,lastWriteTimeUtchash:chunks(array of SHA-256 per chunk),full(optional full SHA-256)acl:owner,sddl,preserve(bool)attributes: DOS/NTFS flags (e.g.,Hidden,System,Archive)vss: snapshot ID when captured from VSSappId: optional link toappsentry when file belongs to an app
- VSS: attempt snapshot for locked files; fall back to direct copy with warning.
- Path safety: prefer long-path-aware APIs; record original paths for reconciliation.
- Space check: require 120% of projected size on destination.
- ACLs: preserve when possible; downgrade gracefully when target does not support ACL.
- OneDrive: option to hydrate files or capture metadata-only; flag choice in
policies.
- Path reconciliation: map archived
sourcePathto current profile roots and drive letters. - Conflicts: obey
policies.conflict; defaultrenamewith suffix-backupto avoid overwrite. - Validation: recompute chunk hashes and compare to manifest; log mismatches.
- Partial restore: filter by
profiles,apps, or specificentries.
- Include
meta/report.htmlsummarizing successes, skips, and errors. - Log VSS usage, conflicts resolved, and any downgraded ACLs.
data/backup/schemas/: manifest schema notes and future versions.data/backup/samples/: sample manifests and example.rrarchiveartifacts for testing.- See
data/backup/README.mdfor layout guidance.