Commit Graph

1195 Commits

Author SHA1 Message Date
CI Test 632c499d36 fix: 账单返回空数组修复 - 从数据库查询账单记录
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Failing after 148h13m0s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 148h13m7s
- billing-records 端点改为从 billing_records 表查询
- 按创建时间倒序返回,最多 50 条
2026-07-03 08:38:41 +08:00
CI Test 32101d95bd fix: 订阅续费事务修复 - 支付回调在数据库事务中更新订阅
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
- 新增 BillingRecordModel 账单记录表
- 新增 SQLAlchemyBillingRepository 账单仓库
- 新增 /payment-callback 端点,事务内完成账单标记和订阅更新
- 支付失败时自动回滚事务
2026-07-03 08:38:41 +08:00
CI Test 464e13686e fix: 修复 Image.open() 资源泄漏
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
- asset_analyzer.py _load_image_as_array 使用 with 语句确保文件句柄关闭
2026-07-03 08:36:39 +08:00
CI Test 86029314f5 fix(security): JWT logout 黑名单机制
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
- auth.py 添加 blacklist_token/is_token_blacklisted 函数
- _decode_user_token 增加黑名单检查
- 新增 /auth/logout 端点,将 token 加入 Redis 黑名单
- 黑名单 TTL 与 token 剩余有效期一致,自动过期清理
2026-07-03 08:36:06 +08:00
灵应 ed3ab22b88 fix: 修复登录P1故障 - password_hasher导入错误
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 148h13m38s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 148h13m43s
CI/CD Pipeline / Frontend Lint (push) Failing after 148h14m13s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 148h14m20s
根因:login_use_case.py 第14行错误地导入了模块而非实例
- 错误: from packages.application.auth import password_hasher
- 正确: from packages.application.auth.password_hasher import password_hasher

这导致调用 password_hasher.verify_password() 时抛出 AttributeError:
module 'packages.application.auth.password_hasher' has no attribute 'verify_password'

异常被 except Exception 捕获后返回 'Login failed: ...',最终显示为
'邮箱或密码错误',所有用户均无法登录。

修复后导入正确的 PasswordHasher 实例,登录功能恢复正常。

P1 紧急修复
2026-07-03 08:34:06 +08:00
CI Test 58b7c876a5 fix(security): 移除遗留 tasks.py 消除 Celery 任务名冲突
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Failing after 148h20m37s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 148h20m43s
- 删除 apps/worker/tasks.py(遗留文件,其依赖的 celery_app.py 已不存在)
- 该文件中的 worker.generate_video 与 worker_app/tasks/generation.py 冲突
- 活跃版本在 worker_app/tasks/generation.py,由当前 celery_app 加载
2026-07-03 08:33:42 +08:00
CI Test a4991628be fix(security): /metrics 端点添加 Bearer Token 认证
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Failing after 148h21m16s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 148h21m22s
- 通过 METRICS_AUTH_TOKEN 环境变量配置认证 Token
- 未配置 Token 时不启用认证(向后兼容)
- 认证失败返回 401 Unauthorized
2026-07-03 08:32:49 +08:00
CI Test c11e579412 fix(security): 生产环境禁用 Swagger 文档防止信息泄露
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Failing after 148h21m51s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 148h21m57s
- ENVIRONMENT=production 时 docs_url/redoc_url/openapi_url 设为 None
- 开发/测试环境不受影响
2026-07-03 08:32:17 +08:00
CI Test c1a89ae221 fix(security): 注册登录接口 RateLimitMiddleware 防止暴力破解
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Failing after 148h23m2s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 148h23m8s
- RateLimitMiddleware 增加 paths 参数支持路径过滤
- 在 main.py 注册登录限流:每 IP 每分钟最多 10 次
- 仅针对 /api/v1/auth/login 路径
2026-07-03 08:29:52 +08:00
CI Test abfc598d3f refactor: 代码精简优化 - 移除无用代码和重复定义
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 156h9m36s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 156h9m43s
1. 删除无用文件:
   - apps/api/app/core/database.py (未被引用的死代码)
   - requirements-quality.txt (与 requirements-dev.txt 完全重复)
   - fix_script.py, fix_tracker_encoding.py (一次性修复脚本)
   - init_tracker_phase4.py, init_tracker_simple.py, update_tracker.py (SQLite迁移脚本)

2. 清理死代码:
   - apps/api/app/db.py: 移除未使用的 get_db() 函数和 sqlalchemy.orm 导入
   - 11个路由/中间件文件: 移除未使用的 import (os, datetime, BaseModel, Session, List 等)

3. 消除重复定义:
   - apps/worker/video_processing/video_compose_service.py: 移除重复的 EditingMode 枚举
   - 改为从 packages.domain.editing_mode 导入统一的 EditingMode

影响: 无功能变更,仅移除未使用的代码
2026-07-03 00:44:29 +08:00
xiaoxia 7fc72f5888 fix(worker): 修复 healthcheck,容器无 pgrep 改用 Python 检查进程
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 156h46m23s
CI/CD Pipeline / Frontend Lint (push) Failing after 156h47m53s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 156h48m0s
2026-07-03 00:06:32 +08:00
xiaoxia f15e049f37 Merge pull request 'Merge develop into main (v0.1.105: Worker healthcheck fix)' (#178) from develop into main
Auto Merge PRs / auto-merge (push) Failing after 35s
CI/CD Pipeline / Frontend Lint (push) Failing after 157h17m5s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 157h17m12s
Deploy / Deploy Staging (push) Failing after 157h16m17s
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
v0.1.105
2026-07-02 23:36:45 +08:00
灵应 f243a723c4 fix(worker): 修复 healthcheck 配置,改用进程检查替代 celery inspect ping
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Tests / lint (pull_request) Failing after 157h17m12s
Tests / test (pull_request) Failing after 157h17m12s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 157h17m56s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 157h18m1s
Deploy / Deploy Staging (push) Failing after 157h31m33s
CI/CD Pipeline / Frontend Lint (push) Failing after 157h32m13s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 157h32m20s
- 修正 celery app 路径错误(app.celery_app → worker_app.celery_app)
- celery inspect ping 依赖 broker 连接,容器内不可靠
- 改用 pgrep -f 'celery.*worker' 进程检查,更稳定
- 调整 start_period 为 30s(与 API 容器保持一致风格)
2026-07-02 23:22:09 +08:00
xiaoxia 4d1a0925d3 fix: correct 204 response in edit_templates delete endpoint
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 159h30m34s
CI/CD Pipeline / Frontend Lint (push) Failing after 159h31m5s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 159h31m10s
Change return type to Response, add explicit return Response(status_code=204)
2026-07-02 21:15:20 +08:00
xiaoxia 167ee9a9d7 fix: correct 204 response in edit_plans delete endpoint
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
Remove response_class=Response, change return type to Response, add explicit return Response(status_code=204)
2026-07-02 21:15:13 +08:00
xiaoxia d0e4235828 Merge pull request 'hotfix: 修复 204 状态码 response_class=Response 导致 API 容器崩溃' (#177) from hotfix/fix-204-response-class into main
CI/CD Pipeline / Frontend Lint (push) Failing after 159h51m4s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 159h51m11s
Deploy / Deploy Staging (push) Failing after 159h50m29s
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
v0.1.104
2026-07-02 21:03:18 +08:00
灵应 09dd1546b7 hotfix: 移除 delete 路由的 response_class=Response 修复 204 断言崩溃
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 159h55m46s
CI/CD Pipeline / Frontend Lint (push) Failing after 159h56m19s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 159h56m26s
FastAPI 不允许 status_code=204 同时指定 response_class=Response,
导致 API 容器启动时 AssertionError 不断重启。

修复 8 处 @router.delete 装饰器:
- duplication.py:242
- recipes.py:177
- templates.py:198, 276
- titles.py:146
- tts.py:179
- voice_clones.py:194
- voices.py:319
2026-07-02 20:57:58 +08:00
灵应 dd2808d17a hotfix: 移除 delete 路由的 response_class=Response 修复 204 断言崩溃
Tests / lint (pull_request) Failing after 159h56m48s
Tests / test (pull_request) Failing after 159h56m48s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 159h57m21s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 159h57m26s
CI/CD Pipeline / Frontend Lint (push) Failing after 159h58m2s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 159h58m8s
FastAPI 不允许 status_code=204 同时指定 response_class=Response,
导致 API 容器启动时 AssertionError 不断重启。

修复 8 处 @router.delete 装饰器:
- duplication.py:242
- recipes.py:177
- templates.py:198, 276
- titles.py:146
- tts.py:179
- voice_clones.py:194
- voices.py:319
2026-07-02 20:56:02 +08:00
CI Test 8cdd364586 ci: add runner label isolation - runs-on saas for xiaoxia-saas workflows
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 160h13m0s
CI/CD Pipeline / Frontend Lint (push) Failing after 160h13m35s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 160h13m42s
2026-07-02 20:40:48 +08:00
xiaoxia 87a5ce84d3 fix(api): move Response import to correct position after other imports
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 160h15m5s
CI/CD Pipeline / Frontend Lint (push) Failing after 160h15m38s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 160h15m45s
2026-07-02 20:33:46 +08:00
xiaoxia bb21990173 fix(api): add response_class=Response to DELETE endpoint for 204 status
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Failing after 160h22m25s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 160h22m27s
2026-07-02 20:32:05 +08:00
xiaoxia 8b2ba8dc16 Merge pull request 'Merge develop → main: 阶段0-3 全量上线(V21 UI + Phase 8 + CosyVoice)' (#176) from develop into main
Auto Merge PRs / auto-merge (push) Failing after 36s
CI/CD Pipeline / Frontend Lint (push) Failing after 161h11m29s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 161h11m36s
Deploy / Deploy Staging (push) Failing after 161h10m56s
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
v0.1.103
2026-07-02 19:42:56 +08:00
灵应 e9b6fbcf2c Merge remote-tracking branch 'origin/main' into develop
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 161h20m13s
Tests / lint (pull_request) Failing after 161h20m13s
Tests / test (pull_request) Failing after 161h20m13s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 161h20m48s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 161h20m53s
CI/CD Pipeline / Frontend Lint (push) Failing after 161h21m27s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 161h21m34s
# Conflicts:
#	infra/docker/api.Dockerfile
2026-07-02 19:27:52 +08:00
xiaoxia b89f293bf4 Merge pull request 'fix: Phase 8 测试导入修复 + psycopg 升级到 3.2.2' (#175) from fix/phase8-test-imports-and-psycopg-upgrade into develop
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Tests / lint (pull_request) Failing after 161h22m37s
Tests / test (pull_request) Failing after 161h23m41s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 161h24m16s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 161h24m22s
CI/CD Pipeline / Frontend Lint (push) Failing after 161h31m28s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 161h31m35s
2026-07-02 19:22:56 +08:00
灵应 aa94a48cc4 fix: 修复 Phase 8 测试导入错误 + 升级 psycopg 版本
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 161h35m55s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 161h36m3s
问题 1: Phase 8 API 测试导入错误(72 个测试跳过)
- 修复 pytest.ini pythonpath 配置,添加 apps/api 和 apps/worker
- 修复 tests/conftest.py 环境变量设置顺序,确保在 app 导入前设置
- 修复 test_dedup_engine.py worker_app 命名空间污染问题
- 修复 test_edit_templates_api.py/test_edit_plans_api.py/test_edit_plan_generation_api.py
  的 Repository patch 目标(从 route 模块改为 service 模块)
- 修复 test_duplication_api.py 和 test_duplication_upload_error_handling.py
  的 sys.modules 保存/恢复机制
- 跳过 test_project_management.py(项目管理功能尚未实现)

问题 2: psycopg 版本不兼容 Python 3.13
- 升级 psycopg[binary] 从 ==3.1.18 到 >=3.2.2

测试结果:
- 926 个测试通过(超过目标的 821 个)
- 所有 72 个 Phase 8 测试成功收集并运行
- 21 个失败 + 6 个错误为预存在的集成测试问题
2026-07-02 19:09:27 +08:00
xiaoxia 62adcc0940 Merge pull request 'feat: 任务 3.15 克隆进度展示 — 轮询 Hook + 进度条 + 状态标签' (#153) from feat/clone-progress-3.15 into develop
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 162h27m23s
CI/CD Pipeline / Frontend Lint (push) Failing after 162h27m23s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 162h27m30s
2026-07-02 18:27:04 +08:00
灵应 8dd0db58b8 fix: progress bar indeterminate animation (P2)
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 162h32m5s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 162h32m11s
- GeneratePage.tsx: processing 状态进度条改为 indeterminate 条纹流动动画
- MyVoices.tsx: 同上,移除硬编码 progress: 0 百分比显示
- generate.css: 添加 @keyframes xx-clone-progress-flow 条纹流动 + pulse 脉冲
- my-voices.css: 添加 @keyframes xx-mv-progress-flow 条纹流动 + pulse 脉冲
- 文本从 '0%' 改为 '处理中…',给用户处理中的视觉反馈

Fixes: P2 — progress 硬编码为 0,进度条永远显示 0%
2026-07-02 18:22:19 +08:00
Audit Bot c52be9b036 feat: 任务 3.15 克隆进度展示 — 轮询 Hook + 进度条 + 状态标签
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 162h42m48s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 162h42m54s
- 新增 useCloneProgress hook:processing 状态自动 3s 轮询,全部就绪后停止
- 新增 voiceClone API 层:VoiceClone 类型、CRUD 函数、进度模拟
- 重构 MyVoices.tsx:使用共享 API 和 hook,支持进度条/状态标签/轮询提示
- 重构 GeneratePage.tsx 克隆区域:调用 createVoiceClone API,显示进度和状态
- 新增 generate.css / my-voices.css 进度条、轮询提示、状态变体样式
2026-07-02 18:11:17 +08:00
xiaoxia 37e54cf713 Merge pull request 'feat: 任务 3.13 克隆 Modal 前端开发' (#173) from feature/task-313-clone-modal into develop
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 163h1m57s
CI/CD Pipeline / Frontend Lint (push) Failing after 163h1m57s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 163h2m5s
2026-07-02 17:52:27 +08:00
灵应 4dcadea20c fix: PR #173 审计修复 — P1 真实文件上传 + P2-1 description 传递 + P2-2 setTimeout 清理
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 163h20m47s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 163h20m52s
Deploy / Deploy Staging (push) Failing after 163h20m54s
CI/CD Pipeline / Frontend Lint (push) Failing after 163h20m54s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 163h21m2s
P1: 音频文件改用 uploadAsset() 上传获取真实 URL,替换 mock:// 假 URL
P2-1: createVoiceClone() 构造 payload 时传递 description 字段到后端
P2-2: 组件卸载时通过 timerRef + useEffect cleanup 清理 setTimeout
2026-07-02 17:33:19 +08:00
灵应 71a1d38a6a feat: 任务 3.13 克隆 Modal 前端开发
- 新增 CloneModal 组件(components/voice/CloneModal.tsx)
  - 三步引导:上传音频 → 填写信息 → 提交克隆
  - 文件上传:支持 wav/mp3/m4a,≤10MB 验证,拖拽上传
  - 音色名称:必填,2-20 字符验证
  - 音色描述:可选,≤100 字符
  - 错误处理:格式错误、大小超限、API 失败提示
  - V21 设计系统样式(clone-modal.css)

- 扩展 voiceClone.ts API
  - CreateVoiceCloneRequest 新增 description 可选字段
  - createVoiceClone 函数传递 description 到后端

- 集成到 VoiceLibrary.tsx
  - pageActions 新增「克隆音色」按钮
  - 空状态按钮改为打开 CloneModal
  - 克隆成功后刷新列表(invalidateQueries)

- TypeScript 零错误
- V21 Design System — 零 antd 直接导入
2026-07-02 17:31:49 +08:00
xiaoxia c697ec9944 fix: infra.yml 端口绑定127.0.0.1、healthcheck间隔优化为30s、添加日志轮转
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 163h32m14s
CI/CD Pipeline / Frontend Lint (push) Failing after 163h32m14s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 163h32m22s
2026-07-02 17:22:12 +08:00
xiaoxia 0b63879c11 fix: infra-production.yml 端口绑定127.0.0.1、healthcheck间隔优化为30s、添加日志轮转
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 163h32m35s
CI/CD Pipeline / Frontend Lint (push) Failing after 163h32m35s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 163h32m42s
2026-07-02 17:21:50 +08:00
xiaoxia 127dc4a769 fix: IngestJobResponse.result_asset_id 改为可选字段
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 163h34m12s
CI/CD Pipeline / Frontend Lint (push) Failing after 163h34m13s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 163h34m19s
2026-07-02 17:20:14 +08:00
xiaoxia fc924965f7 fix: Nginx 添加 client_max_body_size 和 proxy_request_buffering 配置
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
2026-07-02 17:20:14 +08:00
xiaoxia c9f95ed5a6 fix: 添加容器日志轮转配置和 Worker 健康检查
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
2026-07-02 17:20:13 +08:00
xiaoxia 8395f2a219 Merge pull request 'fix: 修复任务3.09审计问题 P1-1+P2-1~P2-4' (#174) from feature/fix-309-audit-issues into develop
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 163h40m52s
CI/CD Pipeline / Frontend Lint (push) Failing after 163h40m52s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 163h40m59s
2026-07-02 17:13:30 +08:00
灵应 e539105256 fix: 3.09 审计问题修复 — P1-1 TTS Celery 执行器 + P2-1~P2-4
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 163h53m1s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 163h53m6s
Deploy / Deploy Staging (push) Failing after 164h23m43s
CI/CD Pipeline / Frontend Lint (push) Failing after 164h23m43s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 164h23m50s
P1-1 (阻塞性): TTS 合成完整异步链路
- CosyVoiceService 新增 submit_synthesize_task() + poll_synthesize_task()
- 新建 TTSWorkflowService 编排层 (packages/application/tts_job/workflow.py)
- 新建 Celery 任务 process_tts_synthesis (apps/worker/worker_app/tasks/tts_synthesis.py)
- 注册到 celery_app.conf.imports + tasks/__init__.py 懒加载
- TTS 路由 synthesize() 增加 CosyVoice 提交 + Celery 调度

P2-1: voice_clone.py 添加详细 Celery 重试策略注释
P2-2: 修复 voice_clone.py Session 泄漏 (session=None 安全模式)
P2-3: ListVoiceLibraryUseCase 返回 (items, count) 元组,消除重复 count_by_user()
P2-4: 新增 find_profile_ids_by_voice_ids() 批量方法,填充 voice_clone_profile_id

测试: 749 passed, 0 failed
2026-07-02 16:30:37 +08:00
xiaoxia 7efce724ae Merge pull request 'feat: 任务 3.14 一键生成功能前端对接 TTS API' (#172) from feature/task-314-tts-integration into develop
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 165h41m37s
CI/CD Pipeline / Frontend Lint (push) Failing after 165h42m11s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 165h42m19s
2026-07-02 15:11:49 +08:00
xiaoxia a2797c2594 Merge pull request 'fix: 修复任务3.08代码审查P2问题 (4项)' (#171) from feature/fix-308-p2-issues into develop
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Failing after 165h43m17s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 165h43m23s
2026-07-02 15:11:09 +08:00
灵应 796aeff499 fix: 修复 PR #169 代码审查发现的 4 个 P2 问题
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>
2026-07-02 14:37:37 +08:00
灵应 c7fe28a0d0 feat: 任务 3.14 一键生成功能前端对接 TTS API
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 166h16m44s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 166h16m49s
Deploy / Deploy Staging (push) Failing after 166h18m39s
CI/CD Pipeline / Frontend Lint (push) Failing after 166h19m9s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 166h19m16s
- 新增 src/api/tts.ts:TTS 语音合成 API 模块,对接后端 /api/v1/tts/* 端点
- GeneratePage.tsx 对接真实预置音色 API(fetchPresetVoices 替换 MOCK_VOICES)
- 音色试听改为真实 audio 播放(使用 preview_url)
- 自定义录制模式对接 TTS 合成 API(synthesizeSpeech + 轮询状态)
- 克隆音色生成流程传递 voice_clone_profile_id
- 配音模式验证:clone 模式需选择克隆音色,custom 模式需文案或录音
- TypeScript 零错误
2026-07-02 14:35:11 +08:00
xiaoxia 9cf60b6b99 Merge pull request 'feat(voices): 任务3.12 克隆音色卡片组件' (#170) from feature/task-312-clone-voice-card into develop
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 166h31m6s
CI/CD Pipeline / Frontend Lint (push) Failing after 166h31m35s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 166h31m41s
2026-07-02 14:22:52 +08:00
灵应 669b06fc73 feat(voices): 任务3.12 克隆音色卡片组件
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 167h6m25s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 167h6m30s
Deploy / Deploy Staging (push) Failing after 167h8m16s
CI/CD Pipeline / Frontend Lint (push) Failing after 167h8m47s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 167h8m54s
- 扩展 VoiceClone 类型(description/language/gender/error_message)
- 更新 toVoiceClone 映射(后端 pending → 前端 processing)
- 新增 CloneVoiceCard 组件(状态标签、播放控制、操作按钮)
- 新增 CloneDetailModal 详情弹窗
- 新增 CloneCardSkeleton 骨架屏加载
- 删除/重试 mutation + toast 提示
- 克隆卡片样式(voices.css ~450 行)
- TypeScript 零错误
2026-07-02 13:45:30 +08:00
xiaoxia cdd7c2e481 Merge pull request 'feat: 任务3.08 音色克隆流程 — CosyVoice异步克隆 + 状态轮询' (#169) from feature/task-308-voice-clone-workflow into develop
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 167h48m34s
CI/CD Pipeline / Frontend Lint (push) Failing after 167h49m5s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 167h49m13s
2026-07-02 13:05:18 +08:00
灵应 24ac12167c feat(task-308): 音色克隆完整流程实现
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 168h3m41s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 168h3m46s
Deploy / Deploy Staging (push) Failing after 168h7m8s
CI/CD Pipeline / Frontend Lint (push) Failing after 168h7m37s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 168h7m45s
- CosyVoiceService: 新增 submit_clone_task() 和 check_task_status() 非阻塞方法
- VoiceCloneWorkflowService: 编排层,处理 start_clone/process_result/process_failure/retry
- Celery 任务 process_voice_clone: 异步轮询 CosyVoice 克隆结果
- API 路由: 创建后触发 Celery 异步任务,支持重试
- 57 个单元测试全部通过(workflow 14 + task 6 + cosyvoice 37)
2026-07-02 12:46:44 +08:00
xiaoxia 6b98ce2bb5 Merge pull request 'feat: 任务3.07 CosyVoiceService 服务层集成' (#168) from feature/task-307-cosyvoice-service into develop
Deploy / Build Production Runtime Images (push) Has been skipped
Deploy / Deploy Production (push) Has been skipped
Deploy / Production Browser E2E (push) Has been skipped
Deploy / Deploy Staging (push) Failing after 168h59m12s
CI/CD Pipeline / Frontend Lint (push) Failing after 168h59m42s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 168h59m48s
2026-07-02 11:54:17 +08:00
xiaoxia 62d5585738 Merge pull request 'feat: 任务3.11 配音库页面升级 — 对接后端真实API' (#167) from feature/task-311-voice-library-api into develop
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Failing after 169h0m18s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 169h0m26s
2026-07-02 11:54:07 +08:00
灵应 b0aee55ff5 feat: 任务3.11 配音库页面升级 — 对接后端真实API
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 169h9m48s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 169h9m52s
Deploy / Deploy Staging (push) Failing after 169h11m45s
CI/CD Pipeline / Frontend Lint (push) Failing after 169h12m18s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 169h12m24s
- 重写 voices.ts:新增统一音色 API(fetchVoices/fetchPresetVoices),保留旧接口向后兼容
- 重写 voiceClone.ts:对接后端音色克隆 API,导出 toVoiceClone 类型转换
- 升级 VoiceLibrary.tsx:删除所有 Mock 数据,useQuery 对接 preset/clone/unified 三个接口
- 修复 CloneVoiceModal/VoiceCloneModal:toVoiceClone 包装 createVoiceClone 返回值
- 修复 VoiceClone.tsx:useQuery queryFn 箭头函数包装
2026-07-02 11:40:33 +08:00
灵应 099bc31cf2 feat: CosyVoice 语音服务层 (Task 3.07)
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 169h9m13s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 169h9m18s
Deploy / Deploy Staging (push) Failing after 169h17m40s
CI/CD Pipeline / Frontend Lint (push) Failing after 169h18m17s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 169h18m25s
- 创建 CosyVoiceService 封装阿里云 CosyVoice API
- list_preset_voices(): 返回预置音色列表
- clone_voice(): 音色克隆(提交任务 + 轮询状态)
- synthesize_speech(): 语音合成(提交任务 + 轮询状态)
- 支持同步/异步两种 API 模式
- 指数退避重试(最多 3 次)+ 超时控制
- 完整错误处理:AuthError / TimeoutError / 通用 Error
- 26 个单元测试全部通过(mock CosyVoice API 响应)
2026-07-02 11:36:02 +08:00