fix: Migration handles deeply nested Windows project files
Merged
HA
4mo ago+361+361+012345678901234567890123456789-31-31-01234567890123456789
Summary
- Migration preview and apply now handle deeply nested Windows project files that exceed legacy path limits.
- Cached migration plans now invalidate correctly after long-path files change.
User Impact
- On Windows, running the migration tool could stop with a misleading "Could not find a part of the path" error in projects with very long file paths.
- The migration flow now reads, writes, and validates those files through extended-length file access so the operation can complete reliably.
Changes
- Route third-party migration reads, writes, and atomic sidecar operations through Windows extended-length path handling.
- Apply the same access path to migration plan fingerprint metadata and content hashes.
- Add Windows-only regression coverage for long-path preview, apply, directory discovery, and stale-cache invalidation.
Verification
- .\cli\dist\windows-amd64\uloop.exe compile
- .\cli\dist\windows-amd64\uloop.exe run-tests --test-mode EditMode --filter-type regex --filter-value ".(WindowsDirectoryPathExceedsLegacyLimit|MigrationProjectFingerprint_WhenWindowsPathExceedsLegacyLimit)."
- .\cli\dist\windows-amd64\uloop.exe run-tests --test-mode EditMode --filter-type regex --filter-value ".ThirdPartyToolMigration."
- python C:\Users\booql.codex\skills\autoreview\scripts\autoreview --mode branch --base origin/v3-beta
- git diff --check