feat(ui): ship workflow visualization replay workspace
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
# Workflow Visualization Replay UI
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Shipped the canonical `Releases > Runs` graph and replay workspace with stable summary, graph, timeline, critical-path, replay, and evidence tabs. Operators can drill into failed steps, deep-link a step drawer with `step=<id>`, move into `Evidence > Verify & Replay`, and return to the same run context without depending on the dead `workflow-visualization` branch.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/workflow-visualization/`
|
||||
- **Primary components**:
|
||||
- `run-graph-replay-page` (`src/Web/StellaOps.Web/src/app/features/workflow-visualization/run-graph-replay-page.component.ts`)
|
||||
- `workflow-visualizer` (`src/Web/StellaOps.Web/src/app/features/workflow-visualization/components/workflow-visualizer/workflow-visualizer.component.ts`)
|
||||
- `time-travel-controls` (`src/Web/StellaOps.Web/src/app/features/workflow-visualization/components/time-travel-controls/time-travel-controls.component.ts`)
|
||||
- `step-detail-panel` (`src/Web/StellaOps.Web/src/app/features/workflow-visualization/components/step-detail-panel/step-detail-panel.component.ts`)
|
||||
- **Canonical routes**:
|
||||
- `/releases/runs/:runId/summary`
|
||||
- `/releases/runs/:runId/graph`
|
||||
- `/releases/runs/:runId/timeline`
|
||||
- `/releases/runs/:runId/critical-path`
|
||||
- `/releases/runs/:runId/replay`
|
||||
- `/releases/runs/:runId/evidence`
|
||||
- **Legacy aliases**:
|
||||
- `/workflow-visualization/:runId`
|
||||
- `/workflow-visualization/:runId/:tab`
|
||||
- **Query state**:
|
||||
- `step=<stepId>`
|
||||
- `returnTo=<encoded route>`
|
||||
- **Secondary entry points**:
|
||||
- `Releases > Activity`
|
||||
- release detail replay actions
|
||||
- `Evidence > Verify & Replay`
|
||||
- workflow editor `Preview DAG` mode
|
||||
|
||||
## E2E Test Plan
|
||||
- **Setup**:
|
||||
- [ ] Log in with a user that can access `Releases`, `Evidence`, and workflow administration.
|
||||
- [ ] Navigate to `/releases/runs/<runId>/graph`.
|
||||
- [ ] Ensure run detail, timeline, replay, and workflow graph fixtures or seeded data exist.
|
||||
- **Core verification**:
|
||||
- [ ] Verify `Summary`, `Graph`, `Timeline`, `Critical Path`, `Replay`, and `Evidence` tabs render in one mounted run shell.
|
||||
- [ ] Verify graph and timeline step selection open the step drawer and preserve `step=<id>` in the URL.
|
||||
- [ ] Verify replay and evidence actions preserve run context and hand off correctly to `Evidence > Verify & Replay`.
|
||||
- **Legacy verification**:
|
||||
- [ ] Verify `workflow-visualization/*` aliases redirect into `/releases/runs/:runId/*`.
|
||||
- [ ] Verify authoring preview renders the graph-only workflow editor mode without runtime replay loading.
|
||||
- [ ] Verify redirect and deep-link behavior tolerate additional context query params.
|
||||
|
||||
## Verification
|
||||
- Run:
|
||||
- `npx ng test --watch=false --include src/tests/release-control/release-control-routes.spec.ts --include src/tests/releases/release-detail.live-refresh.spec.ts --include src/tests/evidence/replay-controls-reachability-handoff.spec.ts --include src/tests/release_orchestrator/visual-workflow-editor.behavior.spec.ts --include src/tests/workflow_visualization/run-graph-replay-page.behavior.spec.ts`
|
||||
- `npx playwright test tests/e2e/workflow-visualization-replay.spec.ts --workers=1`
|
||||
- Tier 0 (source): pass
|
||||
- Tier 1 (build/tests): pass
|
||||
- Tier 2 (behavior): pass
|
||||
- Verified on (UTC): 2026-03-07T21:24:11.4848681Z
|
||||
Reference in New Issue
Block a user