Statechart
Use when a flow needs explicit states, events, guards, and invalid transitions.
model this as a statechart with explicit states and transitions.
Exact Terms / Packs / Workflow reliability
Workflow reliability vocabularyUse these terms when your vibe-coded builder loses progress, breaks between steps, retries badly, or strands users after a partial failure. The vocabulary forces an AI agent to reason about transitions, not just screens.
Use when a flow needs explicit states, events, guards, and invalid transitions.
model this as a statechart with explicit states and transitions.
Use when back, next, submit, edit, or retry behavior is ambiguous.
list every current state, event, next state, and rejected event.
Use when each screen needs a clear status: active, blocked, complete, failed, or recoverable.
define step state for every screen before coding the transitions.
Use when users lose progress after refresh, network failure, or returning later.
persist draft state after every meaningful change with safe resume behavior.
Use when UI, server, URL, and saved draft state can disagree.
define reconciliation rules for stale saves, two tabs, URL state, and server state.
Use when users or background jobs need a safe place to resume after failure.
create checkpoints after durable steps so recovery does not replay unsafe side effects.
Use when double-submit or retry can create duplicate side effects.
add idempotency keys so retries cannot duplicate committed work.
Use when the app strands users after a partial failure.
define what the user sees, what is retried, and how they continue.
Use when network, data, or component failures need a useful screen instead of a dead end.
design fallback UI for loading, partial data, API failure, retrying, and manual recovery.
Use when a slow API or hanging request needs a clear limit and next action.
set timeout budgets, then define retry, fallback, and recovery behavior.
Use when rapid clicks, two tabs, stale saves, or out-of-order responses can corrupt state.
handle stale writes and out-of-order responses without overwriting newer state.