Production checklist
Before connecting production cameras
A successful test event proves the integration path. Production also requires recoverable data, a protected network boundary, capacity evidence, and rehearsed failure handling.
- 01Use a 32+ character bootstrap key in a secret manager, then issue least-privilege keys.
- 02Publish the API only on localhost or a TLS-protected private network.
- 03Back up data and model volumes, and test the restore procedure.
- 04Use a substream and unique credential for each RTSP source; confirm responses never expose raw URLs.
- 05Smoke-test a real provider and representative images, not only the mock provider.
- 06Verify raw-body HMAC and deduplicate webhooks by event_id plus delivery_id.
- 07Monitor /readyz, disk capacity, provider state, offline sources, and dead-letter deliveries.
- 08Test runtime restart, source loss, provider loss, and receiver outage.
- 09Document retention, access roles, evidence export, and incident-response ownership.
- 10Back up before upgrades; inspect the OpenAPI diff and version/deprecation notices.
Capacity is not just a camera count
Measure stream resolution and FPS, VLM image size and cadence, GPU/VRAM, inference queue, event density, evidence retention, and webhook latency. Promise camera count only after a soak test with equivalent hardware, model, and monitor settings.
Availability boundaries
process alive GET /healthz
database + reconciliation GET /readyz
node and monitor summary GET /v1/system
CPU / RAM / GPU / disk GET /v1/system/resources
provider readiness GET /v1/system/models
delivery backlog GET /v1/webhook-deliveriesA hosted multi-tenant control plane, SOC 2, ISO 27001, HIPAA, and self-serve SaaS checkout are not currently claimed as generally available. Run a deployment and security review when procurement requires them.