marvin.run when you only need the result. Create a Task when you need to inspect state or declare dependencies.
Dependencies
run_tasks returns the task objects. run_tasks_async and Task.run_async are available for async code.
Failures
By default, a failed task raises an error. Passraise_on_failure=False to inspect the outcome yourself:
task.state, not task.status. Use is_pending, is_running, is_successful, is_failed, is_skipped, and is_complete rather than comparing strings.
See task results for result types and custom validation.