Issues / #3298

#3298 Windows app: Qwen3.6 install reported as "files missing" (--mtp 2 checked as a folder) and Gyro-S low-RAM prep fails (missing --compat-bf16)

open · @daktuno · 1 コメント · GitHub で見る

needs-format

本文

Versions: Strata desktop 0.2.0-beta, strata-control / engine 0.1.45.3 (windows-x86_64-cuda-cuda13), bundled Python 3.12.15 PC: Windows 11, RTX 4070 Ti SUPER 16 GB (driver 617.42), 31 GB RAM, Ryzen 7 9800X3D

There are two separate bugs here. Both block a model from starting in the app, and the Diagnostics panel only shows a generic error for each.

Bug 1: Qwen3.6-35B-A3B UD-Q4_K_XL always shows "Some model files are missing"
What happens: Setup finishes (strata-mcp: setup ended with exit code 0, "All set."). Every start attempt then fails with:

Some model files are missing. Use Download / repair to restore them.

Download / repair runs, succeeds, and the same error comes back. Deleting the model and downloading it again (23 GB) doesn't help.

Cause: The Qwen3.6 run config written by setup passes --mtp a number (the draft depth), not a folder:
```

"args": ["--native", "...\\Qwen3.6-35B-A3B-UD-Q4_K_XL.gguf", "--max-context", "65536",
         "--prefill", "auto", "--mtp", "2", "--vision"]
strata_control/doctor.py maps "--mtp": "directory" in PATH_FLAGS, so the component check looks for a folder named 2 relative to the control directory:
```
```

{"name": "mtp", "status": "missing", "path": "...\\Strata\\control\\2", "kind": "directory", "required": true}
strata models list then reports component_status: "missing_or_invalid" / COMPONENT_MISSING, so the host gets ready: false and refuses to start. strata_cli/launch/runner.py files_present() has the same issue for --mtp.

strata_control/discovery.py:290 (mtp.isdigit()) and presets.py:115 already treat a numeric --mtp as Qwen3.6's depth. The two path checks just don't.

```
Fix I applied locally (confirmed working): in both checks, skip --mtp when its value is all digits.
```

# strata_control/doctor.py, in the PATH_FLAGS loop after `raw = args[index + 1]`
if arg == "--mtp" and raw.isdigit():
    continue

```
```
# strata_cli/launch/runner.py, files_present(): add to the existence condition
and not (flag == "--mtp" and args[args.index(flag) + 1].isdigit())
After the change, strata models list reports qwen36-ud-q4_k_xl present [].
```

Bug 2: Gyro-S fails at step 6 with "command failed (exit 1): python.exe"
What happens: With Qwen3.8-Flash-Next (Gyro) Gyro-S on a PC where setup turns on low-RAM mode automatically (--low-ram auto, 31 GB RAM), step 6 fails:

=== Step 6: preparing the model for Strata ===
  Writing the experts into one file for the low-RAM mode (one time, 26 GB) ...
  > ...\python.exe ...\tools\iq_pack.py --gguf ...\Qwen3.8-Flash-Next-Gyro-S-TQ1_0.gguf --out ...\packs\gyro-gyro-s --experts-bin
prism.hadamard: 48 layer(s) of Hadamard-folded experts (block 128, explicit signs): hadamard.txt, native_experts.txt v5
output_hc_down.weight is IQ4_NL, but the engine requires BF16; use --compat-bf16
output_hc_up.weight is IQ4_NL, but the engine requires BF16; use --compat-bf16
blk.0.hc_attn_down.weight is Q6_K, but the engine requires BF16; use --compat-bf16
...
... and 356 more
  [X]  command failed (exit 1): python.exe
Cause: In setup.py (around line 7920), the first iq_pack.py call passes the family's pack_args (["--compat-bf16"] for gyro). That call succeeds and writes compat-bf16.json, dense.bin and index.txt. The low-RAM --experts-bin call right after it doesn't pass pack_args. index_standalone() runs again without compat_bf16 and rejects the quantized hyper-connection tensors.

Suggested fix:

```
run([sys.executable, str(ROOT / "tools" / "iq_pack.py"), "--gguf", str(shards[0]), "--out", str(pack),
     "--experts-bin", *fam.get("pack_args", [])], env=env)
```
This probably affects any family with pack_args whenever low-RAM mode is on.

Smaller suggestion: In the app, both failures only show "Something went wrong" / "command failed (exit 1): python.exe" or a "files missing" message that Download / repair can't clear. The actual reason ("mtp folder ...\control\2 missing", or the --compat-bf16 lines) is only in setup.log or strata models list. Showing it in Diagnostics would have made both of these much faster to track down.

関連リンク

インストール・モデル・リリースへのサイト内リンク。