frank-large: deployer spec gate must accept the sharded MTP layout

The 2026-10-01 first deploy refused /home/dank/models/Qwen3.5-9B because
the handler checked for a single model.safetensors (the dflash layout);
the Qwen3.5-9B MTP head ships 4 shards behind model.safetensors.index.json.
Same dual-layout acceptance as the serve script, now mirrored and gated by
the seam. The gate fired before the stop, so the live gufo unit was never
touched (health 200 throughout).
This commit is contained in:
Frank
2026-10-01 18:52:17 -07:00
parent 1127a52078
commit de383fe53e
2 changed files with 11 additions and 2 deletions
+8 -2
View File
@@ -1160,8 +1160,14 @@ deploy_llm_large() {
return 1
fi
if [[ -n "$spec" ]]; then
if [[ -z "$spec_dir" || ! -f "$spec_dir/model.safetensors" ]]; then
echo "ERROR: spec draft absent for FRANK_LARGE_SPEC=$spec: $spec_dir/model.safetensors" >&2
# Both draft weight layouts are real: dflash ships a single
# model.safetensors, the Qwen3.5-9B MTP head ships sharded behind
# an index. Mirrors the serve script's gate (2026-10-01: the
# single-file check rejected the deployed mtp arm).
if [[ -z "$spec_dir" || ! -f "$spec_dir/config.json" ]] ||
{ [[ ! -f "$spec_dir/model.safetensors" ]] &&
[[ ! -f "$spec_dir/model.safetensors.index.json" ]]; }; then
echo "ERROR: spec draft absent or partial for FRANK_LARGE_SPEC=$spec: $spec_dir" >&2
echo "frank-large: re-run scripts/download-frank-large-dflash.sh (or the Qwen3.5-9B fetch for mtp)" >&2
return 1
fi