11 KiB
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 的目标是完成三件事:
- 明确 DreamWeaver 求职版的核心产品主线。
- 明确统一生成工作流的目标状态与系统边界。
- 识别并解决阻碍演示与后续开发的关键基础问题。
这意味着本周的重点是“收敛、抽象、对齐”,而不是“冲刺做完所有体验”。如果 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_statusimage_statusaudio_statuslast_error
- 已补齐故事列表、故事详情、绘本阅读页的状态展示
- 已为故事音频增加首次生成后落盘缓存与后续复用
- 已新增数据库迁移:
0009_add_story_generation_statuses.py0010_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
- 定义统一状态模型
- 明确故事与绘本的共同链路和差异
- 明确失败降级与重试原则
Story C: 识别并拆解关键阻塞项
As a 求职项目维护者
I want to 找出影响演示和开发推进的关键阻塞
So that 后续投入能集中在最高价值项上
Acceptance Criteria
- 明确 admin-frontend 的处理方案
- 明确 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
本周必须交付的成果如下:
- 求职版产品定位文档
- 统一生成工作流功能级 PRD
- Storybook 恢复方案说明
- Admin 端处理决策
- Week 2 开发 Backlog
- 演示检查清单
8.1 Weekend Handoff Guidance
如果周末在另一台电脑继续推进,建议按以下顺序接手:
- 先拉取远端
main,确认已经包含 commita97a2fe - 先阅读:
docs/product/job-search-relaunch-prd.mddocs/product/unified-generation-workflow-prd.md- 当前这份 backlog
- 运行数据库迁移:
alembic upgrade head - 从“统一资产补全”和“统一 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 或执行计划时,可以直接套用这套结构:
- Executive Summary
- Sprint Goal
- Scope
- Priorities
- User Stories
- Task Backlog
- Recommended Execution Sequence
- Deliverables
- Definition of Done
- Risks / Dependencies
和 PRD 不同,Backlog 文档更偏执行,不需要写太多业务背景,但一定要写清楚:
- 这周为什么做
- 这周不做什么
- 每天要推进什么
- 什么状态算完成
This document is intended as a PM-style execution backlog for Week 1 of the DreamWeaver portfolio relaunch.