docs: sync workflow progress and weekend handoff

This commit is contained in:
2026-04-17 18:44:43 +08:00
parent a97a2fe005
commit fea4ef012f
11 changed files with 2712 additions and 0 deletions

View File

@@ -0,0 +1,344 @@
# DreamWeaver 求职版重启Week 1 执行 Backlog
**Version**: 1.0
**Date**: 2026-04-17
**Author**: Sarah (Product Owner)
**Sprint Length**: 5 个工作日
**Sprint Theme**: 产品聚焦与核心生成链路收敛
---
## 1. Sprint Executive Summary
本周的核心任务不是“继续加功能”,而是为 DreamWeaver 的求职版重启建立一个稳定、可解释、可执行的基础版本。Week 1 的目标是完成三件事:
1. 明确 DreamWeaver 求职版的核心产品主线。
2. 明确统一生成工作流的目标状态与系统边界。
3. 识别并解决阻碍演示与后续开发的关键基础问题。
这意味着本周的重点是“收敛、抽象、对齐”,而不是“冲刺做完所有体验”。如果 Week 1 做得对Week 2 的前端状态、音频体验和闭环演示才会顺。
---
## 2. Sprint Goal
### Sprint Goal
在 5 个工作日内,将 DreamWeaver 从“功能分散的 AI 项目”推进为“围绕个性化亲子故事体验的清晰产品方案”,并完成统一生成工作流的设计对齐与关键技术阻塞清单。
### Sprint Success Definition
本周结束时,团队应满足以下状态:
- 已统一项目对外叙事DreamWeaver 是“个性化 AI 绘本与陪伴式讲述产品”。
- 已形成统一生成工作流的需求说明、状态模型和系统边界。
- 已确认 admin 端、Storybook 恢复能力、Provider 重构边界的处理方案。
- 已产出 Week 2 可直接进入开发的任务清单。
## 2.1 Current Progress Snapshot
**Updated**: 2026-04-17 evening
### What Has Been Completed
- 已完成求职版产品方向收敛,并形成 `docs/product/job-search-relaunch-prd.md``docs/product/unified-generation-workflow-prd.md`
- 已在代码中补齐 Storybook 按 ID 恢复,不再只依赖前端内存态
- 已在后端和前端落地统一状态字段与状态文案:
- `generation_status`
- `image_status`
- `audio_status`
- `last_error`
- 已补齐故事列表、故事详情、绘本阅读页的状态展示
- 已为故事音频增加首次生成后落盘缓存与后续复用
- 已新增数据库迁移:
- `0009_add_story_generation_statuses.py`
- `0010_add_story_audio_cache_path.py`
- 已完成一轮后端回归验证:`backend/``pytest -q` 结果为 `53 passed`
### What Is In Progress
- 统一状态模型已落地,但统一 service workflow 仍未真正收束成单一路径
- 普通故事、完整生成、绘本生成仍存在多条 service / API 路径
- 资产补全虽然已经支持图片与音频状态,但“统一重试入口”尚未实现
### What Is Still Pending
- admin-frontend 的处理决策与演示范围收敛
- Provider 的 Capability / Provider / Routing Policy 边界整理
- Week 2 可直接执行的开发任务表
- 演示 checklist 与最终收尾策略
### Remote Checkpoint Scope
当前远端已同步一个阶段性 checkpoint
- Commit: `a97a2fe`
- Message: `feat: persist story generation states and cache audio`
这个 checkpoint **不是今天下午所有本地修改的全集**。它只覆盖以下主线:
- 统一生成状态模型
- Storybook 按 ID 恢复
- 故事列表/详情/绘本页状态展示
- 音频缓存与状态语义修正
当前工作区里仍存在其他未提交、本机独有的改动,周末换电脑后不会自动带过去。
---
## 3. Scope
### In Scope
- 产品主线收敛
- 统一生成工作流的需求定义
- Provider 概念重构边界梳理
- Storybook 恢复路径方案确认
- Admin 前端处理策略确认
- Week 2 开发前准备
### Out of Scope
- 大规模前端视觉重构
- 新增更多 AI 供应商
- 复杂监控大盘与成本后台
- 多租户、商业化支付、会员系统
- 全量高可用部署优化
---
## 4. Sprint Priorities
| Priority | Item | Why It Matters |
|------|------|------|
| P0 | 收敛产品定位 | 决定后续所有产品与技术选择 |
| P0 | 统一生成工作流定义 | 决定故事、绘本、音频、封面如何整合 |
| P0 | Storybook 恢复方案 | 当前是演示稳定性的关键缺口 |
| P0 | Admin 端处理决策 | 当前会影响完整构建与部署 |
| P1 | Provider 分层整理 | 为后续系统重构和面试讲解打底 |
| P1 | Week 2 任务准备 | 保证下周可直接进入执行 |
---
## 5. Week 1 User Stories
### Story A: 明确求职版产品主线
**As a** 项目拥有者
**I want to** 明确 DreamWeaver 求职版只讲一个清晰的产品故事
**So that** 我在面试和开发中都能聚焦重点
**Acceptance Criteria**
- [ ] 输出一句话产品定位
- [ ] 输出 3 条核心价值主张
- [ ] 明确哪些功能是本轮保留,哪些是延后
### Story B: 明确统一生成工作流
**As a** 产品负责人
**I want to** 用统一工作流来定义故事、绘本、封面和语音生成
**So that** 系统可以持续演进,而不是继续分裂
**Acceptance Criteria**
- [x] 定义统一状态模型
- [x] 明确故事与绘本的共同链路和差异
- [ ] 明确失败降级与重试原则
### Story C: 识别并拆解关键阻塞项
**As a** 求职项目维护者
**I want to** 找出影响演示和开发推进的关键阻塞
**So that** 后续投入能集中在最高价值项上
**Acceptance Criteria**
- [ ] 明确 admin-frontend 的处理方案
- [x] 明确 Storybook 恢复方案
- [ ] 明确 Provider 重构边界
---
## 6. Task Backlog
| ID | Workstream | Task | Output | Priority | Estimate | Status |
|------|------|------|------|------|------|------|
| W1-01 | Product | 确认求职版产品定位与展示口径 | 一句话定位 + 3 条价值主张 | P0 | 0.5d | Done |
| W1-02 | Product | 梳理本轮 In Scope / Out of Scope | 范围清单 | P0 | 0.5d | Done |
| W1-03 | Product / System | 盘点现有生成路径:普通故事、完整生成、绘本生成 | 现状流程图或对照表 | P0 | 0.5d | Done |
| W1-04 | Product / System | 定义统一 Generation Workflow 状态模型 | 状态流转说明 | P0 | 1.0d | Done |
| W1-05 | Product / Backend | 定义统一工作流下的 API / 数据结构影响 | 接口与模型变更清单 | P0 | 0.5d | In Progress |
| W1-06 | Product / Backend | 梳理 Provider 概念层Capability / Provider / Routing Policy | 分层图与术语表 | P1 | 0.5d | Pending |
| W1-07 | Product / Frontend | 梳理 Storybook 当前问题与恢复方案 | 恢复方案说明 | P0 | 0.5d | Done |
| W1-08 | Product / Frontend | 确认 admin 前端是修复、裁剪还是暂时降级 | 决策记录 | P0 | 0.5d | Pending |
| W1-09 | Planning | 产出 Week 2 开发任务清单 | 下周 backlog | P1 | 0.5d | In Progress |
| W1-10 | Review | 形成求职演示版检查清单 | 演示清单 | P1 | 0.5d | Pending |
---
## 7. Recommended Execution Sequence
### Day 1: 产品聚焦
- 完成求职版产品定位
- 确认本轮保留功能与延后功能
- 输出一句话产品口径和核心价值主张
**Expected Output**
- 产品定位 statement
- MVP 范围清单
- 非本轮范围说明
### Day 2: 现状拆解
- 盘点当前三类生成路径
- 对比普通故事、完整故事、绘本生成的共同点与差异
- 找出重复步骤与缺失状态
**Expected Output**
- 现状流程对照表
- 问题清单
- 工作流统一方向初稿
### Day 3: 统一工作流定义
- 确定 Generation Workflow 的状态模型
- 明确文本、封面、语音、绘本页的生成关系
- 明确哪些步骤同步、哪些异步
**Expected Output**
- 统一工作流草案
- 状态流转图
- 失败降级规则
### Day 4: 关键阻塞项决策
- 明确 Storybook 恢复方案
- 明确 admin 端处理策略
- 明确 Provider 重构边界和迁移原则
**Expected Output**
- 技术决策记录
- Week 2 实施前置条件
### Day 5: Sprint Wrap-up
- 整理 Week 2 可执行任务
- 形成演示清单与风险清单
- 输出周总结
**Expected Output**
- Week 2 backlog
- 演示 checklist
- Sprint review summary
---
## 8. Deliverables
本周必须交付的成果如下:
1. 求职版产品定位文档
2. 统一生成工作流功能级 PRD
3. Storybook 恢复方案说明
4. Admin 端处理决策
5. Week 2 开发 Backlog
6. 演示检查清单
## 8.1 Weekend Handoff Guidance
如果周末在另一台电脑继续推进,建议按以下顺序接手:
1. 先拉取远端 `main`,确认已经包含 commit `a97a2fe`
2. 先阅读:
- `docs/product/job-search-relaunch-prd.md`
- `docs/product/unified-generation-workflow-prd.md`
- 当前这份 backlog
3. 运行数据库迁移:`alembic upgrade head`
4. 从“统一资产补全”和“统一 service workflow”继续而不是重新发散到新功能
建议周末接续时的第一优先级:
- 抽出图片/音频统一资产补全过程
- 设计并实现统一的重试入口
- 继续收敛普通故事、完整生成、绘本生成三条路径
---
## 9. Definition of Done
只有满足以下条件Week 1 才视为完成:
- [ ] 产品定位能用 30 秒讲清楚
- [ ] 统一生成工作流的状态模型已明确
- [ ] 关键阻塞项均有明确处理方案,不处于“再看看”
- [ ] Week 2 有可直接执行的任务表
- [ ] 所有本周产出都已沉淀为书面文档
---
## 10. Risks
| Risk | Likelihood | Impact | Mitigation |
|------|------|------|------|
| 本周又回到“继续加功能” | High | High | 每天检查任务是否服务于核心闭环 |
| Provider 讨论过深,脱离产品目标 | Medium | High | 保持“求职版可解释性”优先,不做过度设计 |
| 前端细节打断主线梳理 | High | Medium | Week 1 不做大量视觉细化,只做策略与任务定义 |
| Storybook 恢复方案定义不清 | Medium | High | 必须把“按 ID 恢复”作为明确目标,不接受模糊状态 |
---
## 11. Dependencies
- 已有 PRD: `docs/product/job-search-relaunch-prd.md`
- 当前生成接口与数据结构
- Storybook Viewer 与 Store 实现
- Provider Router 当前实现
---
## 12. Suggested Daily Rituals
为了帮助你模仿真实产品经理工作方式,建议你在执行本周任务时保持以下节奏:
- **每日开始前**:先写今天要解决的 1 个核心问题。
- **每日结束时**:用 3 句话回答:
- 今天明确了什么?
- 还有什么不确定?
- 明天最重要的一件事是什么?
这会帮助你从“想到什么做什么”转向“围绕目标做判断”。
---
## 13. How to Reuse This Format
以后你自己写 Sprint Backlog 或执行计划时,可以直接套用这套结构:
1. Executive Summary
2. Sprint Goal
3. Scope
4. Priorities
5. User Stories
6. Task Backlog
7. Recommended Execution Sequence
8. Deliverables
9. Definition of Done
10. Risks / Dependencies
和 PRD 不同Backlog 文档更偏执行,不需要写太多业务背景,但一定要写清楚:
- 这周为什么做
- 这周不做什么
- 每天要推进什么
- 什么状态算完成
---
*This document is intended as a PM-style execution backlog for Week 1 of the DreamWeaver portfolio relaunch.*