refactor(task): extract billing and polling logic from controller to service layer
Restructure the task relay system for better separation of concerns: - Extract task billing into service/task_billing.go with unified settlement flow - Move task polling loop from controller to service/task_polling.go (supports Suno + video platforms) - Split RelayTask into fetch/submit paths with dedicated retry logic (taskSubmitWithRetry) - Add TaskDto, TaskResponse generics, and FetchReq to dto/task.go - Add taskcommon/helpers.go for shared task adaptor utilities - Remove controller/task_video.go (logic consolidated into service layer) - Update all task adaptors (ali, doubao, gemini, hailuo, jimeng, kling, sora, suno, vertex, vidu) - Simplify frontend task logs to use new TaskDto response format
Showing
controller/task_video.go
deleted
100644 → 0
This diff is collapsed.
Click to expand it.
relay/channel/task/taskcommon/helpers.go
0 → 100644
This diff is collapsed.
Click to expand it.
service/task_billing.go
0 → 100644
service/task_polling.go
0 → 100644
This diff is collapsed.
Click to expand it.