33510b8dbf0b36ae1c19c80a69c4d471705e1dfd
9 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
1b76821307 |
style: auto-format with black + isort + ruff + prettier [skip ci-format-check]
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 1s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 3s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 29s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 30s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 1m6s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m14s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 1m35s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 1m41s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m52s
CI/CD Pipeline / Unit Tests (pull_request) Failing after 6m24s
AI Code Review / AI Code Review (pull_request) Successful in 6m29s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 7m39s
CI/CD Pipeline / CI Gate (pull_request) Failing after 4s
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 4m58s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 120h48m47s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 120h56m27s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 120h56m32s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 120h56m20s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 120h56m11s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 120h56m13s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 120h56m17s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 120h56m17s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 120h56m18s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 120h48m31s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 120h48m31s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 120h56m3s
CI/CD Pipeline / Canary Release to Production (pull_request) Failing after 120h48m28s
CI/CD Pipeline / Deploy Production (pull_request) Failing after 120h48m28s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 120h56m4s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 120h56m8s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 120h56m11s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 120h56m11s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 121h31m19s
|
||
|
|
2c76d55d2b |
fix(ai-avatar, P0): FFmpeg命令改为subprocess list形式修复32512 + Celery异常raise + 投递失败写DB + 封面drawtext标题 + TTS audio/x-wav白名单
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 1s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 2s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 29s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 28s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 1m19s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m29s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 1m47s
CI/CD Pipeline / Validate - Style (pull_request) Has been cancelled
CI/CD Pipeline / Validate - Security (pull_request) Has been cancelled
CI/CD Pipeline / Unit Tests (pull_request) Has been cancelled
CI/CD Pipeline / Build Production API Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Web Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been cancelled
CI/CD Pipeline / Deploy Production (pull_request) Has been cancelled
CI/CD Pipeline / Production Browser E2E (pull_request) Has been cancelled
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / CI Gate (pull_request) Has been cancelled
AI Code Review / AI Code Review (pull_request) Has been cancelled
PR Automation / Auto Approve on CI Green (pull_request) Has been cancelled
PR Automation / Auto Merge on CI Green + Approved (pull_request) Has been cancelled
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 120h58m53s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 120h58m55s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 120h58m57s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 120h58m39s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 120h58m40s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 120h58m41s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 120h58m41s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 120h58m41s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 120h58m42s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 120h58m47s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 120h58m35s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 120h58m43s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 120h58m35s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 120h58m43s
P0: - ai_avatar_render_service._build_ffmpeg_command返回list, subprocess.run(shell=False) 修复OSS预签名URL含&被sh解释为命令分隔符导致exit 127(32512) - cover_extract命令同步改为list+subprocess.run, 超时60s, 非致命失败 - execute_render两个except块末尾加raise, 确保Celery标记任务FAILURE而非SUCCESS - ffmpeg stderr写入error_message末尾800字符, 前端可见具体错误 - routes两处delay()异常: job.status=failed + error_message='任务提交失败:...' + db.commit - lipsync_tts.safe_download_bytes白名单补audio/x-wav(CosyVoice可能返回该MIME) P1: - ai_avatar_cover_service新增apply_title_to_cover: ffmpeg drawtext叠加标题 竖屏封面720x1280, 失败回退无标题原始帧 - generate_smart_cover/persist_cover_to_oss新增title_config参数 - SmartCoverRequest schema新增可选title_config字段 - smart-cover接口透传body.title_config; execute_render管线透传job.title_config 仅修改5个后端文件, 不改其他功能. |
||
|
|
bcaf1d967a | style: auto-format with black + isort + prettier [skip ci-format-check] | ||
|
|
dc12c62190 |
feat(ai-avatar): 渲染完成后自动保存成片记录到成片库
- 在 execute_render 方法的 job.status=completed 之后,自动创建 GeneratedVideo 记录 - 复用现有 GeneratedVideo 模型和 SQLAlchemyGeneratedVideoRepository - 成片记录包含:视频URL、封面URL、时长、用户ID、项目ID - 生成参数中记录来源(render_job_id)以便追溯 - 创建失败时仅打 warning 日志,不影响渲染任务状态 |
||
|
|
7adcf28b76 |
style: auto-format with black + isort + prettier [skip ci-format-check]
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 2s
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 2s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 42s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 41s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 43s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 1m41s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 1m53s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Successful in 1m56s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 2m56s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m59s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 2m57s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 4m8s
CI/CD Pipeline / Unit Tests (pull_request) Failing after 6m27s
AI Code Review / AI Code Review (pull_request) Successful in 6m40s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 10m35s
CI/CD Pipeline / Validate - Security (pull_request) Has been cancelled
CI/CD Pipeline / Build Production API Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Web Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been cancelled
CI/CD Pipeline / Deploy Production (pull_request) Has been cancelled
CI/CD Pipeline / Production Browser E2E (pull_request) Has been cancelled
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / CI Gate (pull_request) Has been cancelled
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 163h11m20s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 163h11m20s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 163h11m25s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 163h11m30s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 163h11m31s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 163h12m30s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 163h12m33s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 163h12m31s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 163h46m7s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 163h46m17s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 163h47m18s
|
||
|
|
4d09bd630e |
fix(ai-avatar): 契约文档标题字段纠正 + script_id 改为可选
- 文档 §5/§6:标题是单个 title_config dict(非 titles[] 数组),字段以 build_title_drawtext_filter() 为准:text/content、font_size/size、 font_color/color、position(top/center/bottom/custom)、pos_x/pos_y、bold、 stroke、shadow、enabled;删除不存在的 titles[]/fontSize/frame/start/end 描述 - script_id 改为可选:手动输入文案/TTS 直生场景不关联文案库条目,留空不校验, 避免手动文案用户被 ScriptNotFound 卡住;选了文案库时仍做归属校验 - 迁移 074:ai_avatar_render_jobs.script_id 默认空串 - 新增 schema 单测(script_id 空/空白/title_config 单 dict),94 测试全绿 Refs #1797 #1826 |
||
|
|
a27ed596b4 |
feat(ai-avatar): TTS直生对口型 + 语速/情绪透传 + MediaKit智能封面 + 契约文档
- 对口型支持 TTS 直生模式:POST /lipsync/jobs 传 voice_id+script_text(+speed/emotion), 后端内部调 CosyVoice 合成音频→转存OSS→提交 MediaKit;保留 audio_url 直接音频模式 - cosyvoice_service: 新增 emotion 参数 + normalize_emotion(中文 自然/兴奋/沉稳/亲切 映射 natural/excited/calm/friendly),空值不透传 - TTS 链路 speed/emotion 全链路透传:schema→use_case(metadata)→workflow(单段/分段/重合成) →submit_synthesize_task(rate/emotion);preview 即时试听同步 - lipsync refresh: 中间状态(running/processing)同步DB;completed 输出视频转存自家OSS防过期 - 修复 lipsync/ai-avatar 路由 current_user.id → current_user.user.id(AuthenticatedUser 无 .id) - 新增 POST /ai-avatar/render/smart-cover 独立封面接口:复用 MediaKit extract_frames + cover_frame_scorer 评分选最佳帧(非 FFmpeg 首帧),渲染管线封面同样优先智能选帧 - 迁移 073: lipsync_jobs 增加 voice_id/script_text/speed/emotion 列,audio_url 改可空 - docs/ai-avatar-api-contract-1822.md: 前后端接口契约 + title_config 字段清单 - 新增 11 个单测(情绪归一化/payload透传/TTS直生/中间状态/智能封面),相关 82 测试全绿 Refs #1797 #1822 |
||
|
|
a0ca13d463 |
fix: AI数字人渲染 OSS 上传集成 SharedStorageService (#1804)
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (push) Successful in 1s
CI/CD Pipeline / Check push changed paths (push) Successful in 2s
CI/CD Pipeline / Build Staging API Image (push) Successful in 39s
CI/CD Pipeline / Build Staging Worker Image (push) Successful in 41s
CI/CD Pipeline / Build Staging Web Image (push) Successful in 58s
CI/CD Pipeline / Integration Tests (push) Successful in 2m24s
CI/CD Pipeline / Validate - Style (push) Successful in 2m40s
CI/CD Pipeline / Validate - Python (mypy + alembic) (push) Successful in 4m19s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (push) Successful in 2m23s
CI/CD Pipeline / Frontend Unit Tests (push) Successful in 6m7s
CI/CD Pipeline / ACR Image Cleanup (push) Successful in 1m23s
CI/CD Pipeline / Staging E2E Tests (push) Failing after 2m1s
CI/CD Pipeline / Staging API Integration Tests (push) Successful in 3m11s
CI/CD Pipeline / Unit Tests (push) Successful in 8m39s
CI/CD Pipeline / Validate - Security (push) Successful in 22m54s
CI/CD Pipeline / Production Browser E2E (push) Has been skipped
CI/CD Pipeline / Canary Release to Production (push) Failing after 185h41m26s
CI/CD Pipeline / Deploy Production (push) Failing after 185h41m26s
CI/CD Pipeline / CI Gate (push) Failing after 185h41m30s
CI/CD Pipeline / Build Production Web Image (push) Failing after 185h41m30s
CI/CD Pipeline / Build Production API Image (push) Failing after 185h41m30s
CI/CD Pipeline / Retag skipped Staging Worker Image (push) Failing after 186h2m2s
CI/CD Pipeline / Retag skipped Staging Web Image (push) Failing after 186h2m2s
CI/CD Pipeline / PR Build Worker Image (push) Failing after 186h4m20s
CI/CD Pipeline / Frontend Lint (push) Failing after 186h4m22s
CI/CD Pipeline / Check if frontend-only change (push) Failing after 186h4m26s
CI/CD Pipeline / Build Production Worker Image (push) Failing after 186h16m15s
CI/CD Pipeline / PR Build Web Image (push) Failing after 186h39m6s
CI/CD Pipeline / Retag skipped Staging API Image (push) Failing after 186h36m52s
CI/CD Pipeline / PR Build API Image (push) Failing after 186h39m6s
|
||
|
|
800f90d8c6 |
feat: #1798 AI数字人渲染合成管线 (#1802)
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (push) Successful in 2s
CI/CD Pipeline / Check push changed paths (push) Successful in 4s
CI/CD Pipeline / Build Staging API Image (push) Successful in 24s
CI/CD Pipeline / Build Staging Worker Image (push) Successful in 26s
CI/CD Pipeline / Build Staging Web Image (push) Successful in 1m15s
CI/CD Pipeline / Integration Tests (push) Successful in 1m37s
CI/CD Pipeline / Validate - Python (mypy + alembic) (push) Successful in 1m58s
CI/CD Pipeline / Validate - Style (push) Successful in 2m13s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (push) Successful in 1m38s
CI/CD Pipeline / Frontend Unit Tests (push) Successful in 4m9s
CI/CD Pipeline / ACR Image Cleanup (push) Successful in 1m38s
CI/CD Pipeline / Staging E2E Tests (push) Failing after 2m57s
CI/CD Pipeline / Staging API Integration Tests (push) Successful in 4m49s
CI/CD Pipeline / Validate - Security (push) Successful in 8m27s
CI/CD Pipeline / Unit Tests (push) Successful in 8m34s
CI/CD Pipeline / Production Browser E2E (push) Has been skipped
CI/CD Pipeline / Canary Release to Production (push) Failing after 189h12m12s
CI/CD Pipeline / CI Gate (push) Failing after 189h12m16s
CI/CD Pipeline / Build Production Worker Image (push) Failing after 189h12m16s
CI/CD Pipeline / Build Production Web Image (push) Failing after 189h12m16s
CI/CD Pipeline / Build Production API Image (push) Failing after 189h12m16s
CI/CD Pipeline / Retag skipped Staging Worker Image (push) Failing after 189h19m31s
CI/CD Pipeline / PR Build API Image (push) Failing after 189h20m55s
CI/CD Pipeline / Check if frontend-only change (push) Failing after 189h20m57s
CI/CD Pipeline / Retag skipped Staging Web Image (push) Failing after 189h19m32s
CI/CD Pipeline / Retag skipped Staging API Image (push) Failing after 189h19m32s
CI/CD Pipeline / Frontend Lint (push) Failing after 189h20m50s
CI/CD Pipeline / PR Build Worker Image (push) Failing after 189h20m55s
CI/CD Pipeline / Deploy Production (push) Failing after 189h46m57s
CI/CD Pipeline / PR Build Web Image (push) Failing after 189h55m40s
Co-authored-by: xiaoxia <dev@xiaoxiajianji.com> Co-committed-by: xiaoxia <dev@xiaoxiajianji.com> |