swactor/crates/dashboard
Zachery Aaron Shores-Chmielewski a1f67fe1c7 refactor(mvp-system): establish module boundaries
- Split arena/ring/object-record into a new data-plane crate and node/plugin contracts
  into a provisioning crate.
- Reorganize mvp-system into orchestration, staging, node, chat, and worker modules;
  extract binaries into chat/runtime and node/worker_node_runtime.
- Add MVP_SYSTEM_MODULE_BOUNDARY_SPEC.


Signed-off-by: Zachery Aaron Shores-Chmielewski <zacheryasc@gmail.com>
2026-07-28 11:29:31 +04:00
..
src refactor(mvp-system): establish module boundaries 2026-07-28 11:29:31 +04:00
.gitignore feat: stability for deployment and distribution (#44) 2026-02-19 14:39:33 +00:00
AGENTS.md refactor(dashboard): rebuild around swactor worker view 2026-06-25 11:29:16 +04:00
Cargo.lock refactor(dashboard): rebuild around swactor worker view 2026-06-25 11:29:16 +04:00
Cargo.toml feat: add mvp provisioning subsystem and datastream transport 2026-06-25 16:30:18 +04:00
README.md feat: rework datastream into catalog events, add gguf metadata 2026-07-12 10:14:34 +04:00

dashboard

Read-only HTML/SSE dashboard over incoming datastream frames.

The crate owns the Axum server, bounded raw frame window, and view registry. Component crates can keep their own view implementations beside their code and register them through DashboardHandle::register_view. The built-in swactor worker page is hosted here because worker/actor/message processing is universal to swactor programs.

Routes

  • GET / — dashboard index
  • GET /events — raw incoming frames as SSE
  • GET /api/frames — recent raw frame window
  • GET /api/views — registered view metadata
  • GET /view/datastream/live — generic live explorer over retained and incoming datastream frames
  • GET /api/view/datastream/live — bounded per-stream/channel explorer snapshot
  • GET /view/fleet — compact fleet overview and focused machine telemetry
  • GET /api/view/fleet — fleet and machine telemetry JSON snapshot
  • GET /view/swactor/workers — built-in worker page
  • GET /api/view/swactor/workers — worker page JSON snapshot

All state is derived from observed frames. The dashboard sends no control signals back to producers.