fix(homepage): the frank-tts card is a real probe now
The endpoint deployed on 2026-10-18, so the admin card must carry its state rather than a placeholder: wip becomes false (the registry schema wants the key on every service; false is what the live cards use) and the description drops the "Hidden until deployed" line. showLink stays false and the card stays admin-only: an HTTP API has no page to open, and homepage-status.py counts ANY HTTP response as up, so the card is honest with no link and no /health path in the probe. The voice seam that pinned wip == down is re-keyed to the deployed contract and now also refuses a link or a user-category placement.
This commit is contained in:
@@ -943,10 +943,14 @@ DRV
|
||||
|| { echo "editing app.py must rebuild the façade image"; false; }
|
||||
}
|
||||
|
||||
@test "the voice stack's homepage state: one card for the pair, and it is hidden while undeployed" {
|
||||
@test "the voice stack's homepage state: one probed card for the pair, and no link" {
|
||||
# The engine is not on the homepage and must not be: it publishes no port, so
|
||||
# there is no address the checker could dial, and a card that can never be
|
||||
# green is worse than no card. The façade carries the pair's signal.
|
||||
# green is worse than no card. The façade carries the pair's signal — and
|
||||
# since the 2026-10-18 deploy that signal is a real probe (`wip: false`), not
|
||||
# a placeholder. It stays `showLink: false` and admin-only: an HTTP API has no
|
||||
# page to open, and the checker counts ANY HTTP response as up, so the card is
|
||||
# honest without a link and without a `/health` path in the probe.
|
||||
python3 - "$REPO_ROOT" <<'PY'
|
||||
import json, os, sys
|
||||
root = sys.argv[1]
|
||||
@@ -955,8 +959,12 @@ assert "frank-tts-engine" not in cards, \
|
||||
"the engine publishes no port: a card for it could never be probed green"
|
||||
fts = cards["frank-tts"]
|
||||
assert fts["probe"] == "127.0.0.1:7772", fts["probe"]
|
||||
assert fts["wip"] == "down" and fts["showLink"] is False, \
|
||||
"nothing listens on 7772 until the deploy, so a visible card reads as down forever"
|
||||
assert fts["wip"] is False, \
|
||||
"the endpoint is deployed; a wip card would hide its real state: " + repr(fts.get("wip"))
|
||||
assert fts["showLink"] is False and fts["url"] == "", \
|
||||
"an API endpoint has no UI to link to — it is a status card, not a tile"
|
||||
assert fts["category"] == "admin", \
|
||||
"consumers dial this; it is not an app the user homepage should advertise"
|
||||
assert os.path.exists(f"{root}/shared/homepage{fts['art']}"), f"missing art {fts['art']}"
|
||||
PY
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user