Навіщо потрібен «крок використання»? Хтось зазначив, що кроки в робочому процесі схожі на «контрольні точки появи» у відеогрі. Хороша аналогія. Цікавим наслідком позначення функції «використовувати робочий процес» є те, що вам заборонено виконувати інші дії введення-виведення, крім кроків. Робочі процеси мають бути вільними від побічних ефектів і детермінованими. Кожен раз, коли ви чекаєте, ця функція має бути кроком. Ці виклики функцій можна розглядати як серіалізовані продовження. Входи і виходи цих функцій фіксуються в журналі. Подумайте про JSON. Якщо у вас є робочий процес з 3 кроків, а останній не вдається, ми повинні бути в змозі «перезапустити» всю функцію і ідеально впоратися зі станом світу. Таким чином, "use step" насправді дуже схожий на "use cache" або "getStaticProps" — функції, які можуть бути екстерналізовані та ізольовані в просторі та часі, працюючи на різних "комп'ютерах".