www_site/docs/EXECUTION_PLAN.md

126 lines
8.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Phase 0 后续执行计划
日期2026-09-08
基线:`V1_PLAN.md` 第 13.3 节及本次 `AUDIT.md`、`API_CONTRACT.md`、`DECISIONS.md`
原则:只把有证据的能力标为完成;产品参数和环境参数未确认时保持待确认。
## 1. Phase 0 工作包状态
| 编号 | 状态 | 证据 | 遗留 |
| --- | --- | --- | --- |
| P0-01 | 已完成 | `AUDIT.md`规则、Git、目录、启动说明和服务边界 | 上游 TTS 不在当前仓库,需授权联调 |
| P0-02 | 已完成 | `AUDIT.md`:框架、依赖、页面、接口、持久化和资产矩阵 | 所有业务模块均需新增 |
| P0-03 | 已完成(接口未核实) | `API_CONTRACT.md`:事实/目标分离和适配边界 | 缺上游协议、凭据、音色、参数和失败样例 |
| P0-04 | 已完成(资料有缺口) | `AUDIT.md`:品牌、网络拓扑和测试机条件 | 产品资料、域名、HTTPS、反向代理和服务未就绪 |
| P0-05 | 已完成(版本待定) | `DECISIONS.md`目录、数据归属、会话、任务、CMS 和代理决策 | 运行时/依赖版本需验证 |
| P0-06 | 已完成(产品值待定) | 本文件:配置清单、依赖和阶段入口 | 额度、并发、超时、保留期和备份策略需确认 |
## 2. Phase 1 入口条件
### 必须先满足
- 选择并锁定 Web/API/CMS/Worker 的兼容版本,提交不含秘密的示例配置和可复现安装方式。
- 提供至少一组真实产品资料:名称、型号、图片、规格、应用场景和可公开文案;没有资料时只能做结构骨架,不能声称内容上线。
- 确认公司联系方式、正式域名/测试入口和 HTTPS 方案。
- 明确测试机运行方式:安装 Node.js/Python 依赖,或提供经批准的容器运行时。当前 `flym` 的 sudo 需要交互密码,不能进行无授权安装。
- 明确测试数据、数据库、音频存储、备份位置和密钥注入方式,和生产隔离。
### 可并行推进
- 依据现有品牌参考建立设计令牌、色值、Logo 使用规则、字体回退和响应式断点。
- 建立公开官网页面骨架和本地结构化产品适配器,不伪造产品事实。
- 建立登录、注册、账户、TTS 和管理页面的加载/空/错误/禁用状态组件,但不把静态界面当成功能。
- 在上游信息到位后编写 TTS 适配器测试夹具,先验证请求映射和错误映射,再接入真实环境。
## 3. 后续阶段工作清单
### Phase 1视觉与官网骨架
- `P1-01` 已完成:建立品牌色、灰阶、字体、间距、按钮、输入、焦点和响应式变量,见 `app/globals.css``components/ui.tsx`
- `P1-02` 已完成:建立当前 Web 骨架、导航、页脚、移动导航、通用容器和登录/账户入口。当前落点为仓库根目录 App Router后续可迁入 `apps/web`,不改变组件边界。
- `P1-03` 已完成实现以蓝牙、音频和智能硬件为主体的首页AI Lab/TTS 仅作轻量入口。
- `P1-04` 已完成:实现产品列表、详情模板、关于和联系页面,使用 `lib/content.ts` 集中管理的开发占位数据。
- `P1-05` 已完成(布局):实现 TTS、认证、账户和管理页面状态结构所有真实提交和操作均未启用不显示假成功。
- `P1-06` 已完成(静态/HTTP完成 SEO metadata、404、键盘焦点、减少动效、响应式源码检查、构建和路由冒烟。真实浏览器截图待测试环境具备浏览器或授权自动化工具后补充。
交付证据:可运行 Web 骨架、页面检查记录和 `docs/phase-1-report.md`。动态认证、CMS 发布和真实 TTS 仍不在本阶段宣称完成。最小 LAN HTTP 部署方案已写入 Phase 1 报告。
Phase 1 当前可在本地继续开发,也可在测试机仅部署官网骨架。测试机部署前需准备 Node.js、用户目录、TCP/3000 局域网访问和必要安装权限数据库、TTS、CMS、正式域名和 HTTPS 不作为本阶段部署前置条件。
### Phase 2认证与权益基础
- `P2-01` 建立 User、Session、PlanPolicy、MembershipGrant、QuotaAccount、UsageRecord、VerificationChallenge 和审计迁移。
- `P2-02` 实现真实注册、登录、退出、当前用户、改密和可撤销会话。
- `P2-03` 实现权限、账号禁用、CSRF、站内跳转校验和认证限流。
- `P2-04` 实现有效 Plan、VIP 到期、额度周期和余额读取。
- `P2-05` 完成账户页和真实空历史状态。
- `P2-06` 实现验证服务抽象、开关、挑战过期和一次性消费;未接渠道返回未启用。
- `P2-07` 建立受控管理员初始化及服务层管理、会员、额度调整能力。
### Phase 3TTS 与额度闭环
进入条件Phase 2 认证/归属/权益可用,且获得真实上游联调权限和测试额度。
- `P3-01` 依据 `API_CONTRACT.md` 建立音色、任务、音频模型和上游适配器。
- `P3-02` 实现幂等、文本校验、限流、并发控制和额度冻结事务。
- `P3-03` 实现 Worker 租约、超时、结果核对和有限重试。
- `P3-04` 实现音频校验、私有存储、成功消费、失败释放和对账。
- `P3-05` 接通工作台提交、轮询、结果和错误恢复。
- `P3-06` 完成分页历史、详情、回放和下载,验证跨用户隔离。
- `P3-07` 验证重复提交、额度争用、上游失败、存储失败、跨周期和重启恢复。
### Phase 4CMS 与管理后台
- `P4-01` 配置 `apps/cms`、独立内容存储边界和受控 CMS 账号。
- `P4-02` 实现 Product、Media、SiteSettings、HomeContent 及媒体/富文本安全限制。
- `P4-03` 实现草稿、预览、发布、下架和缓存失效。
- `P4-04` 实现用户查询、筛选、禁用/恢复和最后管理员保护。
- `P4-05` 实现 VIP 授予/撤销、期限、额度调整和操作原因审计。
- `P4-06` 实现 TTS 任务、使用汇总、失败信息和审计查看。
- `P4-07` 完成产品发布及用户/VIP/额度/任务运营演练。
### Phase 5集成与上线准备
- 真实环境 HTTPS、反向代理、私网、持久卷和服务凭据。
- 外部验证 TTS、数据库、Redis、对象存储管理端和其他裸端口不可公开访问。
- 备份/恢复、Worker 重启、额度对账、音频恢复和回滚演练。
- 越权、CSRF、限流、敏感日志、草稿、音频授权、响应式、可访问性和 SEO 验收。
- 输出 `DEPLOYMENT.md`、`OPERATIONS.md`、`ACCEPTANCE.md` 和 Phase 5 报告。
## 4. 待定配置清单
未获得产品/上游/容量依据前,以下值不能写成默认无限或永久:
| 配置 | 当前值 | 依赖/负责人 |
| --- | --- | --- |
| Free 周期额度 | 待确认 | 产品负责人 |
| VIP 周期额度 | 待确认 | 产品负责人 |
| 额度周期 | 规划默认 UTC 自然月 | 产品确认;实现前固定 |
| 单次最大文本长度 | 待确认 | 上游限制 + 产品负责人 |
| 计量函数 | 规划为 Unicode 码点数,待与上游核对 | API/产品 |
| Free/VIP 并发 | 待确认 | 上游容量 + 产品负责人 |
| 注册/登录/TTS 限流 | 待确认 | 安全基线 + 压测 |
| 上游连接/读取/任务超时 | 待确认 | TTS 联调 |
| 最大重试次数 | 待确认 | 上游幂等和失败语义 |
| 音频保留期 | 待确认 | 产品/隐私/存储预算 |
| 原始文本保留期 | 待确认 | 产品/隐私 |
| 日志和审计保留期 | 待确认 | 运维/合规 |
| Session 有效期 | 待确认 | 安全与体验 |
| 密码 Argon2id 成本 | 待部署压测 | 测试机资源 |
| 数据库/音频备份保留 | 待确认 | 运维负责人 |
## 5. 阻断项清单
| 优先级 | 阻断项 | 解除条件 | 影响阶段 |
| --- | --- | --- | --- |
| P0 | TTS 接口事实缺失 | 提供已授权上游地址、脱敏协议和联调凭据 | Phase 2/3 |
| P0 | 测试机未安装应用栈 | 明确运行方式并授权安装/提供预装环境 | Phase 1 起部署验证 |
| P0 | HTTPS/域名未确定 | 提供测试域名或可信证书方案 | Phase 2 认证测试、Phase 5 |
| P1 | 产品资料缺失 | 提供真实图片、型号、规格、文案和联系方式 | Phase 1/4/5 |
| P1 | 备份位置和恢复责任未确定 | 指定隔离备份位置、保留期和负责人 | Phase 5 |
| P1 | sudo 需要交互密码 | 由管理员执行系统变更或配置受控运维权限 | 依赖安装/代理/持久服务 |
## 6. Phase 1 进入判定
当前 Phase 0 已完成文档交付,但**尚不满足测试服务器部署和真实 TTS 联调条件**。在不修改服务器服务的前提下,可以进入本地 Phase 1 页面骨架和设计系统;若要求 Phase 1 同步部署到 `192.168.199.22`必须先解除“应用栈未安装、HTTPS 入口未确定、部署权限未确定”三个阻断项。