Dashboard Reference¶
The ArqonHPO Dashboard is a web-based UI for monitoring and interacting with running optimization jobs.

Starting the Dashboard¶
Options¶
| Flag | Default | Description |
|---|---|---|
--state | (required) | Path to solver state file |
--events | (optional) | Path to events log file |
--actions | (optional) | Path to actions log file |
--addr | 127.0.0.1:3030 | Address to bind HTTP server |
Then open http://127.0.0.1:3030 in your browser.
Interface Overview¶
The dashboard features a high-visibility, "top-down" layout optimized for real-time control:
- Control Actions — (Top, Full Width) Issue immediate commands like
pause,resume, orrollback. - Run Summary — (Full Width) The "Pulse" of the run: Budget, History, and Best results.
- Objective Trend — (Full Width) A stylized chart showing convergence over time.
- Recent Evaluations — The most recent results processed by the solver.
- Audit Events — A narrative stream of phase shifts, warnings, and errors.
REST API Endpoints¶
The dashboard serves a REST API for programmatic access:
GET /api/state¶
Returns the full solver state.
Response:
{
"config": {
"seed": 42,
"budget": 100,
"bounds": { ... }
},
"history": [
{"params": {"x": 0.5}, "value": 1.23, "cost": 1.0},
...
],
"run_id": "demo-run-123"
}
GET /api/summary¶
Returns a compact summary of optimization progress.
Response:
GET /api/events¶
Returns recent events from the events log.
Query Parameters:
| Param | Type | Description |
|---|---|---|
event | string | Filter by event type (e.g., ask, tell) |
q | string | Search query in event details |
limit | int | Maximum events to return (default: 100) |
Response:
{
"events": [
{ "timestamp_us": 1704067201000, "event": "ask", "batch_size": 1 },
{ "timestamp_us": 1704067202000, "event": "tell", "count": 1 }
]
}
GET /api/actions¶
Returns recent actions from the actions log.
Response:
{
"actions": [
{ "timestamp_us": 1704067300000, "action": "pause", "reason": "manual" },
{ "timestamp_us": 1704067400000, "action": "resume", "reason": "stable" }
]
}
POST /api/actions¶
Send an action to the solver.
curl -X POST http://127.0.0.1:3030/api/actions \
-H "Content-Type: application/json" \
-d '{"action": "pause", "reason": "debug"}'
Action Fields:
| Field | Type | Description |
|---|---|---|
action | string | Required. (e.g., pause, resume, rollback) |
reason | string | Optional context for audit trail |
Response:
Security Considerations¶
[!WARNING] The dashboard does not have authentication. Bind only to
127.0.0.1or use a reverse proxy with auth.
For production use:
Prometheus Metrics¶
The dashboard also exposes Prometheus metrics if --metrics-addr is set:
Then scrape http://127.0.0.1:9898/metrics.
Next Steps¶
- TUI Reference — Terminal-based monitoring
- Observability — Prometheus metrics
- CLI Reference — Full CLI documentation