unsloth/.github/workflows
Daniel Han d50a2e2d07
Studio: remove the Windows VBS launcher to clear the Kaspersky false positive (#6326)
* Studio: drop the VBS launcher to clear the Kaspersky false positive

The Windows shortcut launched Unsloth Studio through wscript.exe ->
launch-studio.vbs, and that VBS used CreateObject("WScript.Shell").Run to
start a hidden -ExecutionPolicy Bypass PowerShell. That wscript + .vbs +
bypass-powershell shape is the canonical trigger for generic VBS-dropper
heuristics (Kaspersky HEUR:Trojan.VBS.Agent.gen). The launcher is benign;
only its shape is the problem.

- install.ps1: stop generating launch-studio.vbs and point the Desktop /
  Start Menu .lnk straight at powershell.exe -WindowStyle Hidden running
  launch-studio.ps1. The shortcut is saved WindowStyle 7 (minimized) so the
  brief console flash is muted. launch-studio.ps1 (health poll, port,
  mutex, browser) is byte-for-byte unchanged.
- install.ps1: delete a pre-existing launch-studio.vbs on upgrade, so the
  flagged file does not linger on machines that already installed it.
- install.ps1 / install.sh: run the heavier ie4uinit -ClearIconCache plus
  StartMenuExperienceHost tile-cache rebuild only on a first install or a
  real icon change, instead of on every no-op reinstall. That repeated
  clear-cache plus kill cluster is itself a dropper-like behavioral pattern.
- tests: forbid VBS generation and require the legacy-VBS cleanup.

Linux, macOS and WSL install paths are unchanged. WSL already targets
wsl.exe from its .lnk and never used a VBS; its only change is the same
icon-cache gating.

* Studio: add launcher-chain smoke coverage to the Windows UI CI

The shortcut launch path was previously untested: studio-windows-ui-smoke
installed then booted `unsloth studio` directly, so a broken .lnk could ship
silently. After install the job now seeds a legacy launch-studio.vbs, asserts
the upgrade removed it, asserts the .lnk targets hidden powershell.exe (never
wscript.exe), and launches via the shortcut's stored command, waiting for
/api/health to report healthy.

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2026-06-16 04:00:18 -07:00
..
consolidated-tests-ci.yml Fix Llama 3.1+ rope scaling dropped on the FastLanguageModel path (long inputs become gibberish past ~29K tokens) (#6197) 2026-06-11 07:48:21 -07:00
cross-platform-parity-ci.yml Run cross-platform parity test on Windows and macOS in CI (#6241) 2026-06-12 03:40:50 -07:00
lint-ci.yml Lint CI: diff import-hoist check against the PR merge-base, not the base tip (#6190) 2026-06-11 04:23:41 -07:00
lockfile-audit.yml ci: advisory lockfile supply-chain audit (no install-script changes) (#5604) 2026-05-19 05:56:56 -07:00
mlx-ci.yml MLX CI: drop removed --simple-policy and stale ggml-org pin from the prebuilt step (#6189) 2026-06-11 00:00:50 -07:00
notebooks-ci.yml ci: install unsloth_zoo from git main in notebooks-ci + studio-backend-ci (#5802) 2026-05-27 01:35:13 -07:00
release-desktop.yml Fix Windows workflow issues(#5694) 2026-05-22 05:32:30 -07:00
security-audit.yml Package scanners: cut false positives and make the CI gate blocking (#6355) 2026-06-16 01:46:15 -07:00
stale.yml CI: scope GITHUB_TOKEN permissions, add MLX CI, unblock ~60 skipped tests (#5312) 2026-05-11 03:19:13 -07:00
studio-api-smoke.yml Studio CI: stop HF 429 rate limits from sinking the llama.cpp prebuilt path (#6199) 2026-06-11 06:57:48 -07:00
studio-backend-ci.yml studio/setup.sh: cope with fresh CUDA toolkits like 13.3 (#5826) 2026-05-29 05:09:20 -07:00
studio-frontend-ci.yml Frontend CI: hard-fail unreviewed npm install scripts (#6139) 2026-06-10 06:10:16 -07:00
studio-inference-smoke.yml ci(studio): fix Linux tool-calling flake (Q4_K_XL) + capture server logs (#6360) 2026-06-16 03:43:35 -07:00
studio-load-orchestrator-ci.yml studio: unblock /load event loop on detect_audio_type (#5642, #5635) (#5669) 2026-05-22 05:47:58 -07:00
studio-mac-api-smoke.yml Studio CI: stop HF 429 rate limits from sinking the llama.cpp prebuilt path (#6199) 2026-06-11 06:57:48 -07:00
studio-mac-inference-smoke.yml Studio CI: stop HF 429 rate limits from sinking the llama.cpp prebuilt path (#6199) 2026-06-11 06:57:48 -07:00
studio-mac-install-matrix.yml Studio CI: stop HF 429 rate limits from sinking the llama.cpp prebuilt path (#6199) 2026-06-11 06:57:48 -07:00
studio-mac-ui-smoke.yml Studio CI: stop HF 429 rate limits from sinking the llama.cpp prebuilt path (#6199) 2026-06-11 06:57:48 -07:00
studio-mac-update-smoke.yml Studio CI: stop HF 429 rate limits from sinking the llama.cpp prebuilt path (#6199) 2026-06-11 06:57:48 -07:00
studio-tauri-smoke.yml ci: drop cache: 'npm' from setup-node (silent abort on Windows) (#5474) 2026-05-15 20:49:05 -07:00
studio-ui-smoke.yml ci(studio): fix Linux tool-calling flake (Q4_K_XL) + capture server logs (#6360) 2026-06-16 03:43:35 -07:00
studio-update-smoke.yml Studio CI: stop HF 429 rate limits from sinking the llama.cpp prebuilt path (#6199) 2026-06-11 06:57:48 -07:00
studio-windows-api-smoke.yml Studio CI: stop HF 429 rate limits from sinking the llama.cpp prebuilt path (#6199) 2026-06-11 06:57:48 -07:00
studio-windows-inference-smoke.yml Studio CI: stop HF 429 rate limits from sinking the llama.cpp prebuilt path (#6199) 2026-06-11 06:57:48 -07:00
studio-windows-ui-smoke.yml Studio: remove the Windows VBS launcher to clear the Kaspersky false positive (#6326) 2026-06-16 04:00:18 -07:00
studio-windows-update-smoke.yml Studio CI: stop HF 429 rate limits from sinking the llama.cpp prebuilt path (#6199) 2026-06-11 06:57:48 -07:00
version-compat-ci.yml tests: pinned-symbol canary for unsloth-zoo save_pretrained_merged guards (#5410) (#5433) 2026-05-17 01:35:28 -07:00
wheel-smoke.yml ci: drop cache: 'npm' from setup-node (silent abort on Windows) (#5474) 2026-05-15 20:49:05 -07:00