1. Start infrastructure
2. Enable pgvector and run migrations
3. Start the two sibling services
4. Bootstrap the first administrator
POST /operators requires an authenticated administrator, so the very first one has to be created directly against the DB:
POST /auth/operator/login, then complete the forced reset with POST /auth/operator/set-password — no operator endpoint works until that reset happens (see Auth).
5. Run the API
GET /health — it reports reachability for every dependency (DB, Redis, face-engine, the registry), not just its own process:
liveness_mode defaults to stub (always passes, loudly logged on
boot) — flip LIVENESS_MODE=heuristic in .env to route through
face-engine’s real /v1/liveness heuristic instead. Neither is
compliance-grade PAD; see Architecture → Liveness.