Skip to content

First-Run Checklist

Use this checklist to verify that everything is working after setup.

Service Health

Run make status (Docker) or check each service manually:

Check Command Expected
App is running curl http://localhost:8080/health {"status":"ok"}
Database connected curl http://localhost:8080/status "database":"connected"
RAG API is running curl http://localhost:8089/health {"status":"ok"}
LLM Sidecar is running curl http://localhost:3100/health {"status":"ok"}
Qdrant is running curl http://localhost:6333/healthz HTTP 200

Application

  • [ ] Open http://localhost:8080 in your browser
  • [ ] Dashboard page loads (charts may be empty without InteLIS data)
  • [ ] Chat tab is visible and accessible

Chat (Requires InteLIS Data + API Key)

If you have both InteLIS data imported and an LLM API key configured (via Settings → API Keys or .env):

curl -X POST http://localhost:8080/api/v1/chat/ask \
  -H 'Content-Type: application/json' \
  -d '{"question": "How many viral load tests were done last month?"}'

Expected: a JSON response with sql, data, and chart fields.

RAG Index (Requires InteLIS Data)

If you've run make rag-refresh:

curl -X POST http://localhost:8089/v1/search \
  -H 'Content-Type: application/json' \
  -d '{"query": "viral load suppression", "k": 3}'

Expected: a JSON response with matching snippets about VL suppression thresholds.

What If Something Fails?

Symptom Likely cause Fix
App shows "not ready" Container still starting Wait 30 seconds, try again
Database shows "not connected" MySQL not ready or wrong credentials Check DB_PASSWORD in .env
RAG API shows "not ready" Downloading embedding model (first run) Wait up to 60 seconds
LLM Sidecar shows "not ready" Missing llm-sidecar/ files Run git submodule update --init --recursive
Chat returns an error No API key or no InteLIS data Add a key in Settings → API Keys (or check .env); see Connecting InteLIS Data

For more detailed solutions, see Troubleshooting.