docs/roveflow/scenarios.md. Each one is a YAML block under a ## <id> heading. You author the flow, a handful of waypoints, and plain-English pass/fail conditions. The agent figures out the taps.
The minimum: cold-setup
Every project has exactly one cold-setup scenario. It runs first, always, and establishes a known home state the rest of the suite can assume. The orchestrator refuses to run if it’s missing or misconfigured.
id: cold-setup,criticality: critical,order: 0,entry: cold-install.- Every other scenario has
entry: home(the warm-chain assumption). - Scenario ids are unique.
criticalityiscriticalorextended— no other values.
Additional scenarios
After cold-setup, add one block per user flow. Each starts from the home screen and ends back at home (the agent runs reset-to-home automatically).Criticality tiers
critical— runs in--mode=critical(the default) and--mode=all. Reserve for flows a release cannot ship without.extended— runs only in--mode=all. Broader coverage for scheduled nightly runs.
Skip results (no exceptions)
An agent may returnresult: skipped instead of pass or fail when the environment blocks the flow. Skipped scenarios surface in the report but do not fail the run.
| Skip reason | What it means |
|---|---|
skipped: no_data | Environmental gap. No slots today, no prior data. Declared by the agent based on the scenario’s fail conditions. |
skipped: setup_failed | cold-setup never reached home. Cascades to every remaining scenario. |
skipped: setup_lost | Mid-run reset_to_home failed. Cascades to remaining scenarios. |
Waypoint format
Waypoints are mid-flight assertions the agent checks as it progresses:steps_hint — when to use it
Short hints help the agent when text alone is ambiguous:
preferred_keys — optional stability
List ValueKey strings the agent should try first when the scenario is fragile. Optional — the default install uses visible text and the semantics tree. See Using ValueKeys for when to reach for them.
Full field reference
| Field | Required | Purpose |
|---|---|---|
id | yes | Stable identifier; matches the ## heading |
criticality | yes | critical or extended |
order | no | Force order (cold-setup uses 0) |
goal | yes | One-sentence outcome the user achieves |
entry | yes | cold-install, home, or a named state |
waypoints | yes | Mid-flight assertions |
steps_hint | no | Free-text hint |
preferred_keys | no | ValueKeys to prefer over text |
pass | yes | Plain-English pass condition |
fail | yes | Plain-English explicit fail signals |
Next
Running smoke tests
Execute the scenarios with
/roveflow.Scenario schema
Every field, with validation rules and skip result semantics.