Repository navigation
record-tui-gif: discover the LLM endpoint at runtime instead of hardcoding a port - #72
Merged
Merged
Conversation
…oding a port
The workload exists only to make the GPU gauges move while vhs records — nothing
about actop depends on which model or port answers. The script nevertheless
pinned http://localhost:9040, which read like a declared dependency but was just
whatever happened to be running on the author's machine. That stack renumbered
twice in 2026-08 alone, and each time this script failed with an error pointing
at the wrong conclusion ("router not started").
It now binds to nothing: it checks which local ports actually speak an OpenAI or
Ollama model-listing API and takes the first that answers, then asks that
endpoint which model it serves. LLM_URL pins it explicitly when that matters
(ROUTER_URL still honoured as the old name).
A missing endpoint no longer fails the run either — a flat-gauge GIF is degraded,
not invalid, so discovery failure falls through to SKIP_WORKLOAD with a note.
Also drops a stale claim: the comment said /v1/models was unusable as a probe
because the llama.cpp router 400s body-less GETs. That router no longer parses
request bodies at all and passes GETs straight through, so the two-step
/api/tags -> /health fallback it justified is gone.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Skill-only churn, so per CLAUDE.md "When to cut a release" it waits for the next release carrying a user-visible change rather than burning a version. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The GIF workload exists only to keep the GPU gauges moving while
vhsrecords — nothing in actop depends on which model or port answers. The script nevertheless pinnedhttp://localhost:9040, which read like a declared dependency but was only whatever happened to be running when it was written. That stack renumbered twice in 2026-08 alone, and each time this script failed with an error pointing at the wrong conclusion ("router not started").It now binds to nothing:
/v1/models) or Ollama (/api/tags) model-listing API, takes the first that answersLLM_URLpins it explicitly when that matters (ROUTER_URLstill honoured as the old name)Also drops a stale claim: the comment said
/v1/modelswas unusable as a probe because the llama.cpp router 400s body-less GETs. That router no longer parses request bodies at all and passes GETs straight through, so the two-step/api/tags→/healthfallback it justified is gone.Release
No release. This is skill-only churn with no user-visible change, so per
CLAUDE.md→ "When to cut a release" it is logged underCHANGELOG.md[Unreleased]and ships with the next release that carries a real fix.Verification
bash -nclean:8081,:8181,:9140; correctly skipped:8283(TEI embeddings) and:8126(unrelated proxy), neither of which serves a model listing