feat(ui): ship workflow visualization replay workspace

This commit is contained in:
master
2026-03-07 23:25:13 +02:00
parent e11c0a6b59
commit c568e09a1d
26 changed files with 2891 additions and 93 deletions

View File

@@ -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