Part of #611. Difficulty: medium. Audit baseline: master 3950416e (2026-09-12).
Current evidence
src/cli.rs returns pc-windows-gnu for every Windows host. .github/workflows/rust.yml explicitly expects the GNU default even when the compiler host is aarch64-pc-windows-msvc.
Scope
After native MSVC execution gates pass, select x86_64-pc-windows-msvc and aarch64-pc-windows-msvc as the Windows defaults. Update driver print/dry-run/build/run expectations and packaging smoke commands together. Preserve explicit target selection during the transition; never fall back silently to GNU when MSVC prerequisites are missing.
Completion criteria
Native x64/ARM64 tests prove ordinary build/run and printed host/default target use MSVC. Explicit target overrides remain honored until the separate removal step. Unsupported/missing enabled backends fail clearly. Document the behavior change through existing target-matrix/migration documentation work #401 instead of adding a second support table. Linux/macOS/BSD defaults are unchanged.
Dependencies and boundaries
#612, #613, #617, #623, #615, #616; #608/#609 must be resolved. #626 follows this issue.
Part of #611. Difficulty: medium. Audit baseline: master
3950416e(2026-09-12).Current evidence
src/cli.rs returns pc-windows-gnu for every Windows host. .github/workflows/rust.yml explicitly expects the GNU default even when the compiler host is aarch64-pc-windows-msvc.
Scope
After native MSVC execution gates pass, select x86_64-pc-windows-msvc and aarch64-pc-windows-msvc as the Windows defaults. Update driver print/dry-run/build/run expectations and packaging smoke commands together. Preserve explicit target selection during the transition; never fall back silently to GNU when MSVC prerequisites are missing.
Completion criteria
Native x64/ARM64 tests prove ordinary build/run and printed host/default target use MSVC. Explicit target overrides remain honored until the separate removal step. Unsupported/missing enabled backends fail clearly. Document the behavior change through existing target-matrix/migration documentation work #401 instead of adding a second support table. Linux/macOS/BSD defaults are unchanged.
Dependencies and boundaries
#612, #613, #617, #623, #615, #616; #608/#609 must be resolved. #626 follows this issue.