refactor: task running