// Real world
r14
Optimistic UI
Show success immediately, roll back on failure. The machine carries the optimistic state explicitly, so the rollback path is just another arrow.
Code
const like = sm`
off 'click' → optimistic_on;
optimistic_on 'confirm' → on;
optimistic_on 'rollback' → off;
on 'click' → optimistic_off;
optimistic_off 'confirm' → off;
optimistic_off 'rollback' → on;
`;
Notes
Treat optimistic_* states as in flight in your UI — show a heart icon, but slightly faded. The dual edges out of each one mean rollback can never land you somewhere illegal.