From 5d07c64e59ad663efe4caf88a1bf7fdf1d5c22cb Mon Sep 17 00:00:00 2001 From: Xiaoxia AI Date: Sun, 21 Jun 2026 00:02:23 +0800 Subject: [PATCH] docs(phase7): record real ffmpeg closure --- docs/PHASE7-PROGRESS.md | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/docs/PHASE7-PROGRESS.md b/docs/PHASE7-PROGRESS.md index 7e954701e..05a26195f 100644 --- a/docs/PHASE7-PROGRESS.md +++ b/docs/PHASE7-PROGRESS.md @@ -1,8 +1,8 @@ # PHASE7-PROGRESS.md **Phase**: Phase 7 - 核心视频剪辑业务 -**状态**: ✅ 已完成(P0/P1/CI-CD 已生产验证闭环) -**最后更新**: 2026-06-20 21:35 GMT+8 +**状态**: ✅ 已完成(P0/P1/CI-CD/真实 FFmpeg 生成已生产验证闭环) +**最后更新**: 2026-06-21 00:01 GMT+8 --- @@ -22,8 +22,8 @@ ### 1. 核心业务能力 - [x] **素材管理**:上传、分类、查询、标签管理 -- [x] **视频生成**:任务创建、自动触发 worker、生成结果管理 -- [x] **成片下载**:预签名 URL、规范化存储路径 +- [x] **视频生成**:任务创建、自动触发 worker、真实 FFmpeg 生成、生成结果管理 +- [x] **成片下载**:公网 `video/mp4` 成片 URL、规范化存储路径、宿主持久化 - [x] **前端联调**:生成页、结果页已接入并验证 ### 2. 基础设施完善 @@ -54,6 +54,8 @@ - [x] 前端 `type-check` 通过 - [x] 前端 `build` 通过 - [x] 真实 P1 smoke flow 通过:注册、登录、项目、素材库、上传、生成任务、成片结果 +- [x] 真实 FFmpeg smoke flow 通过:`running → completed`、`result_count=1`、生成 5 秒 MP4 +- [x] 公网成片下载验证通过:`HTTP 200`、`Content-Type: video/mp4`、MP4 文件头包含 `ftypisom` - [x] 公网 `/health` 返回 200,服务版本 `0.1.0` --- @@ -70,10 +72,18 @@ ### 2. P1 业务主链路 - [x] 修复 worker 未注册 `worker.generate_video` 导致生成任务卡在 `pending` 的问题 - [x] `bugfix/worker-generate-video-task` 已合并到 `develop` -- [x] 当前 `worker.generate_video` 为最小生产安全基线:消费任务、标记完成、创建 `GeneratedVideo`、返回 `generated://...` 结果 +- [x] `worker.generate_video` 已从 `generated://...` 最小基线升级为真实 FFmpeg 生成 - [x] 真实 P1 smoke flow 已验证 `GenerationTask` 到 `completed`,`progress=100.0`,`result_count=1` -### 3. CI 根治优化 +### 3. 真实 FFmpeg 生成闭环 +- [x] `feature/real-ffmpeg-generation` 已合并到 `develop` +- [x] Worker 使用 FFmpeg 生成真实 MP4 文件:5 秒、1280x720、25fps +- [x] 无 OSS 配置时回退到本地 generated 文件持久化,不再因 `OSS_ACCESS_KEY_ID` 缺失失败 +- [x] Nginx 已暴露 `/generated-files/` 静态路径,避免成片 URL 命中前端 HTML 假 200 +- [x] Docker generated 文件卷已绑定到宿主机 `/var/lib/xiaoxia-saas-staging/generated` +- [x] 真实 smoke 验证结果:公网 URL 返回 `HTTP 200`、`Content-Type: video/mp4`、文件头包含 `ftypisom` + +### 4. CI 根治优化 - [x] 诊断出 CI 慢根因:服务器到 PyPI 下载慢,`mypy==2.1.0` 大 wheel 造成 20+ 分钟等待 - [x] 新增预构建校验镜像 `xiaoxia-ci-python:3.12` - [x] `.gitea/workflows/ci-cd.yml` 与 `.github/workflows/ci-cd.yml` 已同步使用预构建镜像 @@ -119,7 +129,7 @@ Phase 7 执行过程中的关键决策: - 答:核心视频剪辑主链路(上传→分类→生成→下载),CI/CD 稳定性修复,代码 TODO 清理 3. **下一步做什么?** - - 答:优先进入真实 FFmpeg 生成专项,把当前 `generated://...` 最小基线升级为可下载真成片;或启动后续专项治理(参考 `docs/SaaS-后续专项整治清单-2026-06-18.md`) + - 答:Phase 7 已收口;下一步进入 Phase 8/运营后台/监控告警/测试覆盖率等后续专项规划(参考 `docs/SaaS-后续专项整治清单-2026-06-18.md`) 4. **当前进度文档路径是什么?** - 答:`F:\openclaw-saas\docs\PHASE7-PROGRESS.md` @@ -128,7 +138,7 @@ Phase 7 执行过程中的关键决策: ## 七、完成总结 -**Phase 7 已全部完成**,核心视频剪辑业务主链路、P0 部署链路、P1 真实 smoke flow、CI/CD 自动化主链路均已打通并验证通过。 +**Phase 7 已全部完成**,核心视频剪辑业务主链路、P0 部署链路、P1 真实 smoke flow、CI/CD 自动化主链路、真实 FFmpeg 生成与公网成片下载均已打通并验证通过。 ### 关键成果 - SaaS MVP 核心功能可用 @@ -142,4 +152,4 @@ Phase 7 执行过程中的关键决策: - 基础设施:SQLAlchemy 持久化、Celery worker、MinIO 存储、预签名 URL - 前端:React + TypeScript,生成页和结果页联调完成 -**Phase 7 正式收口,可以进入真实 FFmpeg 生成专项或下一阶段规划。** ✅ +**Phase 7 正式收口,可以进入下一阶段规划。** ✅