Goal
Rework the RStack Business Hub dashboard into a production-ready, white-background observability experience for business teams while keeping all displayed data grounded in real .rstack sources.
Scope
- Fix the live status/connection display so HTTP state loading cannot overwrite a connected WebSocket state.
- Correct approvals so actionable pending approvals come only from
.rstack/approvals.jsonl; historical blocked-gate events should appear under alerts/guardrails, not as pending approvals.
- Reorganize dashboard screens around SDLC layers: Command Center, Workflow Map, Projects & Runs, Agent Work, Live Feed, Approvals, Alerts & Guardrails, Traceability, Team & Layers, Diagnostics.
- Refactor dashboard code into clean state, UI component, and UI page modules so the repo remains maintainable.
- Reuse concepts from
/Users/richardsongunde/projects/rstack-workspace-v8.html where useful, without fake data or heavy external dependencies.
Acceptance Criteria
- Dashboard renders real data from local/project
.rstack stores only.
- Live Feed no longer gets stuck at
Loaded (connecting…) when the socket is connected.
- Approval counts match actual actionable approval queue data.
- Agent work is grouped by project/run/stage/agent and clearly shows work done, evidence, and validation where present.
- Screens are visually clean, aligned, and usable on common desktop widths.
- Existing dashboard/business tests pass after the refactor.
Goal
Rework the RStack Business Hub dashboard into a production-ready, white-background observability experience for business teams while keeping all displayed data grounded in real
.rstacksources.Scope
.rstack/approvals.jsonl; historical blocked-gate events should appear under alerts/guardrails, not as pending approvals./Users/richardsongunde/projects/rstack-workspace-v8.htmlwhere useful, without fake data or heavy external dependencies.Acceptance Criteria
.rstackstores only.Loaded (connecting…)when the socket is connected.