Module 08 Activity
Scenario
The workflow is correct and takes ninety seconds. Everything in this module is about what the person waiting can see.
What you build
A streamed progress experience with human labels, a cancellation path and per-node time budgets.
Steps
- Switch to
streamand emit one event per finished node. Confirm nothing about the graph changed. - Choose the streaming mode per surface: steps for the progress line, tokens only for the final readable node. Say why
valuesis not used. - Write the label map as one dictionary next to the graph, and include the position in the sequence.
- Add a
cancelledflag checked at the top of every node, before any effect. Cancel mid-run and show the state is consistent. - Set a per-node time budget from observed durations and surface runs that exceed it, showing the node, elapsed time and a cancel option.
Evidence to hand in
- The streamed output as a user would see it.
- The mode choice per surface with its reason.
- The label map and a numbered progress sequence.
- A cancelled run's log showing which steps ran and which skipped.
- The per-node budgets with their observed basis, and one over-budget report.
Review checklist
- Node names are not shown to users.
- Every status line carries a position in the sequence.
- The cancellation check is at the top of the node, before any effect.
- Budgets are per node and derived from observations, not one global timeout.
- The over-budget report names the node and offers a cancel.
