dagops: some restart logic. you need asset-based pipelines (like in dagster or makefile) instead of task-runs-based.
probably you need to add is_done_command/exists_command argument to TaskInfo. which is also runs using subprocess. Also add status CACHE_CHECKING, CACHE_EXISTS, CACHE_NOT_EXISTS, CACHE_CHECK_FAILED
differentiate between asset and task. A task should yield assets.