796aeff499
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 166h12m36s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 166h12m41s
Deploy / Deploy Staging (push) Failing after 166h15m4s
CI/CD Pipeline / Frontend Lint (push) Failing after 166h15m32s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 166h15m39s
P2-1: workflow.py start_clone() 将 mark_processing() 移到音频 URL 检查之后,
无 URL 时保持 pending 状态,避免永久卡在 processing
P2-2: voice_clone.py Celery 任务改用 VoiceCloneWorkflowService 公开方法
(process_clone_result/process_clone_failure),不再直接操作 profile
P2-3: voice_clones.py 路由中 Celery .delay() 失败时调用
process_clone_failure() 标记 profile 为 failed(create + retry 两个路由)
P2-4: 由 P2-2 修复自动解决
同步更新 test_voice_clone_workflow.py 测试用例适配 P2-1 行为变更
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>