homepage: the Dankserver LLM card was labelled with a retired name
The card probing 192.168.0.235:7770 — frank-medium's endpoint since the radiance cutover — was still called "frank-small", a service retired on 2026-09-15. The probe target was right; only the identity was wrong, which is the worse half: a green card named after a service that no longer exists teaches the wrong thing about the fleet. It is now frank-medium, described as what it actually is (Qwen3.8-27B Uncensored MXFP4, vllm-radiance, two R9700s behind one endpoint), and frank-large's description stops crediting the retired halogen runtime for work ik_llama.cpp does. The seam added to homepage_config.bats pins the cross-file contract that let this drift: a card's probe target and its name must agree with the fleet, and a retired service must not keep a card.
This commit is contained in:
@@ -39,3 +39,20 @@ for svc in data:
|
||||
assert not svc.get("url"), f"{svc['name']} is status-only but has a url"
|
||||
PY
|
||||
}
|
||||
|
||||
@test "the LLM status cards track the fleet, not retired service names" {
|
||||
# This drifted: the card probing Dankserver's :7770 was still named
|
||||
# frank-small long after frank-small was retired and frank-medium took that
|
||||
# endpoint, so the homepage labelled the fleet's busiest service with a dead
|
||||
# name. The probe target was right; only the identity was wrong.
|
||||
python3 - "$REPO_ROOT/shared/homepage/services.json" <<'PY'
|
||||
import json, sys
|
||||
services = json.load(open(sys.argv[1]))
|
||||
by_probe = {s["probe"]: s["name"] for s in services}
|
||||
medium = by_probe.get("192.168.0.235:7770")
|
||||
assert medium == "frank-medium", f"Dankserver :7770 card is named {medium!r}"
|
||||
assert "frank-small" not in {s["name"] for s in services}, "retired frank-small still listed"
|
||||
# The big endpoint keeps its card too, so a fleet overview shows both.
|
||||
assert by_probe.get("127.0.0.1:7770") == "frank-large"
|
||||
PY
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user