SIGN IN SIGN UP

ci: Windows CPU integration smoke job + OS label routing fix (RoFormer Windows plan, part 1) (#294)

* ci: add Windows CPU integration smoke job + OS label routing fix

- New windows-cpu-integration job on windows-latest (Python 3.12, -E cpu):
  runs one model per DirectML-relevant architecture (RoFormer, MDX, VR)
  end-to-end via the existing parametrized CLI test, with actions/cache
  for model files. Reported in the gate job but non-blocking until
  stabilized (promotion to ruleset 529535 comes later).
- Existing GPU jobs now use runs-on [self-hosted, linux, gpu]: GitHub
  matches any runner whose labels are a superset, so bare
  [self-hosted, gpu] jobs could be scheduled onto the upcoming Windows
  GPU runners.
- Rewrite stale docs/CI-GPU-RUNNERS.md: it described the fixed VM pool
  deleted 2026-05-18; now documents the ephemeral JIT-runner
  architecture, label conventions, Windows coverage tiers, and current
  troubleshooting paths.
- Add docs/archive plan for RoFormer Windows/DirectML support (#292).

Part 1 of the RoFormer-on-Windows plan (issue #292).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* ci/docs: address review feedback (gate messaging, doc precision, plan quality-floor)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* fix(tests): resolve audio-separator CLI next to sys.executable for Windows CI

On windows-latest, 'poetry run pytest' does not put the venv Scripts dir
on the subprocess search PATH, so subprocess.run(["audio-separator", ...])
failed with WinError 2. Console scripts always sit next to the venv
interpreter on both platforms, so resolve via shutil.which with a
sys.executable-relative fallback. No behavior change on Linux (which()
finds the same executable that bare invocation used).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* fix(ci): create model dir before Windows integration tests

Separator raises FileNotFoundError when AUDIO_SEPARATOR_MODEL_DIR points
at a missing directory; hosted runners have no pre-baked model dir and an
actions/cache miss leaves it absent.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
A
Andrew Beveridge ☄️ committed
20f9021ee23dd1f54e8e18571a6b3446da49aed2
Parent: ee1fcee
Committed by GitHub <noreply@github.com> on 7/20/2026, 6:08:56 PM