Dashboard¶
Responsibility¶
User/admin UI backend: proxies orchestration, scheduler, and storage operations.
Inbound Authentication¶
- user session/JWT context
- admin-only guards for sensitive operations
Outbound Authentication¶
- forwards user/admin headers to orchestrator/scheduler/storage
- uses dedicated scheduler/orchestrator reload tokens for admin reload buttons
Key Config¶
- identity URLs and portal scope
- scheduler/orchestrator reload token env vars
VARIABLES_SERVICE_URL— base URL for the variables capability provider (used byGET /api/runtime/variables-list/{root_run_id}to show run-scoped variable rows on the Run detail panel; defaults tohttp://localhost:8094)
Health¶
GET /healthzGET /readyz
Operations panel (admin)¶
Cross-workflow run monitoring under Services → Operations (requires meshflows:platform:admin).
- UI loads
GET /api/runs(dashboard proxy, admin-gated) which forwards to orchestrator Postgres run ledger - Shows KPI counts (running / queued / interrupted / failed), Active / Attention / All filters, retry signals, and Open / Resume actions
- Depends on orchestrator
ORCH_MESSAGE_DATABASE_DSN(run state store); returns 503 / empty state when unset - Light queue context uses existing RabbitMQ inspect APIs when enabled
Workflow Validation Integration¶
Dashboard is the UI backend for workflow authoring and should surface orchestrator validation diagnostics unchanged.
Current behavior:
- dashboard proxies reload and workflow-management operations
POST /api/runtime/validate-workflowforwards YAML to orchestratorPOST /admin/validate(pass-through JSON)
Response body matches orchestrator POST /admin/validate (typically valid, errors with Pydantic locations, etc.).