75ec9db439
- ai_client/dashscope_client 新增 last_video_error 字段,记录每次失败的 error_code/user_message/status_code/detail/model 等结构化信息 - 新增 _classify_video_error 错误分类器,自动识别: - 真人肖像拦截 (portrait_intercept) → 提示用户移除真人图片 - 鉴权失败 (auth_error) / 配额不足 (quota_exceeded) / 限流 (rate_limit) - 模型/Endpoint 不存在 (model_not_found) / 参数错误 (invalid_param) - 网络超时 (network_error) / 任务失败 (task_failed) / 未知 (unknown) - call_video_generation 失败时通过 get_last_video_error() 暴露详细错误 - worker _step_render 不再笼统抛"返回为空",改为读取错误详情并展示具体用户提示 - 增强日志:完整 payload 打印(截断 prompt)、轮询 HTTP 错误记录完整 body、 下载/超时时记录具体失败原因 - 修复重试策略:4xx 错误不再重试(参数/鉴权错误重试无意义),仅 5xx/网络错误重试 - DashScope 客户端同样增加 last_video_error 和错误分类,保持语义一致 - 新增单测覆盖:400真人拦截、401鉴权失败、轮询failed、ai_service错误透传、dashscope 401