This should be the kind of the feature you're using a job-manager for -- to be able to think about your job from a higher level and leave some lower-level details (like keeping track of the status of a bunch of sub-tasks) to the orchestrator
(a) Make sure your flow is retry-able by having task state cached for things that do not need to be re-executed when you retry your flow
(b) Just retry your flow and the failed task will be re-executed, while tasks with cached results will be loaded from the cache.
If this is not what you want, instead of using a task, you could make a sub-flow. You can then run just that flow separately.
There are lot more ways to manage tasks in prefect 3 if you have upgraded - callbacks for rollback, for example, if you want to handle a task failure programmatically vs in the UI. If your task is skippable then you can manage state so that the failed task does not fail your flow.