6f4bf2e020
- JobType enum: 3 tests - JobStatus enum: 2 tests - TERMINAL_STATUSES: 5 tests - Job.create: 17 tests (validation + string enum + fields) - is_terminal / is_retryable: 12 tests - transition_to (state machine): 16 tests (all valid + invalid transitions) - mark_running / mark_success / mark_failed / mark_cancelled: 8 tests - update_progress: 9 tests - prepare_retry: 4 tests - to_dict serialization: 3 tests Total: 76 unit tests for job.py (289 lines)