Promote the `mvp-system` workspace library crate to a standalone application at `apps/myelin`, rebranding the MVP system along with its binaries, node image, and spec. - workspace `Cargo.toml`: swap member `crates/mvp-system` -> `apps/myelin` and drop `apps` from `exclude` so the app joins the workspace - `apps/myelin/Cargo.toml`: declare package `myelin` with `autobins = false` and explicit `[[bin]]` targets `myelin-worker`, `myelin-orchestrator`, `myelin-chat` - `apps/myelin/src`: move the whole `mvp-system` source tree and rebrand module surfaces (`chat/mod.rs`, `prompt/mod.rs`); add `bin/chat.rs` (`myelin::run_chat_from_args`) and delete the old `mvp_chat.rs` - `apps/myelin/node-image`: relocate the worker image assets from `apps/mvp-node/` (Dockerfile, Dockerfile.base, tinygrad_worker.py, entrypoint, e2e script) and rename `MVP_SYSTEM_SPEC.md` -> `MYELIN_SPEC.md` - `xtask`: rewrite build/reference paths for the rename (~1000-line churn); add `crates/dashboard/ACTOR_PANEL_SPEC.md` Signed-off-by: Zachery Aaron Shores-Chmielewski <zacheryasc@gmail.com> |
||
|---|---|---|
| .. | ||
| src | ||
| .gitignore | ||
| ACTOR_PANEL_SPEC.md | ||
| AGENTS.md | ||
| Cargo.lock | ||
| Cargo.toml | ||
| README.md | ||
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 indexGET /events— raw incoming frames as SSEGET /api/frames— recent raw frame windowGET /api/views— registered view metadataGET /view/datastream/live— generic live explorer over retained and incoming datastream framesGET /api/view/datastream/live— bounded per-stream/channel explorer snapshotGET /view/fleet— compact fleet overview and focused machine telemetryGET /api/view/fleet— fleet and machine telemetry JSON snapshotGET /view/swactor/workers— built-in worker pageGET /api/view/swactor/workers— worker page JSON snapshot
All state is derived from observed frames. The dashboard sends no control signals back to producers.