3 Commits
Author SHA1 Message Date
hermes 7dc32a50e2 Raise LLM read timeout to 300s; prefer LAN endpoint in env example
Midnight failures were read timeouts against the public URL — hairpin NAT
and/or the request queuing behind other traffic on the shared model.
LAN endpoint + longer timeout covers both.
2026-09-30 08:06:18 +00:00
hermes c6fd9a5c77 Repair curly-quote JSON from LLM before parsing
halogen-qwen3.8-flash-next sometimes uses typographic quotes (“ ”) as JSON
string delimiters, which breaks strict json.loads. Add a scanner that
normalizes curly-delimited strings to straight quotes while preserving
curly quotes used as content inside straight-quoted strings.
2026-09-29 19:54:56 +00:00
hermes 075b72ec6c Wiki Jokes: daily LLM jokes from Wikipedia featured article
- FastAPI + APScheduler + SQLite, single container
- Daily generation at 06:00 Europe/Copenhagen + cold-start generation
- Retry with backoff (3 attempts/15 min), stale fallback with banner
- OpenAI-compatible endpoint via env (OPENAI_BASE_URL/MODEL/API_KEY)
- docker-compose with named volume for joke persistence
2026-09-29 19:38:01 +00:00