Resolve conflict in .forgejo/workflows/docker-publish-semantic.yml:
both sides removed the cache-from/cache-to lines; keep this branch's
unique-per-run platform tag from ea8cda7 (related to issue #84).
Picks up dependency bumps from main (click 8.3.3->8.4.0,
idna 3.14->3.15, openai 1.109.1->2.37.0).
- _fetch_loaded_models_internal now writes _loaded_error_cache[endpoint] = time.time() on /api/ps or /v1/models failure, and clears the entry on success
- choose_endpoint now filters out candidates with a fresh (<300s) loaded-models error.
- /health now probes both /api/version and /api/ps for Ollama endpoints
- dashboard adaption
relates to #83