feat: add workflow console lifecycle explorer
This commit is contained in:
@@ -64,6 +64,21 @@ The browser communicates with Hono at `/api/connect` and `/api/rpc`. Hono
|
||||
validates targets against loopback policy, executes typed JSON-RPC calls
|
||||
through Effect, and returns plain JSON DTOs to the browser.
|
||||
|
||||
## Lifecycle Explorer
|
||||
|
||||
After connecting, the console displays the lifecycle explorer with three
|
||||
columns: artifacts, deployments, and runs. Selecting a record loads its detail
|
||||
view.
|
||||
|
||||
- **Artifacts**: list and inspect workflow artifacts with plan graph visualization
|
||||
- **Deployments**: list and inspect deployments with validation status
|
||||
- **Runs**: list and inspect runs with interrupt details, trace frames, and
|
||||
execution timeline
|
||||
- **Graph**: `@xyflow/react` DAG visualization of the artifact plan, powered by
|
||||
`@dagrejs/dagre` layout
|
||||
- **Evidence**: raw JSON-RPC request/response evidence with equivalent CLI text
|
||||
- **Pagination**: Load more for artifact and run lists when cursors are available
|
||||
|
||||
## Security
|
||||
|
||||
- Only loopback targets are accepted (`127.0.0.1`, `localhost`, `[::1]`)
|
||||
@@ -84,3 +99,21 @@ With the Python server running, verify in the browser:
|
||||
6. `http://example.com:8765/rpc` is rejected without upstream fetch
|
||||
7. Stopping the Python server produces the unreachable state while preserving
|
||||
the entered URL
|
||||
8. Artifact, deployment, and run lists populate in the lifecycle explorer
|
||||
9. Selecting an artifact shows its plan graph and detail panel
|
||||
10. Selecting a run shows trace frames and interrupt details
|
||||
11. Clicking a trace frame shows resolved input and output
|
||||
|
||||
### LDA Report Workflow Smoke
|
||||
|
||||
```powershell
|
||||
# Terminal 1: start the workflow server with the report example
|
||||
uv run wf-rpc-server --config examples/lda_report_workflow/wf.config.json --host 127.0.0.1 --port 8765
|
||||
|
||||
# Terminal 2: start the console dev server
|
||||
pnpm --dir web dev
|
||||
```
|
||||
|
||||
Connect to `http://127.0.0.1:8765/rpc`. The smoke passes when artifact list,
|
||||
deployment list, run list, graph visualization, trace frames, and raw evidence
|
||||
are all visible.
|
||||
|
||||
Reference in New Issue
Block a user