What
Add optional timeout mechanism for task execution to prevent tasks from hanging indefinitely.
Goal
Users can configure a maximum execution time for tasks. If a task exceeds this time, it should be terminated and raise a timeout error. This prevents hung tasks from blocking dependent tasks and the entire execution flow.
Approach
- Add opt-in timeout configuration at the task class level or via run options
- No default timeout to maintain current behavior
- Consider timeout scope (run only vs. run + clean)
- Handle cleanup appropriately when a task times out
- Define clear timeout error type for user handling
What
Add optional timeout mechanism for task execution to prevent tasks from hanging indefinitely.
Goal
Users can configure a maximum execution time for tasks. If a task exceeds this time, it should be terminated and raise a timeout error. This prevents hung tasks from blocking dependent tasks and the entire execution flow.
Approach