[refactor] tasks with state_macine
work on task (1)