refactor(media)!: unify processing under asynchronous job workflow #3

Merged
dylan merged 14 commits from refactor/generalize-job-abstraction into master 2026-06-25 20:26:09 +01:00
Owner
No description provided.
dylan added 2 commits 2026-06-22 18:33:36 +01:00
dylan added 1 commit 2026-06-22 20:54:19 +01:00
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, UploadController
dylan added 1 commit 2026-06-22 22:08:59 +01:00
dylan added 1 commit 2026-06-22 22:09:12 +01:00
dylan added 1 commit 2026-06-22 22:10:35 +01:00
dylan added 1 commit 2026-06-22 22:34:21 +01:00
dylan added 1 commit 2026-06-22 22:42:16 +01:00
dylan added 1 commit 2026-06-22 22:50:12 +01:00
dylan added 1 commit 2026-06-23 20:53:29 +01:00
dylan added 1 commit 2026-06-23 21:31:48 +01:00
dylan added 1 commit 2026-06-23 21:39:56 +01:00
dylan added 1 commit 2026-06-25 20:21:52 +01:00
dylan added 1 commit 2026-06-25 20:22:47 +01:00
20:22
Scoped the bare video entry in the root .gitignore to its intended path. Tailwind V4 respects all .gitignore files in the project when scanning for utility classes, so the bare entry was silently preventing components/video/* from being scanned and its classes from appearing in the computed CSS output. The bug was absent in Docker as the root .gitignore was never copied into the container.
dylan changed title from WIP: Refactor job into being a simple UUID tracker to Refactor job into being a simple UUID tracker 2026-06-25 20:26:04 +01:00
dylan merged commit 5e00965baa into master 2026-06-25 20:26:09 +01:00
dylan deleted branch refactor/generalize-job-abstraction 2026-06-25 20:26:09 +01:00
dylan changed title from Refactor job into being a simple UUID tracker to refactor(jobs): simplify job architecture 2026-07-22 14:40:36 +01:00
dylan changed title from refactor(jobs): simplify job architecture to refactor(media)!: unify processing under asynchronous job workflow 2026-07-22 14:42:43 +01:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dylan/vod-system#3