refactor(media)!: unify processing under asynchronous job workflow #3
Reference in New Issue
Block a user
Delete Branch "refactor/generalize-job-abstraction"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Merge UploadService, EditService, JobOrchestrationService, and DownloadService into a single MediaService with a unified Job lifecycle (READY → PROCESSING → SUCCEEDED/FAILED via JobState enum). - Add MediaController (/api/v1/media) exposing compress, save, and clip - Add JobController (/api/v1/job) for status polling and file download - Move clip/thumbnail download into ClipController (/{id}/media, /{id}/thumbnail) - Move stream saveSection/clip from StreamService into MediaService - Simplify Job DTO: remove dual ClipOptions/files, add ProgressTracker and download file - Refactor JobRegistryService.add() → generateJob() to co-locate creation and registration - Wire FFmpeg out_time_ms progress parsing into StreamActionsService via CommandRunner - Rename GET /api/v1/auth/user → GET /api/v1/user/me - Delete DownloadController, MetadataController, UploadControllerWIP: Refactor job into being a simple UUID trackerto Refactor job into being a simple UUID trackerRefactor job into being a simple UUID trackerto refactor(jobs): simplify job architecturerefactor(jobs): simplify job architectureto refactor(media)!: unify processing under asynchronous job workflow