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
|
||||
@@ -1,129 +0,0 @@
|
||||
# Sprint 20260307-028 - Workflow Visualization Replay
|
||||
|
||||
## Topic & Scope
|
||||
- Restore workflow graphing, timeline, critical-path, and replay UX as a run-detail capability under `Releases > Runs`, with a secondary entry point from `Evidence > Verify & Replay`.
|
||||
- Ship fully usable runtime graphing, timeline, critical-path, replay, and evidence views from the active run-detail experience.
|
||||
- Complete the missing functionality end to end so operators can inspect run structure, drill into steps, replay evidence, and use legacy links without falling back to dead routes.
|
||||
- Working directory: `src/Web/StellaOps.Web/src/app/features/workflow-visualization`.
|
||||
- Allowed coordination edits: `src/Web/StellaOps.Web/src/app/routes/releases.routes.ts`, `src/Web/StellaOps.Web/src/app/routes/evidence.routes.ts`, `src/Web/StellaOps.Web/src/app/features/release-orchestrator/`, `docs/modules/ui/workflow-visualization-replay`, and `docs/modules/ui/TASKS.md`.
|
||||
- Expected evidence: working run-detail tabs, working step drawer and replay flows, evidence-side entry points, working legacy redirects, tests, and updated docs.
|
||||
|
||||
## Dependencies & Concurrency
|
||||
- Depends on:
|
||||
- `docs/modules/ui/workflow-visualization-replay/README.md`
|
||||
- `docs/modules/release-orchestrator/ui/overview.md`
|
||||
- `docs/modules/release-orchestrator/workflow/evidence-based-release-gates.md`
|
||||
- `src/Web/StellaOps.Web/src/app/routes/releases.routes.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/routes/evidence.routes.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/workflow-visualization/workflow-visualization.routes.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/workflow-visualization/components/workflow-visualizer/workflow-visualizer.component.ts`
|
||||
- Safe parallelism:
|
||||
- tab and route contract work should freeze before FE implementation begins
|
||||
- graph/timeline and replay/evidence work can proceed in parallel after the contract is stable
|
||||
- workflow-editor preview work can proceed in parallel with runtime integration once reuse boundaries are frozen
|
||||
|
||||
## Documentation Prerequisites
|
||||
- `docs/modules/ui/workflow-visualization-replay/README.md`
|
||||
- `docs/modules/ui/contextual-actions-patterns/README.md`
|
||||
- `docs/modules/ui/restoration-topics/workflow-visualization-and-replay.md`
|
||||
- `docs/modules/ui/component-preservation-map/RESTORATION_PRIORITIES.md`
|
||||
|
||||
## Delivery Tracker
|
||||
|
||||
### FE-WV-001 - Wire run-detail tabs into Releases and Evidence
|
||||
Status: TODO
|
||||
Dependency: none
|
||||
Owners: Product Manager, FE Architect
|
||||
Task description:
|
||||
- Implement the run-detail tab family under `Releases > Runs` and the shared replay entry point from `Evidence > Verify & Replay`.
|
||||
- Ensure operators can reach the graph and replay experience from the active shells.
|
||||
|
||||
Completion criteria:
|
||||
- [ ] Canonical run-detail tabs are active in the router.
|
||||
- [ ] Runtime graph and replay routes are mounted and reachable.
|
||||
- [ ] Evidence-side entry points open the working runtime context.
|
||||
|
||||
### FE-WV-002 - Ship the Graph, Timeline, and Critical Path tabs
|
||||
Status: TODO
|
||||
Dependency: FE-WV-001
|
||||
Owners: Developer, FE Architect
|
||||
Task description:
|
||||
- Implement the runtime graph, timeline, and critical-path experiences with filters, node status, and drill-in behavior.
|
||||
- Ensure these tabs are usable for real run diagnosis, not just visual placeholders.
|
||||
|
||||
Completion criteria:
|
||||
- [ ] Graph, timeline, and critical-path tabs render with working filters and node metadata.
|
||||
- [ ] Operators can diagnose run state from the shipped tabs.
|
||||
- [ ] Step selection opens the working detail drawer.
|
||||
|
||||
### FE-WV-003 - Ship Replay and Evidence integration
|
||||
Status: TODO
|
||||
Dependency: FE-WV-001
|
||||
Owners: Developer, Product Manager
|
||||
Task description:
|
||||
- Implement the `Replay` tab with replay status, input hashes, drift comparison, and evidence links.
|
||||
- Integrate the existing evidence replay controls and proof replay surfaces into the active run-detail shell.
|
||||
|
||||
Completion criteria:
|
||||
- [ ] Replay tab works from the active run-detail shell.
|
||||
- [ ] Existing evidence replay controls are usable from the new tab model.
|
||||
- [ ] Evidence and Replay tabs both expose their intended workflows in the shipped UI.
|
||||
|
||||
### FE-WV-004 - Ship step-detail drill-in and deep-link behavior
|
||||
Status: TODO
|
||||
Dependency: FE-WV-002
|
||||
Owners: Developer, FE Architect
|
||||
Task description:
|
||||
- Implement the step-detail drawer, its fields, actions, and `step=<id>` deep-link behavior.
|
||||
- Ensure failed-step drill-ins work from graph and timeline views without losing run context.
|
||||
|
||||
Completion criteria:
|
||||
- [ ] Step-detail drawer works from graph and timeline tabs.
|
||||
- [ ] `step=<id>` deep-link behavior is usable and shareable.
|
||||
- [ ] Any required full-route escalation is implemented only where necessary.
|
||||
|
||||
### FE-WV-005 - Implement bounded workflow-editor preview reuse
|
||||
Status: TODO
|
||||
Dependency: FE-WV-001
|
||||
Owners: FE Architect, Developer
|
||||
Task description:
|
||||
- Implement the graph-only preview mode workflow editor can reuse without importing runtime replay semantics.
|
||||
- Keep authoring preview clearly separate from live run telemetry and troubleshooting.
|
||||
|
||||
Completion criteria:
|
||||
- [ ] Workflow editor can render the bounded preview mode.
|
||||
- [ ] Runtime-only behaviors are excluded from preview.
|
||||
- [ ] Shared and runtime-only graph components are separated in the shipped implementation.
|
||||
|
||||
### FE-WV-006 - Verify, redirect, and document the shipped capability
|
||||
Status: TODO
|
||||
Dependency: FE-WV-003
|
||||
Owners: QA, Documentation author
|
||||
Task description:
|
||||
- Add Playwright scenarios for run-detail tabs, step drawer behavior, evidence entry points, and legacy alias redirects.
|
||||
- Update release and evidence docs so workflow visualization and replay ship as a usable capability, not just a merge target.
|
||||
|
||||
Completion criteria:
|
||||
- [ ] Verification covers graph, timeline, replay, and evidence tabs.
|
||||
- [ ] Step deep links and alias redirects are included in testing.
|
||||
- [ ] Docs reflect the shipped run-detail and replay capability.
|
||||
|
||||
## Execution Log
|
||||
| Date (UTC) | Update | Owner |
|
||||
| --- | --- | --- |
|
||||
| 2026-03-07 | Sprint created to ship workflow graphing and replay as a run-detail capability under Releases, with evidence-side entry points and a bounded authoring preview reuse model. | Project Manager |
|
||||
|
||||
## Decisions & Risks
|
||||
- Decision: runtime workflow visualization is owned by `Releases > Runs`, not by a standalone product.
|
||||
- Decision: `Evidence > Verify & Replay` becomes a secondary entry point into the same replay model.
|
||||
- Risk: runtime and authoring semantics may get mixed in one component tree and confuse operators.
|
||||
- Mitigation: freeze a strict preview versus runtime boundary before implementation begins.
|
||||
- Risk: replay controls already living in evidence routes may diverge from the run-detail experience.
|
||||
- Mitigation: require one shared route and tab model for replay semantics.
|
||||
- Delivery rule: this sprint is only complete when release operators can use the mounted graph, timeline, replay, and evidence flows without depending on the dead workflow-visualization branch.
|
||||
- Reference design note: `docs/modules/ui/workflow-visualization-replay/README.md`.
|
||||
|
||||
## Next Checkpoints
|
||||
- 2026-03-08: confirm runtime ownership, tab model, and evidence entry-point rules.
|
||||
- 2026-03-09: freeze graph/timeline/replay slices and step-drawer contract.
|
||||
- 2026-03-10: finalize authoring preview boundary, alias migration, and QA contract.
|
||||
@@ -9,7 +9,6 @@
|
||||
- `docs/implplan/SPRINT_20260307_009_DOCS_ui_component_preservation_map.md`
|
||||
- `docs/implplan/SPRINT_20260307_022_FE_policy_vex_release_decisioning_studio.md`
|
||||
- `docs/implplan/SPRINT_20260307_023_DOCS_ui_restoration_topic_shapes.md`
|
||||
- `docs/implplan/SPRINT_20260307_028_FE_workflow_visualization_replay.md`
|
||||
- `docs/implplan/SPRINT_20260307_029_FE_contextual_actions_and_stray_surfaces.md`
|
||||
|
||||
## Delivery Tasks
|
||||
@@ -92,12 +91,12 @@
|
||||
- [DONE] FE-TX-004 Audit bundles page and create-flow slice
|
||||
- [DONE] FE-TX-005 Supporting component merge matrix for Triage explainability
|
||||
- [DONE] FE-TX-006 QA, rollout, and docs sync for Triage explainability
|
||||
- [TODO] FE-WV-001 Freeze run-detail tab and route contract for workflow visualization
|
||||
- [TODO] FE-WV-002 Graph, timeline, and critical-path slice
|
||||
- [TODO] FE-WV-003 Replay and evidence integration slice
|
||||
- [TODO] FE-WV-004 Step-detail drawer and deep-link behavior
|
||||
- [TODO] FE-WV-005 Workflow-editor preview reuse boundary
|
||||
- [TODO] FE-WV-006 QA, rollout, alias migration, and docs sync for workflow visualization
|
||||
- [DONE] FE-WV-001 Freeze run-detail tab and route contract for workflow visualization
|
||||
- [DONE] FE-WV-002 Graph, timeline, and critical-path slice
|
||||
- [DONE] FE-WV-003 Replay and evidence integration slice
|
||||
- [DONE] FE-WV-004 Step-detail drawer and deep-link behavior
|
||||
- [DONE] FE-WV-005 Workflow-editor preview reuse boundary
|
||||
- [DONE] FE-WV-006 QA, rollout, alias migration, and docs sync for workflow visualization
|
||||
- [TODO] FE-CA-001 Freeze contextual placement decision matrix and route-state contract
|
||||
- [TODO] FE-CA-002 Shared contextual drawer host
|
||||
- [TODO] FE-CA-003 Split list-detail and right-rail primitives
|
||||
|
||||
@@ -93,7 +93,8 @@ The order is by confidence that the capability should exist in the final Stella
|
||||
- `/releases/runs`, `/evidence`, and release-context views
|
||||
- Notes:
|
||||
- Detailed UX dossier: `docs/modules/ui/workflow-visualization-replay/README.md`
|
||||
- Implementation sprint: `docs/implplan/SPRINT_20260307_028_FE_workflow_visualization_replay.md`
|
||||
- Implementation sprint: `docs-archived/implplan/SPRINT_20260307_028_FE_workflow_visualization_replay.md`
|
||||
- Shipped verification note: `docs/features/checked/web/workflow-visualization-replay-ui.md`
|
||||
|
||||
## Tier 2 - Surface Existing Capability Instead Of Rebuilding
|
||||
|
||||
|
||||
@@ -13,7 +13,6 @@ Provide a living plan for UI deliverables, dependencies, and evidence.
|
||||
- `SPRINT_20260307_009_DOCS_ui_component_preservation_map.md` - per-component preservation dossiers for unused and weakly surfaced console UI components.
|
||||
- `SPRINT_20260307_022_FE_policy_vex_release_decisioning_studio.md` - canonical Decisioning Studio shell to unify policy, simulation, VEX decisioning, and release-context gate explanation.
|
||||
- `SPRINT_20260307_023_DOCS_ui_restoration_topic_shapes.md` - documentation prerequisite for shell/menu/tab placements; not a product-delivery sprint by itself.
|
||||
- `SPRINT_20260307_028_FE_workflow_visualization_replay.md` - ship run-detail graph, timeline, replay, and evidence tabs plus bounded workflow-editor preview reuse.
|
||||
- `SPRINT_20260307_029_FE_contextual_actions_and_stray_surfaces.md` - ship the shared tabs, drawers, right rails, split views, and contextual detail primitives adopted by the restoration features.
|
||||
|
||||
## Latest evidence
|
||||
@@ -27,6 +26,7 @@ Provide a living plan for UI deliverables, dependencies, and evidence.
|
||||
- `docs/features/checked/web/identity-watchlist-management-ui.md` - shipped verification note for the Trust & Signing watchlist shell and its Mission Control / Notifications handoffs.
|
||||
- `docs/features/checked/web/operations-consolidation-ui.md` - shipped verification note for the canonical Operations shell, overview grouping, and legacy alias cutover.
|
||||
- `docs/features/checked/web/triage-explainability-workspace-ui.md` - shipped verification note for the canonical triage artifact workspace, explainability rail, audit bundles, and security alias cutover.
|
||||
- `docs/features/checked/web/workflow-visualization-replay-ui.md` - shipped verification note for the canonical run-detail graph, timeline, replay, evidence tabs, and workflow-editor preview reuse boundary.
|
||||
- `docs/modules/ui/reachability-witnessing/README.md` - detailed witness and proof UX dossier plus cross-shell deep-link contract.
|
||||
- `docs/modules/ui/platform-ops-consolidation/README.md` - detailed Operations overview taxonomy and legacy absorption plan.
|
||||
- `docs/modules/ui/triage-explainability-workspace/README.md` - detailed artifact workspace and audit-bundle UX dossier.
|
||||
|
||||
@@ -31,7 +31,7 @@ It answers four questions for each topic:
|
||||
- `docs/implplan/SPRINT_20260307_025_FE_reachability_witnessing_merge.md`
|
||||
- `docs/implplan/SPRINT_20260307_026_FE_platform_ops_consolidation.md`
|
||||
- `docs/implplan/SPRINT_20260307_027_FE_triage_explainability_workspace.md`
|
||||
- `docs/implplan/SPRINT_20260307_028_FE_workflow_visualization_replay.md`
|
||||
- `docs-archived/implplan/SPRINT_20260307_028_FE_workflow_visualization_replay.md` - shipped workflow visualization and replay restoration
|
||||
- `docs/implplan/SPRINT_20260307_029_FE_contextual_actions_and_stray_surfaces.md`
|
||||
|
||||
## Placement Matrix
|
||||
|
||||
@@ -96,7 +96,8 @@ The graph/timeline/critical-path experiences should be facets of the same run de
|
||||
## Detailed UX And Sprint
|
||||
|
||||
- Detailed UX dossier: `../workflow-visualization-replay/README.md`
|
||||
- Implementation sprint: `../../../implplan/SPRINT_20260307_028_FE_workflow_visualization_replay.md`
|
||||
- Implementation sprint: `../../../docs-archived/implplan/SPRINT_20260307_028_FE_workflow_visualization_replay.md`
|
||||
- Shipped verification note: `../../../features/checked/web/workflow-visualization-replay-ui.md`
|
||||
|
||||
## Corroborating Inputs
|
||||
|
||||
|
||||
@@ -10,6 +10,15 @@ Restore workflow graphing, time-travel, and replay as a run-detail capability un
|
||||
|
||||
This capability should help operators understand what happened in a release run, why a run failed or slowed, and how evidence or replay confirms the outcome.
|
||||
|
||||
## Shipped Outcome
|
||||
|
||||
- The canonical runtime workspace now ships under `/releases/runs/:runId/{summary|graph|timeline|critical-path|replay|evidence}`.
|
||||
- `Releases > Activity` and release detail flows deep-link into the mounted run workspace instead of the dead prototype route family.
|
||||
- `Evidence > Verify & Replay` can open the same run context, and replay controls can return operators into the canonical run workspace.
|
||||
- Legacy `workflow-visualization/:runId/*` URLs now redirect into the canonical run workspace.
|
||||
- Workflow editor preview reuse is bounded to graph preview mode and does not load runtime replay semantics.
|
||||
- Verification evidence is captured in `docs/features/checked/web/workflow-visualization-replay-ui.md`.
|
||||
|
||||
## Why This Is The Right Shape
|
||||
|
||||
- The abandoned visualizer models runtime concepts such as graph state, auto-refresh, step detail, critical path, and time travel.
|
||||
|
||||
Reference in New Issue
Block a user