# ViGent2 开发任务清单 (Task Log) **项目**: ViGent2 数字人口播视频生成系统 **进度**: 100% (Day 21 - 缺陷修复与持久化回归治理) **更新时间**: 2026-02-08 --- ## 📅 对话历史与开发日志 > 这里记录了每一天的核心开发内容与 milestone。 ### Day 21: 缺陷修复与持久化回归治理 (Current) - [x] **Remotion 崩溃容错**: 渲染进程 SIGABRT 退出时检查输出文件,避免误判失败导致标题/字幕丢失。 - [x] **首页作品选择持久化**: 修复 `fetchGeneratedVideos` 无条件覆盖恢复值的问题,新增 `preferVideoId` 参数控制选中逻辑。 - [x] **发布页作品选择持久化**: 根因为签名 URL 不稳定,全面改用 `video.id` 替代 `path` 进行选择/持久化/比较。 - [x] **预取缓存补全**: 首页预取发布页数据时加入 `id` 字段,确保缓存数据可用于持久化匹配。 ### Day 20: 代码质量与安全优化 - [x] **功能性修复**: LatentSync 回退逻辑、任务状态接口认证、User 类型统一。 - [x] **性能优化**: N+1 查询修复、视频上传流式处理、httpx 异步替换、GLM 异步包装。 - [x] **安全修复**: 硬编码 Cookie 配置化、日志敏感信息脱敏、ffprobe 安全调用、CORS 配置化。 - [x] **配置优化**: 存储路径环境变量化、Remotion 预编译加速、LatentSync 绝对路径。 - [x] **文档更新**: 更新 Doc_Rules.md 清单,补齐后端与部署文档;更新 SUBTITLE_DEPLOY.md, FRONTEND_DEV.md, implementation_plan.md。 - [x] **缺陷修复**: 修复 Remotion 路径解析、发布页持久化竞态、首页选中回归、素材闭包陷阱。 ### Day 19: 自动发布稳定性与发布体验优化 🚀 - [x] **抖音发布稳定性**: 上传入口、封面流程、发布重试、登录失效识别与网络失败快速返回全面增强。 - [x] **视频号发布修复**: 标题+标签统一写入“视频描述”,`post_create` 成功信号快速判定,超时改为失败返回。 - [x] **成功截图闭环**: 抖音/视频号发布成功截图接入前端,支持用户隔离存储与鉴权访问。 - [x] **截图观感优化**: 成功截图延后 3 秒并改为视口截图,修复“截图内容仅占 1/3”问题。 - [x] **调试能力开关化**: 新增视频号录屏配置,默认可按环境变量开关,失败排障更直观。 - [x] **启动链路统一**: 合并为 `run_backend.sh`(xvfb + headful),统一端口 `8006`,减少多进程混淆。 - [x] **发布页防误操作**: 发布中按钮提示“请勿刷新或关闭网页”,并启用刷新/关页二次确认拦截。 - [ ] **后续优化**: 发布任务状态恢复机制(任务化 + 状态持久化 + 前端轮询恢复)。 ### Day 18: 后端模块化与规范完善 - [x] **模块化迁移**: 路由透传 `modules/*`,业务逻辑集中到 service/workflow。 - [x] **视频生成拆分**: 生成流程下沉 workflow,任务状态统一 TaskStore。 - [x] **Redis 任务存储**: Redis 优先,不可用自动回退内存。 - [x] **仓储层抽离**: Supabase 访问统一 `repositories/*`,deps/auth/admin 全面替换。 - [x] **响应规范**: 统一 `success/message/data/code` + 全局异常处理。 - [x] **素材重命名**: 新增重命名接口与 Storage `move_file`。 - [x] **平台顺序调整**: 抖音/微信视频号/B站/小红书,移除快手。 - [x] **后端开发规范**: 新增 `BACKEND_DEV.md`,README 同步模块化结构。 - [x] **发布管理体验**: 首页预取路由 + 发布页骨架与缓存,进入更快。 - [x] **素材加载优化**: 素材列表并发签名 URL,骨架数量动态。 - [x] **预览加载优化**: `preload="metadata"` + hover 预取。 ### Day 17: 前端重构与体验优化 - [x] **UI 组件拆分**: 首页拆分为独立组件,降低 `page.tsx` 复杂度。 - [x] **轻量 FSD 迁移**: `app` 页面轻量化,逻辑集中到 `features/*/model`,通用能力下沉 `shared/*`。 - [x] **Controller Hooks**: Home/Publish 页面逻辑集中到 Controller Hook,Page 仅组合渲染。 - [x] **通用工具抽取**: `media.ts` 统一 API Base / URL / 日期格式化。 - [x] **交互优化**: 选择项持久化、列表内定位、刷新回顶部、最新作品优先预览。 - [x] **发布页改造**: 作品列表卡片化 + 搜索 + 预览弹窗。 - [x] **预览体验**: 预览弹窗统一头部样式与提示文案。 - [x] **预览一致性**: 标题/字幕预览按素材分辨率缩放。 - [x] **标题同步与限制**: 片头标题同步发布标题,输入法合成态兼容,限制 15 字。 - [x] **样式默认与持久化**: 默认样式与字号调整,刷新保留用户选择。 - [x] **性能微优化**: 列表渲染优化 + 并行请求 + localStorage 防抖。 - [x] **资源能力**: 字体/BGM 资源库 + `/api/assets` 接入。 - [x] **音频与字幕修复**: BGM 混音稳定性与字幕断句优化。 - [x] **持久化修复**: 接入 `useHomePersistence`,恢复 `isRestored` 逻辑并通过构建。 - [x] **预览与选择修复**: 发布预览兼容签名 URL,音频试听路径解析,素材/BGM 回退有效项。 - [x] **体验细节优化**: 录音预览 URL 回收,预览弹窗滚动恢复,全局任务提示挂载。 ### Day 16: 深度性能优化 - [x] **Qwen-TTS 加速**: 集成 Flash Attention 2,模型加载速度提升至 8.9s。 - [x] **服务守护**: 开发 `Watchdog` 看门狗机制,自动监控并重启僵死服务。 - [x] **LatentSync 性能确认**: 验证 DeepCache + 原生 Flash Attn 生效。 - [x] **文档重构**: 全面更新 README、部署手册及后端文档。 ### Day 15: 手机号认证迁移 - [x] **认证系统升级**: 从邮箱迁移至 11 位手机号注册/登录。 - [x] **账户管理**: 新增修改密码、有效期显示、安全退出功能。 - [x] **AI 文案助手**: 升级 GLM-4.7-Flash,支持 B站/抖音链接提取与洗稿。 ### Day 14: AI 增强与体验优化 - [x] **AI 标题/标签**: 集成 GLM-4API 自动生成视频元数据。 - [x] **字幕升级**: Remotion 逐字高亮字幕 (卡拉OK效果) 及动画片头。 - [x] **模型升级**: Qwen3-TTS 升级至 1.7B-Base 版本。 ### Day 13: 声音克隆集成 - [x] **声音克隆微服务**: 封装 Qwen3-TTS 为独立 API (8009端口)。 - [x] **参考音频管理**: Supabase 存储桶配置与管理接口。 - [x] **多模态 TTS**: 前端支持 EdgeTTS / Clone Voice 切换。 ### Day 12: 移动端适配 - [x] **iOS 兼容**: 修复 Safari 安全区域、状态栏颜色、Cookie 拦截问题。 - [x] **响应式 UI**: 移动端 Header 与发布页重构。 ### Day 11: 上传架构重构 - [x] **直传优化**: 前端直传 Supabase Storage,解决 Nginx 30s 超时问题。 - [x] **数据隔离**: 用户素材/视频按 UserID 物理隔离。 ### Day 10: HTTPS 与安全 - [x] **HTTPS 部署**: 配置 SSL 证书与 Nginx 反向代理。 - [x] **安全加固**: Supabase Studio 增加 Basic Auth 保护。 ### Day 9: 认证系统与发布闭环 - [x] **用户系统**: 基于 Supabase Auth 实现 JWT 认证。 - [x] **发布闭环**: 验证 B站/抖音/小红书 自动发布流程。 - [x] **服务自愈**: 配置 PM2 进程守护。 ### Day 1-8: 核心功能构建 - [x] **Day 8**: 历史记录持久化与文件管理。 - [x] **Day 7**: 社交媒体自动登录与多平台发布。 - [x] **Day 6**: **LatentSync 1.6** 升级与服务器部署。 - [x] **Day 5**: 前端视频上传与进度反馈。 - [x] **Day 4**: MuseTalk (旧版) 口型同步修复。 - [x] **Day 3**: 服务器环境配置与模型权重下载。 - [x] **Day 1-2**: 项目基础框架 (FastAPI + Next.js) 搭建。 --- ## 🛤️ 后续规划 (Roadmap) ### 🔴 优先待办 - [ ] **批量生成架构**: 支持 Excel 导入,批量生产视频。 - [ ] **定时任务后台化**: 迁移前端触发的定时发布到后端 APScheduler。 - [ ] **发布任务恢复机制**: 发布任务化 + 状态持久化 + 前端断点恢复,解决刷新后状态丢失。 ### 🔵 长期探索 - [ ] **容器化交付**: 提供完整的 Docker Compose 一键部署包。 - [ ] **分布式队列**: 引入 Celery + Redis 处理超高并发任务。 --- ## 📊 模块完成度 | 模块 | 进度 | 状态 | |------|------|------| | **核心 API** | 100% | ✅ 稳定 | | **Web UI** | 100% | ✅ 稳定 (移动端适配) | | **唇形同步** | 100% | ✅ LatentSync 1.6 | | **TTS 配音** | 100% | ✅ EdgeTTS + Qwen3 | | **自动发布** | 100% | ✅ 抖音/微信视频号/B站/小红书 | | **用户认证** | 100% | ✅ 手机号 + JWT | | **部署运维** | 100% | ✅ PM2 + Watchdog | --- ## 📎 相关文档 - [详细开发日志 (DevLogs)](Docs/DevLogs/) - [部署手册 (DEPLOY_MANUAL)](Docs/DEPLOY_MANUAL.md)