Phase 9 Cross-platform Backup Verification
Phase 9 Cross-platform Backup Verification
Phase 9 verifies the backup engine before release on macOS and Windows.
Manual release checks:
cargo test --manifest-path vibelign-core/Cargo.toml
python -m pytest tests/test_cross_platform_paths.py tests/test_checkpoint_cmd_wrapper.py tests/test_mcp_checkpoint_handlers.py -q
npm run build --prefix vibelign-gui
Windows notes:
- Long paths may require the Windows
LongPathsEnabledregistry setting for very deep project trees. - Drive-letter and UNC-style inputs are treated as unsafe restore targets unless they are safely resolved under the project root.
- Locked-file behavior must be reported as a partial read/restore problem, not a silent success.
macOS notes:
- Unicode filenames are normalized for comparison while keeping the original source path for reading.
- Symlinks are not followed during snapshot collection.
- Executable-bit metadata is not surfaced as a user-facing restore promise in the v2 MVP.
Dashboard date grouping:
tests/fixtures/timezone_dst_dashboard_fixture.jsoncaptures backups around a DST jump.- Dashboard grouping should use the local calendar day from the timestamp offset, not UTC midnight.