#433

fix(examples-cli): support pull on Windows

DraftAli-Karakiwants to merge intofrom

Problem

vgpu examples pull fails on Windows before writing any files because safe destination resolution rejects win32 outright.

Expected and actual behavior

Expected: examples pull safely writes the example manifest and files to --out on Windows, matching macOS and Linux behavior.

Actual: the command exits non-zero with VGPU-EXAMPLES-FILESYSTEM and Safe destination storage is unsupported on win32.

Reproduction or use case

npx -y vgpu examples pull black-hole --out ./vgpu-blackhole

The prototype in this PR adds a portable Windows path while retaining destination, staging, lock-directory identity, and pathname-swap checks. It also exercises the complete examples suite in the Windows CI job.

Environment

  • Windows 11
  • PowerShell 5.1
  • Node 22
  • Reported with vgpu 0.3.1

Related work and proposal

Related: #383

The proposed implementation uses exclusive directory locks on Windows, retries transient EBUSY/EPERM sharing conflicts across publication, recovery, and cleanup operations, compares filesystem identities using bigint inode values, and leaves unknown platforms fail-closed.

Verification on the final branch:

  • focused examples suite: 108 passed, 5 skipped
  • pnpm run typecheck
  • git diff --check

PR type

contribution

Activity

5
vercel[bot]2mo ago

@Ali-Karaki is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

Ali-Karaki2mo ago

@matiasngf This is current with canary and ready for review. The contributor-side validation is complete; GitHub CI and ORT are waiting for fork-workflow approval, and the Vercel preview is waiting for team authorization. Thanks!

vercel-security-reviewer[bot]1mo ago

This pull request is a draft

Merging is unavailable until it is marked ready for review.