Operations Dashboard¶
Oath Bringer's operations dashboard is the local-first command center for services, sites, GitLab projects, Cloudflare resources, and self-hosted systems.
Architecture¶
data/operations-inventory.jsonis the editable source of truth for known services.- SQLite stores discovered services, current state, check history, and deployment history.
apps/api/src/operationscontains discovery, inventory upsert, health checks, triage, and overview aggregation./api/operations/overviewpowers the dashboard./api/operations/discoverimports editable inventory plus local repo and SSH host discovery. GitLab and Cloudflare enrichment runs when API tokens are available./api/operations/enrichrecords provider status and imports deployment history from GitLab pipelines and Cloudflare Pages./api/operations/refreshruns health checks and records append-only results.- A background scheduler can run discovery, enrichment, and refresh automatically.
Inventory Schema¶
Each service supports:
name,slug,descriptionowner,environment,priorityprovider,serviceTypeurl,healthUrl,repoUrlgitlabProjectPath,cloudflareZoneId,cloudflareResourceIddeployTarget,dependencies,tags,metadata
Use stable slugs. SQLite upserts by slug, so editing a service in JSON keeps its check history attached.
Add A Service¶
- Edit
data/operations-inventory.json. - Add the service with at least
name,slug,owner,environment,priority,provider, andserviceType. - Add
urlorhealthUrlwhenever possible. - Run
pnpm ops:discover. - Run
pnpm ops:refresh. - Open
/dashboardand confirm the service appears.
Local Commands¶
Discovery will quietly read env-style secrets from:
~/.secrets/gitlab-ops.env~/.secrets/gitlab-mfox-agent.env~/.secrets/Cloudflare
Expected optional variables:
GITLAB_TOKENorGITLAB_PRIVATE_TOKENGITLAB_BASE_URLCLOUDFLARE_API_TOKENorCF_API_TOKENCLOUDFLARE_ACCOUNT_IDorCF_ACCOUNT_ID
Scheduled Refresh¶
The API process starts a scheduled operations refresh by default.
Configure it with:
OPERATIONS_REFRESH_ENABLED=falseto disable it.OPERATIONS_REFRESH_INTERVAL_MS=300000to control interval length.OPERATIONS_REFRESH_INITIAL_DELAY_MS=30000to control startup delay.
Each scheduled cycle runs inventory discovery, provider enrichment, and health checks with overlap protection.
Production Verification¶
After deployment:
- Run the dashboard verification script against production data.
- Confirm
/healthreturns healthy. - Confirm
/dashboardloads the operations console. - Trigger a refresh and inspect any degraded or down services.
- Spawn a verification agent to independently confirm the production dashboard works.